046ff4d5970911dc55b265d8441b49d05b10d0b6 |
08-Mar-2016 |
Glenn Kasten <gkasten@google.com> |
Line length <= 100 Test: builds OK Change-Id: I2e2d83f0548ce6c38008b53f741812f64e167d3f
LES/OpenSLES_Android.h
|
cd3da3cf0b505da414569700d9c0c292a72a582c |
04-Apr-2017 |
Glenn Kasten <gkasten@google.com> |
Make OpenSLES_Android.h also include OpenSLES.h For convenience of app developers, OpenSLES_Android.h now also includes OpenSLES.h, and OpenMAXAL_Android.h now also includes OpenMAXAL.h, and Test: platform and Android-specific test apps build OK Bug: 36362923 Change-Id: I5f96d40292c2e545472e636c8dac147e89475e9b
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
20c114c89e4c2562975699825d70630cbf6924b1 |
21-Oct-2016 |
Dan Albert <danalbert@google.com> |
Merge "Add licenses for ndk_headers." am: 2cc0baec99 Change-Id: Ie9af973934d8f119ce1f44691249c4b33797859d
|
16fa920d67569b67e9031b9439b2466f0d320cf3 |
20-Oct-2016 |
Dan Albert <danalbert@google.com> |
Add licenses for ndk_headers. Test: make ndk Bug: None Change-Id: I37b56be58a320c5732ab334b97702f13fe600a3a
MXAL/NOTICE
LES/NOTICE
|
677c796097b542e9ee6cf43a59e754f43c2370dc |
29-Jun-2016 |
Eric Laurent <elaurent@google.com> |
Fix pre processor interfaces implementation - Fix SL_IIDs for AEC, NS and AGS interfaces to match actual effect type GUIDs. - Remove IsAvailable() method which did not work because the interface could not be exposed anyway if the effect was not present on the device. Also the implementation was linking directly against the effect factory which is not allowed in non priviledged processes. - Make pre processor interfaces EXPLICIT instead of OPTIONAL. - Exit early in AudioRecorder realize if the native AudioRecord creation fails. - Add native AudioTrack cleanup in case of error in AudioPlayer realize(). Bug: 4999001 Change-Id: I6235248234491eaa9723cde9de85b965c031571d
LES/OpenSLES_Android.h
|
8c9071f491393fadf767b6164a17b0795eba3fda |
02-May-2016 |
Eric Laurent <elaurent@google.com> |
Add configuration option for performance mode Performance mode tells the framework how to configure the audio path for a player or recorder according to application performance and functional requirements. It affects the output or input latency based on acceptable tradeoffs on battery drain and use of pre or post processing effects. Bug: 20825626 Bug: 17981873 Change-Id: I0e79cf2da03b4bfa2080fe6d4ea9d8753ffe3497
LES/OpenSLES_AndroidConfiguration.h
|
053b3c2696e5e1b28dd5e02c54b0e3aedc21168d |
04-Mar-2016 |
Paul McLean <pmclean@google.com> |
"Refinements" to Native Audio Routing API Change method names to more generic "AcquireJavaProxy" to support (potentially) multiple proxy types. Add "Release" method. Remove JNIEnv* parameter from Acquire and Release methods. Add Type ID parameter to support (potential) multiple proxy types. Enforce "singleton" allocation for proxies. Disallow proxy acquisition for innapropriate players/recorders. Refactor to make the code clearer. Bug: 23899814 Change-Id: Iff354ba46547781e0998a9032de96f445d1474b8
LES/OpenSLES_Android.h
|
e2a4e0e1e87efb61bb62d08e7744a6d57ec4a38e |
02-Dec-2015 |
Paul McLean <pmclean@google.com> |
Native Routing Implementation Bug: 23899814 Change-Id: I3cd369339e429e8a3c8466730170fb75f939fb88
LES/OpenSLES_Android.h
|
9b006ad650c15ef2a8e0106e7a372fc2643c5210 |
09-Feb-2016 |
ilewis <inl@google.com> |
Document default behavior when channel mask is 0 The behavior has not changed substantially; the implementation has always assigned a default mask based on the number of channels requested. However, this default behavior does not carry over into the new indexed channel masks, and that seems worth noting. Change-Id: I84b45560dd6988d41e9e6b2cbc7073e03a3a66d3 (cherry picked from commit 91823ae89a82dcd57f8a1cc9711215418bc30503)
LES/OpenSLES_Android.h
|
4e8fe8a60c3aa8085918f15f281e0979682aefdc |
13-Nov-2015 |
Paul McLean <pmclean@google.com> |
Fixed validation and translation for indexed channel masks The channel mask validation code had a number of built-in assumptions around positional masks. Most of these assumptions are invalid for indexed masks. The translation between OpenSLES channel masks and Android channel masks also needed reworking; this CL attempts to do it the right way by calling helper functions rather than setting bits directly. Bug: 23899736 Change-Id: I65b024b71e3267d2e9ca316ac74771e16462e134
LES/OpenSLES_Android.h
|
e9b57cefb954e7c1bffc5d4b59f89aca5e050797 |
02-Dec-2015 |
rago <rago@google.com> |
Adding UNPROCESSED to the available audio_sources bug: 25564291 Change-Id: Ie231263a517b7a0305c9e2e86d0608ae007afe3c
LES/OpenSLES_AndroidConfiguration.h
|
e57c13397185f9ad0f162855e9a8ebeb0c94bfc4 |
24-May-2014 |
Andy Hung <hunga@google.com> |
Add float playback capability to OpenSL ES Add SLAndroidDataFormat_PCM_EX to match OpenSLES 1.1 header file, together with related SL_ANDROID_PCM_REPRESENTATION_* constants. Use slesTest_playbq as the test application. Change-Id: I04bcd170f5c517051a799bacf8f52da5f1353ad6
LES/OpenSLES_Android.h
|
43bde29538bf33d444d41a0b9cc0d60793fb20fa |
17-May-2014 |
Paul McLean <pmclean@google.com> |
Merge "Initial Implementation of new NDK effect interfaces"
|
f8b3141926967ba37d315cc8d3956d7214958e6b |
15-May-2014 |
Paul McLean <pmclean@google.com> |
Initial Implementation of new NDK effect interfaces Support for Acousic Echo Cancellation, Automatic Gain Control and NoiseSuppression effects on AudioRecorder Change-Id: I85dcb988f59dacaaed540737018b8f629efeaad3
LES/OpenSLES_Android.h
|
45daca3d034eb05666dfdfb0eca625d1849d05d7 |
17-May-2014 |
Paul McLean <pmclean@google.com> |
Removed bad comment block to fix build. Change-Id: I6be21a9ca2a037b9115c296baae4ac4718c34ddb
LES/OpenSLES_Android.h
|
bb74f23cd3dc877c7eaf4db2132f724d11aeeb8f |
15-May-2014 |
Paul McLean <pmclean@google.com> |
Initial Implementation of new NDK audio formats Support for 24-bit audio formats - Support for Quad, 5.1 and 7.1 multi-channel output Change-Id: I4e4f5d2915a43970ae01f552ba506591902aa070
LES/OpenSLES_Android.h
|
af9b87de97356722370d11d2c5797d75cb43969e |
29-Nov-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix bug 5553055 support video only format change in MP2TS Allow command data when enqueueing a format change command. Support format change where the application signals that the change is for the video stream only. Consider any other change or format change command with invalid data as a full format change. Change-Id: I6c684eab36a51dded7e3d7e72b8effe13dac6cc8
MXAL/OpenMAXAL_Android.h
|
c3b82a293ed06001ba6d50f111608160c6065ef2 |
18-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Final revisions for NDK API level 14 Rename ANDROID_MIME_MP2TS to XA_ANDROID_MIME_MP2TS and ANDROID_MIME_AACADTS to SL_ANDROID_MIME_AACADTS and make public. ANDROID_MIME_AACADTS_ANDROID_FRAMEWORK remains private. Change-Id: Ie2cda273b6adb2db453aad188b28e64147f9e6b0
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
0f92f48017588949daf7d24a339423e149bb2555 |
01-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5244675 PCM sample rate metadata units The current metadata key macro name ANDROID_KEY_INDEX_PCMFORMAT_SAMPLESPERSEC is confusing. This change renames it to ANDROID_KEY_INDEX_PCMFORMAT_SAMPLERATE, and documents that it is in Hz rather than milliHz. The key string is renamed from AndroidPcmFormatSamplesPerSec to AndroidPcmFormatSampleRate. Details: OpenSL ES 1.0.1 PCM struct SLDataFormat_PCM field samplesPerSec [sic] is in milliHz. OpenSL ES 1.1 preserves that struct, but adds struct SLDataFormat_PCM with field sampleRate also in milliHz. If the ANDROID_KEY_INDEX_PCMFORMAT_* metadata keys were intended to exactly model the OpenSL ES PCM data format struct, the metadata sample rate would also be in milliHz units. However, the rest of Android operates in Hz so we use Hz here also. Backwards compatibility for the name should not be an issue, as the initial beta developer has not yet started using this metadata. Related change: delete a duplicate header file. Change-Id: Ib8f620dfe7a328f621ddbb19f55e5691eb22d7b5
LES/OpenSLES_AndroidMetadata.h
|
60ca9f9ef02f6e486c3338cb811f603dd7825c05 |
29-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Rename Android buffer queue GUID for future sink This change will make it easier to have Android buffer queue as a sink in the future. For backwards source code compatibility with beta developers, retain the old name temporarily. As soon as they have switched to the new name, we will remove the old name. Details: - rename XA_IID_ANDROIDBUFFERQUEUE to XA_IID_ANDROIDBUFFERQUEUESOURCE - rename SL_IID_ANDROIDBUFFERQUEUE to SL_IID_ANDROIDBUFFERQUEUESOURCE - rename MPH_ANDROIDBUFFERQUEUE to MPH_ANDROIDBUFFERQUEUESOURCE - did not rename the data locators and interface struct, as they can be shared across both source and sink - did not rename the member field mAndroidBufferQueue in CAudioPlayer / CMediaPlayer as that would be a huge change; can do that later if necessary - the SINK definition will be added later when needed Change-Id: I36dc01050efb99d4d7802b2ca2b870f4d978ee21
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
68c8a1b6deea46eeca57848768a92e96d583aadd |
25-Aug-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Metadata keys for PCM decoding Declare in a public header the metadata keys an application which decodes audio data would use to figure out the output PCM format. Make the SL ES Android header also include the configuration and metadata headers. Update test apps to reflect this. Change-Id: I298db4fdb800df2d48047691441aa7489aad4822
LES/OpenSLES_Android.h
LES/OpenSLES_AndroidMetadata.h
|
23fc68ef3d6b7c5e6ceaf530fc9522c109f3a43e |
18-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Use XA instead of SL in type cast Change-Id: Icc8d678484f454860b32d8823d4a274d3d14d991
MXAL/OpenMAXAL_Android.h
|
02e6a6b750743e09fa21132046f6a092182def66 |
08-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5135150 Fix ifdef C++ Change-Id: Ic28452ce6b0c717722098699092f1797424a6d9b
LES/OpenSLES_AndroidConfiguration.h
|
6f0f5640d190b0187c356eb53bd96d9f9e49da60 |
25-Jul-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix bug 5022500 MP2TS format change support in OpenMAX AL Define new command that can be queued in AndroidBufferQueue to signal an MP2TS format change. This command maps directly to IStreamListener::kKeyFormatChange. Change-Id: I67908fd9e1a7d994862ea3e41c4c0fb6e36bc804
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
6e7e174807fc639c49125ced8962aa369370fbf0 |
13-Jul-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Implement XAVideoDecoderCapabilitiesItf Add support for the OpenMAX AL XAVideoDecoderCapabilitiesItf engine interface. Implement the Android support of this interface in VideoCodec_to_android.*. This functionality relies on OMXCodec::QueryCodecs() feature, and does only expose hardware codec capabilities (see full note in VideoCodec_to_android.h). Add sample code to list the platform's video decoders and their profile / level combinations. Change-Id: Iff6a42542c1db67ca1dcf539449ca96aa5944f6d
MXAL/OpenMAXAL_Android.h
|
e31a69fcbe27894a597176d05a08e04c06092021 |
13-Apr-2011 |
Glenn Kasten <gkasten@google.com> |
Fix various bugs found with unit tests ISeek::SetLoop was returning undefined status. Khronos Bug 7614 - sizeof(long) != 32 bits on x86_64. Fix bug in IID hashing due to the above. Fix bug in GenericMediaPlayer::onLoop; was using mPlayer without checking for NULL. Fix wrong API level in tests/sandbox/object.c. Decrease log level from I to V in MediaPlayerNotificationClient::notify and GenericPlayer::~GenericPlayer. Fix memory leak in tests/sandbox/engine.c. Comment out overly verbose log in tests/sandbox/streamSource/slesTestPlayStream.cpp. Change-Id: I322fa9e19ee95ea1e18870a20f6a3c03b8f21208
MXAL/OpenMAXAL_Platform.h
LES/OpenSLES_Platform.h
|
e9236d046fdb5cac0696c42e03443a2439188146 |
16-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 clean logs, PTS should be unsigned - Don't pollute logs. - Save MPEG-2 PTS as an unsigned 64bit value, negative values are invalid. Change-Id: I51d427789dd1e42219a63c68159f2e28628f0448
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
1c853a41d9d9886e60618a7c878ce3912f46bf3c |
15-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 callback mask for TS streaming - declare a "buffer event" item key and the event mask matching the OpenSL ES 1.1 buffer queue event mask - added a buffer state field in AdvancedBufferHeader to keep track of the lifecycle of a buffer in the queue - in StreamPlayer, store a constant to be sent as the item each time a buffer is dequeued because it's been processed - fix bug in playStream test app where after clearing the queue, the data was read to the last dequeued buffer address, rather than at the beginning of the cache. Change-Id: I07141c8a913dfedeb9fde41d80afbce794ab7379
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
37dc2fccf3f122b79ebd554de209d0a3c94ae161 |
09-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 Implement streamInformation and volume in OpenMAX AL - Implement StreamInformation for video size notification. - Implement the XAVolumeItf for volume control - Fix bug in GUID -> MPH hash. - Fixed typo in GenericPlayer::pause() log - Do not signal a discontinuity automatically when the ABQ is cleared because clearing the queue doesn't imply there will be a discontinuity in the data (e.g. the same data that was cleared could be reenqueued) - In "native-media" test app: add test code to exercise the XAVolumeItf functionality. Change-Id: I9f69f8cacbdce51b6d96d60141ec1d0f645df991
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
e7bfcdc183454ec959ff51342f0973cabba219b2 |
08-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 Implement Clear() and GetState() for MPEG-2 TS - implemented Clear() in AndroidBufferQueue - declared and implemented GetState() in AndroidBufferQueue - fixed typo in AudioPlayer_to_android.cpp that cause a "case" to be compiled as a label (no unused label warning from compiler) - more test in sandbox/streamSource Change-Id: If4eede16430cda943224bf950669cc105ac2f894
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
70c49ae2867094072a4365423417ea452bf82231 |
07-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 support commands in SLAndroidBufferQueueItf Support for EOS, DISCONTINUITY, and DISCONTINUITY with a PTS. - in IAndroidBufferQueue structure, added buffer type - modified AdvancedBufferHeader structure to have a buffer type-specific structure that contains all the items for each buffer - added parsing of items when enqueueing a buffer - enforce buffer size enqueue to be a multiple of MPEG-2 TS block size for buffer of the corresponding types - when enqueueing a buffer on an empty queue, implemented an asynchronous notification on StreamPlayer to consume the newly queued buffer. Verified this kicks off playback after having starved the framework for buffers. - report unknown duration when using AndroidBufferQueue Change-Id: I9bde97a6c6ffca7d376b4963313b820b35f50a26
MXAL/OpenMAXAL_Android.h
|
ad1ab1d13a9b043202b9d5cdc1d8c4ef66cbbca8 |
05-Mar-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3329759 Surface texture as video sink XA_DATALOCATOR_NATIVEDISPLAY now allows either a Surface or SurfaceTexture together with a JNIEnv *. Miscellaneous fixes: - Clarify test button labels. - Line length 100. - Fix typos in XA_DATALOCATOR_ANDROIDFD and XA_DATALOCATOR_ANDROIDFD_USE_FILE_SIZE. Change-Id: I3f3c604dfda3cf66ef7d7adc8689564a83623b2f
MXAL/OpenMAXAL_Android.h
|
d158d31a6bbb06426b71c3d097b7768bc3fb79a3 |
04-Mar-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3329759 TS streaming over SLAndroidBufferQueueItf Modify the SLAndroidBufferQueueItf interface to offer a model where buffers of data can be queued along with commands (messages) when used for playback, or buffers of data can be received along with metadata (messages) changes: - new callback and enqueue functions in SLAndroidBufferQueueItf and XAAndroidBufferQueueItf. - definition of a new struct, AdvancedBufferHeader, for the buffers in the queue. - decoupling of the "buffer available to be filled" from SF and the call to the ABQ callback. Implemented in new file AndroidBufferQueueSource.cpp - source/sink checks and memory allocation when creating an AudioPlayer or MediaPlayer that uses SLAndroidBufferQueueItf, and verifying the data fed to the ABQ is declared as SL_CONTAINERTYPE_MPEG_TS - updated tests/native-media XA demo code, and tests/sandbox/streamSource to use the new interface. Change-Id: I48e44f346e718041d835fde51e349923fcc1f4b1
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
97876858aa17c7f24c6a1d60be09a57bc1824ba3 |
11-Jan-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
OpenMAX AL: support URI and FD as data sources for MediaPlayer Add ANDROIDFD as a data locator in OpenMAX AL Implement playback of URI and FD in the LocAVPlayer class, that inherits from AVPlayer Fix bug where Android MediaPlayer resources were not destroyed when the MediaPlayer object was destroyed. Share URI and FD internal type definitions between SL and AL Change-Id: I01d0d170baea4961f09b44339c99a79feba4620d
MXAL/OpenMAXAL_Android.h
|
1d081e49a10543018e1ae33792bd3d30504719ba |
05-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Squashed commit of 9 cherry-picks from master Android SDK level report is the highest available Fix bug in seek torture test This was found because we now do better checking of data locators. Comment out and decrease log level for play state Improve error handling and help message in test Include data source or sink name in log messages Bug 3326605: AudioRecorder uses wrong channel mask Don't overwrite previous error in locator check OpenSLESUT.h is not (yet) a supported header so remove the symlink from the SLES/ directory Shared engine between OpenSL ES and OpenMAX AL
LES/OpenSLESUT.h
|
d1fc9c0e89a9d2fd40ba4c48927a47b30ade637d |
09-Jan-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
OpenMAX AL: declare the XAAndroidSimpleBufferQueueItf interface. Identical to the SLAndroidSimpleBufferQueueItf interface, with OpenMAX AL types. Change-Id: Iefc4f9ffc72f85f543f258d7906367cfedfb9e0b
MXAL/OpenMAXAL_Android.h
|
ebc8fd365b402e498d499fa8737a7591c290347c |
16-Dec-2010 |
Glenn Kasten <gkasten@google.com> |
Clean up the API macros SL_API and XA_API declare a symbol to be exported by .so. SLAPIENTRY and XAAPIENTRY are for calling conventions, and are currently unused. Also unified the 64-bit int types between SL and XA. Remove obsolete symlinks. Change-Id: I248f624f3e974f130c62cfc27ce9ad8eb40c0b56
MXAL/OpenMAXAL_Android.h
MXAL/OpenMAXAL_Platform.h
penSLES.h
penSLES_Platform.h
LES/OpenSLES.h
LES/OpenSLES_Android.h
LES/OpenSLES_Platform.h
|
0e47a0657162bbff48886ea2f5c68d9edb607768 |
14-Dec-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
OpenMAX AL: set video display surface from video sink Initialize the media player's video surface with the surface pointer obtained from the Java Surface. Added notes on parts of the interface that will change, and are currently in place for the sample code to run, before the upcoming video initialization changes. Change-Id: Id606f4bca68d227fa9df863922b880e865f845d5
MXAL/OpenMAXAL_Android.h
LES/OpenSLES_Android.h
|
eae4df541ba1d46f65d37e959baf2127aa632c93 |
10-Dec-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Start support for XAAndroidBufferQueueItf in OpenMAX AL Added an Android OpenMAX AL header for the Android interfaces Registered the AndroidBufferQueueItf as an explicit interface on MediaPlayer. Updated the Java+Native example to register a callback from which OpenMAX AL can retrieve the data to play Started unifying the player object used by OpenMAX AL and OpenSL ES so they use a common class. Change-Id: I73cec8c802f74767545c91278e5e73c8c7995218
MXAL/OpenMAXAL.h
MXAL/OpenMAXAL_Android.h
MXAL/OpenMAXAL_Platform.h
LES/OpenSLES_Android.h
|
e945a85a903cfb83a8965a3246c9e1718023a897 |
07-Dec-2010 |
Andreas Huber <andih@google.com> |
Support for streaming. Change-Id: I8c4b53b57ceccf076c971d2ac8cd1223ecece094
LES/OpenSLES_Android.h
|
fa62f9f2c20b446178c05e3e92407fe5dfdbf8a1 |
30-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support for the SLAndroidBufferQueueItf interface Rename AndroidStreamSource to AndroidBufferQueue. Add prototype for SLAndroidBufferQueue functions. Update sandbox test app to use the new interface. Change-Id: Ib82180c22e5cf0dd982b4a9bb132667cd2ac4dd7
LES/OpenSLES_Android.h
|
8db0b106cdce5f5216b1535492de7930ad738aed |
29-Nov-2010 |
Glenn Kasten <gkasten@google.com> |
Continued work on OpenMAX AL engine APIs Added xaCreateEngine as synonym for slCreateEngine, but not yet reference counted to share same object with slCreateEngine. Added the beginnings of a XA_IID_ENGINE engine interface but still needs more work. Added simple xa test app. New extension: ANDROID_SDK_LEVEL_10 (not NDK per digit). Split up sles.c: - Move data source, sink, locator, format code to data.c - Move global entry points to entry.c - Collect all engine-related code into CEngine.c - Collect all device-related code into devices.c Change-Id: I9fdeed1e29f698869f409014a39401999ac84e5f
MXAL/OpenMAXAL.h
MXAL/OpenMAXAL_Platform.h
|
26043f06b7d6cb2f93a2f2e7846a4e59da722206 |
23-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Control MediaPlayer instance from SL ES interfaces Implement transport control on StreamPlayer. Store the StreamPlayer in CAudioPlayer as an sp<> In StreamPlayer: create a media player from the mediaplayerservice, and implement the IStreamSource interface to get data fromt the application callback. Note that the SLDataLocator_AndroidStreamer and SLAndroidStreamSourceItf are very much in flux at the moment. Change-Id: I11035aafcefd59aad99d1fec9fd54a622e6d1e0f
LES/OpenSLES_Android.h
|
ad887a253969ac2017a1dbe062d0b76d505594c0 |
20-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Set the MediaPlayer data source from a SL_DATALOCATOR_ANDROIDSTREAMER Use the data locator information to initialize the data source of the MediaPlayer instance used in the StreamPlayer object. Register the callback only when the player is stopped. Added callback events that can be passed from the application to the implementation to synchronously signal events. Change-Id: I1fc52d8d46b2bcf8ca11ab0e4d44d40e704ddbfc
LES/OpenSLES_Android.h
|
fe6f6b9ed3683119721618e1aeaa8c7d6baee188 |
19-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
More support for SL_DATALOCATOR_ANDROIDSTREAM - add test app in sandbox: based on playUri with different data locator - new object, StreamPlayer, that will encapsulate the life-cycle of the new MediaPlayer object that implements the streaming. Change-Id: Idfdb00e8622ff18d131465d11178979232ee04f8
LES/OpenSLES_Android.h
|
28bc6b725c207fb8fbd618caea4aa127f35ce1e1 |
13-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Definition of a new data locator and interface for streaming. Change-Id: Ib929749beca048be46187cabbf466981d81143e7
LES/OpenSLES_Android.h
|
a4b4d478171631eaa97e933eb46c1ff01bd04daa |
11-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 3183484 OpenSL ES: add support for the AUDIO_SOURCE_VOICE_COMMUNICATION record source. Change-Id: Icc593bdf2cc6ef7f61537661a82f63a46dc8693f
LES/OpenSLES_AndroidConfiguration.h
|
a3080daa505f91df51a808c85ddb37c48745bf7c |
21-Sep-2010 |
Glenn Kasten <gkasten@google.com> |
As part of API review, disable incomplete profiles Don't compile dead code relating to unsupported features, but keep profiles for CT. Move whole file conditionals from the source code to Android.mk, by just not compiling the module for unsupported features. There must an interface initialization hook present to expose an interface implicitly or explicitly at object creation time, or to dynamically add an interface after the object is created. As a safety check, we also double-check for the initialization hook when the application does a GetInterface. Miscellaneous bug fixes: - Fix warning "variable may be used uninitialized in this function". - Fix build errors on SDL. - Was using the wrong conditional for SDL. - Fix typo mInterfaceContinued -> mInterfaceStates2 in AudioRecorder. - Fix typo in IEngineCapabilities_init. Other cleanup: - Move ugly SDL-specific stuff out of the portable code. - Combine duplicated code in CAudioPlayerDestroy and CAudioRecorder_Destroy for freeing buffer queue memory. - Add curlies to if and do statements. - Line length 100. - Decrease engine voices from 32 to 30 (based on max of 32 objects, 1 engine, 1 output mix). - Disable IRecord_init log. - Add symbolic link for Android configuration header file. - Enable trace on Android. - sl_int64_t is now unconditionally defined rather than only if ANDROID defined, because it is used by OpenSLES_Android.h which might be included by SDL also. - Removed symlink for Android headers Change-Id: I1a6389257bca09e3819923129a1193473e16669b
penSLES_Android.h
LES/OpenSLES_Platform.h
|
01e9f5fa4698856f92bcfd88188ee4c8397b22db |
22-Sep-2010 |
Glenn Kasten <gkasten@google.com> |
Android simple buffer queue locator and interface Bug fixes: Fix bug in error handling and recovery for checkDataSource - potential memory leak. Clean up MPH table; there were some missing and uncommented entries. Testing: Add comments about using the END macro to test the MPH table. Convert feedback test from buffer queue to Android simplified buffer queue for rx side only, tx is still 1.0.1 buffer queue. Add option to sample/intbufq test to use build option to decide whether to use 1.0.1 buffer queue or Andorid simple buffer queue. Convert record test for new APIs. Miscellaneous: Update hashgen table and add an install rule. Add comments. Add more logging. Line length 100. Fix build warning. Double indent. Fix SL_DATALOCATOR value for FD. Change-Id: I35cce8934157fed88251e846b1beb15523b2b1a6
LES/OpenSLES_Android.h
|
a7b79e766ec6d95e9236168c27461c2ebaef4659 |
20-Sep-2010 |
Glenn Kasten <gkasten@google.com> |
Update logging Fix bug in ifdef __cplusplus for OpenSLES_Android.h. Clean up, simplify, and change level of a few log messages. Use SL_LOGx macros instead of LOGx in SfPlayer.cpp. Add comments regarding unsupported runtime log level checks. Line length 100. Change-Id: I52441ed6fbe9550248fa1b6944fc8e199f1f2724
LES/OpenSLES_Android.h
|
7fc9e14cb8d840df7242d37b55acff0b58d269c7 |
21-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix bug 3022251 Remove prefetch status error codes: not officially in OpenSL ES spec. AndroidEffectCapabilities: no const for effect name Android file descriptor data source: don't use a value that will likely be used by the specification in the future. Change-Id: I9b4e0d7eb265dc98c76021cddfe5a1f50b5eb6ef
LES/OpenSLES.h
LES/OpenSLES_Android.h
|
453dd564a81fe98b7a947ae4a9844a53fa957c2b |
18-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Remove the SLAndroidStreamTypeItf interface. It is now replaced by SLAndroidConfigurationItf which implements the same functionality (and more). Modified test to demo setting AudioPlayer stream type to use SLAndroidConfigurationItf Modified SLAndroidConfigurationItf to enable passing a NULL pointer to value so the value size for the key ca be queried. Fixed type in AudioPlayer and AudioRecorder Android side which reported an error if the SetConfig() function was called when the object was unrealized (the intent is to check that the object is NOT realized because we are configuring the resources the object is going to use). Change-Id: I20f3dba8c63066db94d537109854b4c4139f65b3
LES/OpenSLES_Android.h
|
75e22870e41386cdc597bd29c76744d74d4c22ad |
17-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Allow Android stream type to be set by SLAndroidConfigurationItf. Allow Android stream type to be set through the SLAndroidConfigurationItf interface, instead of the SLAndroidStreamTypeItf interface, which is going away before release. The stream type is now stored in CAudioPlayer, and used before the AudioTrack of the player is instanciated. AudioRecorder preset and AudioPlayer stream type also implement the following behavior: when querying a key with a NULL pointer as destination for the value, the value size is updated with the actual size used to store the value for the given key. Change-Id: I652a5b463a220698c53fc1d2b485143b794a1d75
LES/OpenSLES_Android.h
LES/OpenSLES_AndroidConfiguration.h
|
d7d18f940d5477238cd17060b6bf33867bc42f07 |
15-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "Add prefetch status error definitions." into gingerbread
|
e214a8c49938e7356943b59db53474e5fc3ae07c |
15-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Rename default recording preset to generic. Change-Id: I77144ebcc593001ca60b94f0176fc2287e7400fd
LES/OpenSLES_AndroidConfiguration.h
|
e3105d7d252fe0d1018c3578a675a8d63714d823 |
15-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add prefetch status error definitions. Add prefetch status error definitions as defined in post SL ES 1.0.1. Add fixmes for Android extension discovery. Change-Id: I36161013f121b0fb0748311df9e8167e45f88808
LES/OpenSLES.h
|
b3e52a63baaea367cf411348b68ecd8fd429b029 |
14-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Implement SLAndroidConfigurationItf on AudioRecorder. Enable the use of the configuration interface before the AudioRecorder object is realized to set the recording preset. Recording presets map to the Android AudioRecord input source. Change-Id: I804095a0b39e4676862f6bc8e7fbaa0ba63b9336
LES/OpenSLES_AndroidConfiguration.h
|
42309377d1ed17b557fab30f1bf26b8ba31a96fd |
12-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add SLAndroidConfigurationItf, enabled on AudioRecorder. This adds a generic configuration interface, first enabled on the AudioRecorder object. This is intended to be used to configure the audio recording source. It is meant to be usable before the object is in REALIZED state. Change-Id: I8f6c1cf8f5be8a8dfb332c4e89d91f45047f48e3
LES/OpenSLES_Android.h
|
fef6033d852daec8d88060b252e72f322724dca1 |
10-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Implement the SLAndroidEffectSendItf. This enables sends from an AudioPlayer to an OutputMix that's using the generic effect interface (SLAndroidEffectItf). Since there is a single aux bus, the effect ID is only used to verify the effect referred to in the send is actually attached to the OutputMix. Also there is a single send level value and enable flag for the interface, even though the interface definition supports discerning between multiple effects (so it scales on platform with multiple aux buses). Dry (direct) level is now stored in the AudioPlayer, as it is shared between SLEffectSendItf and SLAndroidEffectSendItf. Change-Id: I3dd34c4c045d8ac2961a325e10b181a789bf4913
LES/OpenSLES_Android.h
|
884ed8e6ccaf395f7b57e1cf16c2779c651eb800 |
09-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Definition of SLAndroidEffectSendItf Define the SLAndroidEffectSendItf interface which mirors the SLEffectSendItf interface, but uses an SLInterfaceID parameter to identify the effect the AudioPlayer is sending to. Change-Id: Iec0ddf315a6974fafedecd566bd01c7231183312
LES/OpenSLES_Android.h
|
5b09aa864215690580b18eb802927e8cc7eb4861 |
03-Sep-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Implement SLAndroidEffectItf and SLAndroidEffectCapabilities. Change-Id: Ia2cf6e3f0178189b0ed010690bc9906b61a746a7
LES/OpenSLES_Android.h
|
768edbc2a8e7f197548cf1141689dd237d19c455 |
27-Aug-2010 |
Glenn Kasten <gkasten@google.com> |
Fix compile-problem on desktop, and SDL bug. Fix bug caught by using gtest on desktop: SDL was not being shutdown properly when engine destroyed. Fix compile problems on desktop for BassBoost, Equalizer, and Virtualizer. Add new OpenSLESUT function: slesutResultToString. Rename SDL_start to SDL_open to match SDL naming conventions. Add SDL_close. Add symlink for applications to use OpenSLESUT.h. Change-Id: I6ef9895adc508b3b9570c79302c7a3046ca8246f
LES/OpenSLESUT.h
|
67bdf8a2fbd1024ab50c4513e1504325475368e0 |
28-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
First implementation of the generic audio effect interface for OpenSL ES. SLAndroidAudioEffectItf is an explicit interface, exposed on AudioPlayer Change-Id: I41f86fd64650db7b3cb2d220cdb043d2dcbbcc21
LES/OpenSLES_Android.h
|
579f0a46b0242606f075994fc581a1c32691de09 |
28-Jul-2010 |
Glenn Kasten <gkasten@google.com> |
Add symlinks for apps that don't follow standard. Change-Id: I65bb243dc983d869b958cb90e62621026882cd88
penSLES.h
penSLES_Android.h
penSLES_Platform.h
|
ee21d26b4b66d0f19b826685b3070497523994d5 |
28-Jul-2010 |
Glenn Kasten <gkasten@google.com> |
Khronos recommendation: include "SLES/OpenSLES.h" Change-Id: Iaa36d08f313a29ad2914e7459448bf9418e8c6c8
penSLES.h
penSLES_Android.h
penSLES_Platform.h
LES/OpenSLES.h
LES/OpenSLES_Android.h
LES/OpenSLES_Platform.h
|
6c7bd2eda0843708a8f36773b13716ba479dd6fb |
01-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix build. Correct definition of 64bit constants. Change-Id: I293a28f377b5e6f7ebf5e341c3317f99f78fd125
penSLES_Android.h
|
989ab369777ef514ac3ba6cdb893de9ae0c976bc |
30-Jun-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Declaration of a new DataLocator type for OpenSL ES on Android: file descriptor. Implementation of support for SL_DATALOCATOR_ANDROIDFD. Test application to play a file from a file descriptor. Fix bug in sles_to_android.cpp where resources were never freed when destroying the player. Change-Id: I45156f41ee5ca77d3a944f8f89b75880db8b4aba
penSLES_Android.h
penSLES_Platform.h
|
05ccff2aaa3e1507cdc7ab3b244c973c6708e009 |
29-Jun-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Declaration and implementation of a new OpenSL ES interface to set to set the Android stream type on an AudioPlayer object. Change-Id: Ic5d14e9899dfbccfc647642ae562730807bc73fe
penSLES_Android.h
|
7245a5b0889fec8996e3a9d270e551cc1bf940ab |
18-Jun-2010 |
Glenn Kasten <gkasten@google.com> |
Improve platform portability. Change-Id: I00ae4f3f4cf31d9156c274750c3582ae60450732
penSLES_Platform.h
|
00d2d554e04ac369367c903dbf53b975355d1bcd |
04-Jun-2010 |
Glenn Kasten <gkasten@google.com> |
Improve portability. Change-Id: I67643ff9807fcb0459322b36d2b5406ae15903a7
penSLES.h
|
2045b02407f6ac0a570faee3157b24317c8a69e0 |
28-Apr-2010 |
Glenn Kasten <gkasten@google.com> |
Continued implementation, move all C files to top. Change-Id: I33bc95ba7a27d53e2fa87e0e994a2c0007be6726
penSLES_IID.c
|
29ecc091f988ce8e6d95296a5f47377007ad77fe |
27-Apr-2010 |
Glenn Kasten <gkasten@google.com> |
OpenSL ES 1.0.1 documents and headers as downloaded from Khronos. Change-Id: Ie9cf1df5018b26e5148eb1666dcd546d450b43e6
penSLES.h
penSLES_IID.c
penSLES_Platform.h
|
9c3a1c1711ec228a236b59b461aeaa3e925ce3b8 |
27-Apr-2010 |
Glenn Kasten <gkasten@google.com> |
OpenSL ES 1.0 documents and headers as downloaded from Khronos. Change-Id: Ifd948d08eb0493cf09c08657635c61d5e835a37e
penSLES.h
penSLES_IID.c
penSLES_Platform.h
|