38 XA_CAMERAITFEVENTS = 0x20, |
38 XA_CAMERAITFEVENTS = 0x20, |
39 XA_PREFETCHITFEVENTS = 0x40, |
39 XA_PREFETCHITFEVENTS = 0x40, |
40 XA_RADIOITFEVENTS = 0x80, |
40 XA_RADIOITFEVENTS = 0x80, |
41 XA_RDSITFEVENTS = 0x100, |
41 XA_RDSITFEVENTS = 0x100, |
42 XA_METADATAEVENTS = 0x200, |
42 XA_METADATAEVENTS = 0x200, |
43 XA_ADDMORETYPES = 0x400 |
43 XA_VOLUMEITFEVENTS = 0x400, |
|
44 XA_NOKIALINEARVOLITFEVENTS = 0x800, |
|
45 XA_NOKIAEXTVOLITFEVENTS = 0x1000, |
|
46 XA_ADDMORETYPES = 0x2000 |
44 }XAAdaptEventTypes; |
47 }XAAdaptEventTypes; |
45 |
48 |
46 #define XA_ADAPT_PU_INTERVAL 50 /* position update interval */ |
|
47 #define XA_ADAPT_ASYNC_TIMEOUT 3000 /* timeout to wait async events */ |
|
48 #define XA_ADAPT_ASYNC_TIMEOUT_SHORT 1000 /* timeout to wait async events */ |
|
49 #define XA_ADAPT_ASYNC_TIMEOUT_SHORT_NSEC 1000000 /* timeout to wait async events */ |
|
50 |
49 |
51 #define XA_ADAPT_POSITION_UPDATE_EVT 0xf0 /* position update event */ |
50 typedef enum |
52 #define XA_ADAPT_SNAPSHOT_TAKEN 0xf1 /* snapshot taken event */ |
51 { |
53 #define XA_ADAPT_SNAPSHOT_INITIATED 0xf2 /* snapshot intitiated event */ |
52 XACAP_DECODER = 0x1, |
54 #define XA_ADAPT_MDE_TAGS_AVAILABLE 0xf3 /* metadata taglist changed */ |
53 XACAP_ENCODER = 0x2, |
55 #define XA_ADAPT_OMIX_DEVICESET_CHANGED 0xf4 /* Output mix device changed event */ |
54 XACAP_DEVSNK = 0x4, |
56 #define XA_ADAPT_RADIO_FREQUENCY_CHANGED 0xf6 /* Radio frequency changed event */ |
55 XACAP_DEVSRC = 0x8, |
57 #define XA_ADAPT_RADIO_FREQUENCY_RANGE_CHANGED 0xf7 /* Radio frequency range changed event */ |
|
58 #define XA_ADAPT_RADIO_SEEK_COMPLETE 0xf8 /* Radio seek complete changed event */ |
|
59 #define XA_ADAPT_RDS_GET_ODA_GROUP_DONE 0xf9 /* RDS get oda group done event */ |
|
60 #define XA_ADAPT_BUFFERING 0xfa |
|
61 #define XA_ADAPT_MDE_TAGS_WRITTEN 0xfb |
|
62 /* TYPEDEFS */ |
|
63 |
56 |
64 #define RADIO_DEFAULT_FREQ_RANGE XA_FREQRANGE_FMEUROAMERICA |
57 XACAP_AUDIO = 0x10, |
65 #define RADIO_DEFAULT_FREQ 88000000 |
58 XACAP_VIDEO = 0x20, |
|
59 XACAP_IMAGE = 0x40 |
|
60 } XACapsType; |
66 |
61 |
67 |
62 |
68 typedef enum |
63 typedef enum |
69 { |
64 { |
70 XA_UNDEFINED = 0, |
65 XA_UNDEFINED = 0, |
81 XA_MEDIATYPE_IMAGE, |
76 XA_MEDIATYPE_IMAGE, |
82 XA_MEDIATYPE_UNKNOWN |
77 XA_MEDIATYPE_UNKNOWN |
83 } XAMediaType; |
78 } XAMediaType; |
84 |
79 |
85 #define CPCONFIGKEY "TestAppPipeConfig" |
80 #define CPCONFIGKEY "TestAppPipeConfig" |
|
81 |
|
82 #define XA_RECMODE_STREAM 1 |
|
83 #define XA_RECMODE_STILL 2 |
|
84 |
|
85 #define XA_IMPL_SUPPORTED_AUDIO_OUT_NUM 3 |
|
86 #define XA_IMPL_OMIX_MAX_CONNECTED_MEDIAPLAYERS 10 |
|
87 |
|
88 /* Max volume level is implementation-dependent but must be at least 0mB |
|
89 * now used max volume 10 mB |
|
90 */ |
|
91 #define MAX_PERCENTAGE_VOLUME 100 |
|
92 #define MIN_VOLUME_LEVEL 0 |
|
93 #define MAX_SUPPORT_VOLUME_LEVEL 9000 |
|
94 |
|
95 /* Stereo position range is -1000 to 1000 permille. -1000 permille is fully left |
|
96 * and 1000 permille is fully right. 0 permille is center. |
|
97 */ |
|
98 #define STEREO_POSITION_RIGHT 1000 |
|
99 #define STEREO_POSITION_LEFT -1000 |
|
100 #define STEREO_POSITION_CENTER 0 |
|
101 |
86 /** |
102 /** |
87 * GLOBAL METHODS |
103 * GLOBAL METHODS |
88 */ |
104 */ |
89 |
105 |
90 |
|
91 /* |
|
92 * Engine |
|
93 */ |
|
94 XAresult XAEngineImpl_Create(XAObjectItf *pEngine, |
|
95 XAuint32 numOptions, |
|
96 const XAEngineOption *pEngineOptions, |
|
97 XAuint32 numInterfaces, |
|
98 const XAInterfaceID *pInterfaceIds, |
|
99 const XAboolean *pInterfaceRequired); |
|
100 |
|
101 XAresult XAEngineImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
102 |
|
103 XAresult XAEngineImpl_QuerySupportedInterfaces(XAuint32 index, |
|
104 XAInterfaceID *pInterfaceId); |
|
105 |
|
106 /* |
|
107 * Media Player |
|
108 */ |
|
109 XAresult XAMediaPlayerImpl_CreateMediaPlayer(XAObjectItf *pPlayer, |
|
110 XADataSource *pDataSrc, |
|
111 XADataSource *pBankSrc, |
|
112 XADataSink *pAudioSnk, |
|
113 XADataSink *pImageVideoSnk, |
|
114 XADataSink *pVibra, |
|
115 XADataSink *pLEDArray, |
|
116 XAuint32 numInterfaces, |
|
117 const XAInterfaceID *pInterfaceIds, |
|
118 const XAboolean *pInterfaceRequired); |
|
119 |
|
120 XAresult XAMediaPlayerImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
121 |
|
122 XAresult XAMediaPlayerImpl_QuerySupportedInterfaces(XAuint32 index, |
|
123 XAInterfaceID *pInterfaceId); |
|
124 |
|
125 /* |
|
126 * Metadata Extractor |
|
127 */ |
|
128 XAresult XAMetadataExtractorImpl_Create(XAObjectItf *pMetadataExtractor, |
|
129 XADataSource *pDataSource, |
|
130 XAuint32 numInterfaces, |
|
131 const XAInterfaceID *pInterfaceIds, |
|
132 const XAboolean *pInterfaceRequired); |
|
133 |
|
134 XAresult XAMetadataExtractorImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
135 |
|
136 XAresult XAMetadataExtractorImpl_QuerySupportedInterfaces(XAuint32 index, |
|
137 XAInterfaceID *pInterfaceId); |
|
138 |
|
139 /* |
|
140 * Output Mix |
|
141 */ |
|
142 XAresult XAOMixImpl_CreateOutputMix(XAObjectItf *pMix, |
|
143 XAuint32 numInterfaces, |
|
144 const XAInterfaceID *pInterfaceIds, |
|
145 const XAboolean *pInterfaceRequired); |
|
146 |
|
147 XAresult XAOMixImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
148 |
|
149 XAresult XAOMixImpl_QuerySupportedInterfaces(XAuint32 index, |
|
150 XAInterfaceID *pInterfaceId); |
|
151 |
|
152 /* |
|
153 * Media Recorder |
|
154 */ |
|
155 XAresult XAMediaRecorderImpl_CreateMediaRecorder(XAObjectItf* pRecorder, |
|
156 XADataSource* pAudioSrc, |
|
157 XADataSource* pImageVideoSrc, |
|
158 XADataSink* pDataSnk, |
|
159 XAuint32 numInterfaces, |
|
160 const XAInterfaceID *pInterfaceIds, |
|
161 const XAboolean *pInterfaceRequired); |
|
162 |
|
163 XAresult XAMediaRecorderImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
164 |
|
165 XAresult XAMediaRecorderImpl_QuerySupportedInterfaces(XAuint32 index, |
|
166 XAInterfaceID *pInterfaceId); |
|
167 |
|
168 /* |
|
169 * Camera Device |
|
170 */ |
|
171 XAresult XACameraDeviceImpl_CreateCameraDevice(XAObjectItf* pDevice, |
|
172 XAuint32 deviceID, |
|
173 XAuint32 numInterfaces, |
|
174 const XAInterfaceID * pInterfaceIds, |
|
175 const XAboolean * pInterfaceRequired); |
|
176 |
|
177 XAresult XACameraDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
178 |
|
179 XAresult XACameraDeviceImpl_QuerySupportedInterfaces(XAuint32 index, |
|
180 XAInterfaceID *pInterfaceId); |
|
181 |
|
182 /* |
|
183 * Radio Device |
|
184 */ |
|
185 XAresult XARadioDeviceImpl_CreateRadioDevice(XAObjectItf* pDevice, |
|
186 XAuint32 numInterfaces, |
|
187 const XAInterfaceID * pInterfaceIds, |
|
188 const XAboolean * pInterfaceRequired); |
|
189 |
|
190 XAresult XARadioDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
191 |
|
192 XAresult XARadioDeviceImpl_QuerySupportedInterfaces(XAuint32 index, |
|
193 XAInterfaceID *pInterfaceId); |
|
194 |
|
195 /* |
|
196 * Vibra Device |
|
197 */ |
|
198 XAresult XAVibraDeviceImpl_CreateVibraDevice(XAObjectItf* pDevice, |
|
199 XAuint32 deviceID, |
|
200 XAuint32 numInterfaces, |
|
201 const XAInterfaceID * pInterfaceIds, |
|
202 const XAboolean * pInterfaceRequired); |
|
203 |
|
204 XAresult XAVibraDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
205 |
|
206 XAresult XAVibraDeviceImpl_QuerySupportedInterfaces(XAuint32 index, |
|
207 XAInterfaceID *pInterfaceId); |
|
208 |
|
209 /* |
|
210 * LED Array |
|
211 */ |
|
212 XAresult XALEDArrayDeviceImpl_CreateLEDArrayDevice(XAObjectItf* pDevice, |
|
213 XAuint32 deviceID, |
|
214 XAuint32 numInterfaces, |
|
215 const XAInterfaceID * pInterfaceIds, |
|
216 const XAboolean * pInterfaceRequired); |
|
217 |
|
218 XAresult XALEDArrayDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces); |
|
219 |
|
220 XAresult XALEDArrayDeviceImpl_QuerySupportedInterfaces(XAuint32 index, |
|
221 XAInterfaceID *pInterfaceId); |
|
222 |
106 |
223 |
107 |
224 /* |
108 /* |
225 * Check if interface IDs are equal |
109 * Check if interface IDs are equal |
226 */ |
110 */ |