02a171afdb1a5198b22f38ed1b306bb8cc6e7043 |
|
30-Nov-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
resolved conflicts for merge of 2917f475 to master Change-Id: I63f4689fabb2aee1682d785ad9c41f06de380396
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
682f9be91e641e80739c21d6ff124379a806182a |
|
16-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5238515 AndroidBufferQueue miscellaneous AndroidBufferQueue: - errors found by setItems are now hard errors, and cause Enqueue to return an error result (e.g. PARAMETER_INVALID or PRECONDITIONS_VIOLATED) - disallow EOS with non-zero data - disallow Enqueue after EOS - Enqueue checks MPEG-2 sync byte of first packet to reduce chance of downstream failures - use MPEG-2 terminology "packet" instead of "block" - Clear and init don't need to erase buffer content, as it is inaccessible - put placeholder in IAndroidBufferQueue_SetCallbackEventsMask for additional events beyond SL_ANDROIDBUFFERQUEUEEVENT_PROCESSED - comment unused field mBufferState in AdvancedBufferHeader - fix a minor typo - add dump method, #if 0 out by default Change-Id: I11921e3784bfdb30e2cebaa1dabb705ea5ab0b92
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
70e6a0238597223221a8bf5e506c92acf28aa35f |
|
29-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Simplify code for the AAC decode use case Details: AacBqToPcmCbRenderer constructor now takes an additional parameter: the IAndroidBufferQueue * interface. So now there is no need to register a callback after construction, and AacBqToPcmCbRenderer::registerSourceQueueCallback can be deleted. This allows android_audioPlayer_androidBufferQueue_registerCallback_l to be deleted. AacBqToPcmCbRenderer::mBqSource is always non-NULL and const, so this allows removal of mBqSourceLock and some error-checking code. BufferQueueSource source constructor now takes the IAndroidBufferQueue * interface instead of the list [user, context, caller]. This allows mAndroidBufferQueueSource to be const, which then allows more code to be deleted in IAndroidBufferQueue_RegisterCallback. new AacAdtsExtractor can't fail. Change-Id: I1f39ccc1e69833fe6df616feb76edbe4ce82fca7
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
3ac5dcc05fe321e4f01918aef2e3e54e22c9a5c1 |
|
17-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Remove dead code AudioPlayback_Parameters fields trackcb and trackcbUser audioTrack_callBack_uri android_Player_androidBufferQueue_registerCallback_l GenericPlayer field mLooperPriority StreamPlayer::registerQueueCallback CAudioPlayer::mpLock AudioSfDecoder::startPrefetch_async IAndroidBufferQueue does not support AudioRecorder object android/BufferQueueSource.h #include Change-Id: I9d7cef243167e10279df452e7c62e66d8f5fe3b6
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
677c76347d9aaca4cf3746b3dbfc8a741281066b |
|
24-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5217144 AndroidBufferQueue::Enqueue error chks Add more error checks to Enqueue: - check for a NULL data pointer with non-zero data size - check for a NULL item array with non-zero item array size For the Enqueue item processing: - examine all items if there is more than one in the array - check for invalid combinations of items - check that total length of item array is large enough for each item's header and any optional data - check for an EOS with a non-empty item data - log if an unknown item key is found - added the EOS item handling code for AAC ADTS (the underlying implementation is still not yet done). Fix copy/paste typo in initializeAndroidBufferQueueMembers. AacBqToPcmCbRenderer::validateBufferStartEndOnFrameBoundaries: - now returns a more specific result code rather than bool - readAt return type ssize_t not size_t - readAt return 0 (EOS) is a LOGV not LOGE. Fix race in Android buffer queue callback: replaced logic in BufferQueueSource.cpp by safer code from android_StreamPlayer.cpp Change-Id: I423ccbd6d76a736a486b49b5dfdb7898b52cdd02
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
6a98dda78256c053fcd8bddc76ac5218f4313c03 |
|
18-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Bug 5159291 lock safety"
|
b566926611b2105a46c4ff98238ad06aca54104d |
|
12-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5159291 lock safety Change-Id: I56f5fd038d63d033954d794168df4cbcdade26f3
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
bb832e853d4afb11b0a3287b2eb0cad87696d631 |
|
27-Jul-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
AAC buffer decode to PCM buffer queue Implement AAC ADTS decode with buffers of compressed data being passed to the framework through an AndroidBufferQueue, and decoded PCM buffers being passed to the application through a BufferQueue (just like existing decode from URI/FD). Change-Id: Id992a44a5ca7e404088b929f2b0afe9ca1f85223
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
ecc4fe22e076c4e5c891d823b01db1a683ba6690 |
|
02-Aug-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5109153 Remove log spam Change-Id: I6c0c742bfa3f0078968dc5e2ea3578ad786067c5
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
a8179ea15c4ff78db589d742b135649f0eda7ef2 |
|
13-Apr-2011 |
Glenn Kasten <gkasten@google.com> |
Fix build warnings caused by the 'long' change Change-Id: I34e74d723ae7fd829dd140614928d7880e669f03
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
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
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
bcc5c7225e3b7a1dbf2e9e830987f69167acf06f |
|
18-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Rename class__ to clazz, this to thiz The JNI naming conventions avoid conflict with C++ reserved words. Change-Id: I93ad6920bf78c0a02ac4b2650a29c9e11252f731
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|
262059f71a68edc5e510427c63f5f1623d3672a8 |
|
12-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Directory re-organization Change-Id: I8e3f12a22e765d36ddefd87edf204735b25474f6
/frameworks/wilhelm/src/itf/IAndroidBufferQueue.c
|