MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
dvbevents.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2013 Ocean Blue Software Ltd
4  *
5  * This file is part of a DTVKit Software Component
6  * You are permitted to copy, modify or distribute this file subject to the terms
7  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
8  *
9  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
10  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
11  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
12  *
13  * If you or your organisation is not a member of DTVKit then you have access
14  * to this source code outside of the terms of the licence agreement
15  * and you are expected to delete this and any associated files immediately.
16  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
17  *******************************************************************************/
25 #ifndef _DVBEVENTS_H
26 #define _DVBEVENTS_H
27 
28 #include "mherrors.h"
29 
30 /* Events generated in receiver and passed to MHEG5 engine
31  * Decoder events not support by hardware should be simulated in DVB stack.
32  */
33 typedef enum
34 {
35  DVB_EVENT_TUNE_OFF,
36 
37  /* decoder has started playing an audio stream, 'data' set to 0 */
38  DVB_EVENT_AUDIO_STARTED,
39 
40  /* decoder has stopped playing an audio stream, 'data' set to 0 */
41  DVB_EVENT_AUDIO_STOPPED,
42 
43  /* decoder has started playing an audio clip, 'data' set to 0 */
44  DVB_EVENT_SAMPLE_STARTED,
45 
46  /* decoder has stopped playing an audio clip, 'data' set to 0 */
47  DVB_EVENT_SAMPLE_STOPPED,
48 
49  /* decoder has started playing an video stream, 'data' set to 0 */
50  DVB_EVENT_VIDEO_STARTED,
51 
52  /* decoder has stopped playing an video stream, 'data' set to 0 */
53  DVB_EVENT_VIDEO_STOPPED,
54 
55  /* Event raised when */
56  DVB_EVENT_TUNE_TO_SERVICE,
57 
58  /* demux path for DSM-CC used by presentation engine (live path) has changed *
59  * 'data' set to path value */
60  DVB_EVENT_DEMUX_PATH_CHANGE,
61 
62  /* When user video preference causes change to Decoder Format Conversation. *
63  * It is not generated when the broadcast video changes aspect ratio, or when *
64  * a change affects only display format conversion. *
65  * 'data' can be set to Decoder Format Conversion */
66  DVB_EVENT_VIDEO_PREF_CHANGED,
67 
68  /* Network status has changed. 'data' set as defined by E_NETWORK_STATUS */
69  DVB_EVENT_NETWORK_STATUS_CHANGED,
70 
71  /* Tell engine that DVP is ready to received streaming data (MHEG5 ICS) */
72  DVB_EVENT_STREAMING_READY,
73 
74  /* Response to engine request for parental control guidance */
75  DVB_EVENT_GUIDANCE_RESPONSE,
76 
77  /* Audio description presentation viewer preference changed *
78  * 'data' value 0 - normal audio, 'data' value 1 - Audio description */
79  DVB_EVENT_AUDIODESC_PREF_CHANGED,
80 
81  /* Subtitle presentation viewer preferences changed *
82  * 'data' value 1 for receiver to display DVB subtitles, value 0 for no subt */
83  DVB_EVENT_SUBTITLE_PREF_CHANGED,
84 
85  /* Notifies the MHEG5 engine when the audio language preferences changes */
86  DVB_EVENT_AUDIO_LANG_PREF_CHANGED,
87 
88  /* Notifies the MHEG5 engine when the subtitle language preferences change */
89  DVB_EVENT_SUBTITLE_LANG_PREF_CHANGED,
90 
91  /* When the list of events to be recorded by the PVR changes.
92  * Possible reasons for changes are:
93  * 1. event recorded,
94  * 2. event cancelled due to conflict. */
95  DVB_EVENT_PVR_RECORD_LIST_CHANGED,
96 
97  /* When the list of events to be recorded by the PVR changes.
98  * Possible reasons for changes are:
99  * 1. event recorded,
100  * 2. event cancelled due to conflict. */
101  DVB_EVENT_PVR_BOOK_RESULT,
102 
103  /* Notifies the MHEG5 engine of the status of the Connected-TV launched
104  * application */
105  DVB_EVENT_APPLICATION_LAUNCH_STATUS,
106 
107  /* Notifies the MHEG5 engine of the CI CAM has been removed from CI slot
108  * Event data is the slot number */
109  DVB_EVENT_CICAM_REMOVE,
110 
111  /* Non-event - should not be generated */
112  DVB_EVENT_NONE,
113 } E_DvbEvent;
114 
115 typedef E_MhegErr (*F_NotifyDvbEvent)( E_DvbEvent event, U32BIT data );
116 
123 E_MhegErr DVB_MhegEventsStart(F_NotifyDvbEvent handler);
124 
130 E_MhegErr DVB_MhegEventsStop(void);
131 
132 #endif /* _DVBEVENTS_H */
MHEG5 engine interface error codes.
E_MhegErr DVB_MhegEventsStart(F_NotifyDvbEvent handler)
Start listening for DVB events.
E_MhegErr DVB_MhegEventsStop(void)
Stop listening for DVB events.