History log of /system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2d0a5d63293fc7b0ff767a66f3f8b553c8400476 03-Oct-2011 Glenn Kasten <gkasten@google.com> Error logging in AAC

Change-Id: Ie0b620871543b18e58964a42842d1bb9f193c235
/system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp
7f4c012589a6c1932dd8ab7a6072f2b655e52dd3 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Merge "Fix bug 5236913 EOS causes HEADATEND event in play callback"
00f9affdc5694ad9e15a9415e6f3bd23b487e704 09-Sep-2011 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 5236913 EOS causes HEADATEND event in play callback

In AAC decode through an Android Buffer Queue, after receiving
an EOS command, prevent reading from the queue by returning
a size of 0, which causes the decoder to signal an end of
stream. This will cause the SL_PLAYEVENT_HEADATEND to be
fired (from the same thread that sends the decoded data)
if the event was part of the play event mask, and a callback
had been registered.

Change-Id: I435e8a66dbe9bc37f24c9e1f1c13f0dbd670b395
/system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp
c5f48c752a3f7bc5e4279365550625586cffb455 09-Sep-2011 Glenn Kasten <gkasten@google.com> Bug 5280072 decode AAC ADTS fails for CRC content

Also copy in the length check from Stagefright.

Change-Id: I6758dbe370dd3a7178061183bbb83d289e5c00c5
/system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp
02b9a8f9d11512ff604ada5b4d76fbb5d06cc488 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
/system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp
333c2341445e9f161ff022a4b7d5f69e9e149b60 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
/system/media/wilhelm/src/android/util/AacAdtsExtractor.cpp