OpenSLES_Android.h revision 884ed8e6ccaf395f7b57e1cf16c2779c651eb800
105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*
205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * Copyright (C) 2010 The Android Open Source Project
305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi *
405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * Licensed under the Apache License, Version 2.0 (the "License");
505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * you may not use this file except in compliance with the License.
605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * You may obtain a copy of the License at
705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi *
805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi *      http://www.apache.org/licenses/LICENSE-2.0
905ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi *
1005ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * Unless required by applicable law or agreed to in writing, software
1105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * distributed under the License is distributed on an "AS IS" BASIS,
1205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * See the License for the specific language governing permissions and
1405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi * limitations under the License.
1505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi */
1605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
1705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#ifndef OPENSL_ES_ANDROID_H_
1805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define OPENSL_ES_ANDROID_H_
1905ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
2005ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#ifdef __cplusplus
2105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Triviextern "C" {
2205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
2305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*---------------------------------------------------------------------------*/
24989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/* Android common types                                                      */
25989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/*---------------------------------------------------------------------------*/
26989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
27989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivitypedef sl_int64_t             SLAint64;           /* 64 bit signed integer */
28989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
29989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
30989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/*---------------------------------------------------------------------------*/
3105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/* Android Stream Type interface                                             */
3205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*---------------------------------------------------------------------------*/
3305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
3405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/** Stream types */
3505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi// FIXME verify those are all the ones we need
3605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi// FIXME verify we want to use the same values as in android::AudioSystem
3705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_VOICE_CALL */
3805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_VOICE        ((SLuint32) 0x00000000)
3905ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_SYSTEM */
4005ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_SYSTEM       ((SLuint32) 0x00000001)
4105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_RING */
4205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_RING         ((SLuint32) 0x00000002)
4305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_MUSIC */
4405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_MEDIA        ((SLuint32) 0x00000003)
4505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_ALARM */
4605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_ALARM        ((SLuint32) 0x00000004)
4705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/*      same as android.media.AudioManager.STREAM_NOTIFICATION */
4805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#define SL_ANDROID_STREAM_NOTIFICATION ((SLuint32) 0x00000005)
4905ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
5005ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
5105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Triviextern SLAPIENTRY const SLInterfaceID SL_IID_ANDROIDSTREAMTYPE;
5205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
5305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi/** Android Stream Type interface methods */
5405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
5505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivistruct SLAndroidStreamTypeItf_;
5605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivitypedef const struct SLAndroidStreamTypeItf_ * const * SLAndroidStreamTypeItf;
5705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
5805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivistruct SLAndroidStreamTypeItf_ {
5905ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi    SLresult (*SetStreamType) (
6005ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi        SLAndroidStreamTypeItf self,
6105ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi        SLuint32 type
6205ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi    );
6305ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi    SLresult (*GetStreamType) (
6405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi        SLAndroidStreamTypeItf self,
6505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi        SLuint32 *pType
6605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi    );
6705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi};
6805ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
6967bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
7067bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi/*---------------------------------------------------------------------------*/
7167bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi/* Android Effect interface                                                  */
7267bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi/*---------------------------------------------------------------------------*/
7367bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
745b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Triviextern SLAPIENTRY const SLInterfaceID SL_IID_ANDROIDEFFECT;
7567bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
7667bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi/** Android Effect interface methods */
7767bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
785b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivistruct SLAndroidEffectItf_;
795b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivitypedef const struct SLAndroidEffectItf_ * const * SLAndroidEffectItf;
8067bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
815b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivistruct SLAndroidEffectItf_ {
8267bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
835b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*CreateEffect) (SLAndroidEffectItf self,
845b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID effectId);
8567bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
865b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*ReleaseEffect) (SLAndroidEffectItf self,
875b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID effectId);
8867bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
895b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*SetEnabled) (SLAndroidEffectItf self,
905b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID effectId,
915b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLboolean enabled);
9267bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
935b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*IsEnabled) (SLAndroidEffectItf self,
945b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID effectId,
955b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLboolean *pEnabled);
9667bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
975b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*SendCommand) (SLAndroidEffectItf self,
985b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID effectId,
995b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint32 command,
1005b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint32 commandSize,
1015b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            void *pCommandData,
1025b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint32 *replySize,
1035b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            void *pReplyData);
1045b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi};
1055b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1065b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1075b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi/*---------------------------------------------------------------------------*/
108884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi/* Android Effect Send interface                                             */
109884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi/*---------------------------------------------------------------------------*/
110884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
111884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Triviextern SLAPIENTRY const SLInterfaceID SL_IID_ANDROIDEFFECTSEND;
112884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
113884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi/** Android Effect Send interface methods */
114884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
115884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivistruct SLAndroidEffectSendItf_;
116884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivitypedef const struct SLAndroidEffectSendItf_ * const * SLAndroidEffectSendItf;
117884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
118884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivistruct SLAndroidEffectSendItf_ {
119884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*EnableEffectSend) (
120884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
121884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLInterfaceID effectId,
122884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLboolean enable,
123884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLmillibel initialLevel
124884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
125884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*IsEnabled) (
126884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
127884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLInterfaceID effectId,
128884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLboolean *pEnable
129884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
130884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*SetDirectLevel) (
131884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
132884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLmillibel directLevel
133884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
134884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*GetDirectLevel) (
135884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
136884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLmillibel *pDirectLevel
137884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
138884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*SetSendLevel) (
139884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
140884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLInterfaceID effectId,
141884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLmillibel sendLevel
142884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
143884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    SLresult (*GetSendLevel)(
144884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLEffectSendItf self,
145884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLInterfaceID effectId,
146884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi        SLmillibel *pSendLevel
147884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi    );
148884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi};
149884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
150884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi
151884ed8e6ccaf395f7b57e1cf16c2779c651eb800Jean-Michel Trivi/*---------------------------------------------------------------------------*/
1525b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi/* Android Effect Capabilities interface                                     */
1535b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi/*---------------------------------------------------------------------------*/
1545b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1555b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Triviextern SLAPIENTRY const SLInterfaceID SL_IID_ANDROIDEFFECTCAPABILITIES;
1565b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1575b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi/** Android Effect Capabilities interface methods */
1585b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1595b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivistruct SLAndroidEffectCapabilitiesItf_;
1605b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivitypedef const struct SLAndroidEffectCapabilitiesItf_ * const * SLAndroidEffectCapabilitiesItf;
1615b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1625b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivistruct SLAndroidEffectCapabilitiesItf_ {
1635b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi
1645b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*QueryNumEffects) (SLAndroidEffectCapabilitiesItf self,
1655b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint32 *pNumSupportedEffects);
16667bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
16767bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
1685b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi    SLresult (*QueryEffect) (SLAndroidEffectCapabilitiesItf self,
1695b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint32 index,
1705b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID *pEffectType,
1715b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLInterfaceID *pEffectImplementation,
1725b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            const SLchar *pName,
1735b09aa864215690580b18eb802927e8cc7eb4861Jean-Michel Trivi            SLuint16 *pNameSize);
17467bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi};
17567bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
17667bdf8a2fbd1024ab50c4513e1504325475368e0Jean-Michel Trivi
177989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/*---------------------------------------------------------------------------*/
178989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/* Android File Descriptor Data Locator                                      */
179989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/*---------------------------------------------------------------------------*/
180989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/** Addendum to Data locator macros  */
181989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi#define SL_DATALOCATOR_ANDROIDFD        ((SLuint32) 0x00000009)
182989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
1836c7bd2eda0843708a8f36773b13716ba479dd6fbJean-Michel Trivi#define SL_DATALOCATOR_ANDROIDFD_USE_FILE_SIZE ((SLAint64) 0xFFFFFFFFFFFFFFFFll)
184989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
185989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi/** File Descriptor-based data locator definition where locatorType must be SL_DATALOCATOR_ANDROIDFD */
186989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivitypedef struct SLDataLocator_AndroidFD_ {
187989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi    SLuint32        locatorType;
188989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi    SLint32         fd;
189989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi    SLAint64        offset;
190989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi    SLAint64        length;
191989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi} SLDataLocator_AndroidFD;
192989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
193989ab369777ef514ac3ba6cdb893de9ae0c976bcJean-Michel Trivi
19405ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi}
19505ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#endif /* __cplusplus */
19605ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi
19705ccff2aaa3e1507cdc7ab3b244c973c6708e009Jean-Michel Trivi#endif /* OPENSL_ES_ANDROID_H_ */
198