summaryrefslogtreecommitdiffstats
path: root/media/libstagefright
Commit message (Collapse)AuthorAgeFilesLines
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-2662-503/+503
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* am 23d64420: Merge "Stagefright: idle OMX after ANW errors" into ics-mr0Dave Burke2011-10-195-1/+39
|\ | | | | | | | | * commit '23d644202a44383bf008ff86f6faa3ea7e447290': Stagefright: idle OMX after ANW errors
| * Merge "Stagefright: idle OMX after ANW errors" into ics-mr0Dave Burke2011-10-195-1/+39
| |\
| | * Stagefright: idle OMX after ANW errorsJamie Gennis2011-10-195-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change fixes an issue in Stagefright where the state of an OMXCodec object can get out of sync with the state of the OMX component. In particular, if one of the ANativeWindow functions failed and put the OMXCodec into the ERROR state, this would cause Stagefright to skip doing the Executing -> Idle transition. Without this transition the freeBuffersOnPort call would never be made, and the MediaBuffers would end up being leaked (which would also leak the Gralloc buffers they reference). Bug: 5333695 Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
* | | am 5264f600: Merge "Bail out after kMaxColorFormatSupported calls to ↵James Dong2011-10-181-7/+16
|\ \ \ | |/ / | | | | | | | | | | | | | | | OMX_GetParameter(). Avoid infinite loop in querying omx component about the supported color format." into ics-mr0 * commit '5264f6003bbcb8ca70df034379154914260cc322': Bail out after kMaxColorFormatSupported calls to OMX_GetParameter(). Avoid infinite loop in querying omx component about the supported color format.
| * | Bail out after kMaxColorFormatSupported calls to OMX_GetParameter().James Dong2011-10-181-7/+16
| |/ | | | | | | | | | | | | Avoid infinite loop in querying omx component about the supported color format. Change-Id: I4997efd36462c792a6d8b5e04c79a80966a559fe related-to-bug: 5466057
* | am 6f13adb2: Merge "Don\'t hold onto the lock while reconnecting to the ↵Dave Burke2011-10-171-10/+18
|\ \ | |/ | | | | | | | | | | server" into ics-mr0 * commit '6f13adb22afcb47a1cd45a90eaa3c154522089d4': Don't hold onto the lock while reconnecting to the server
| * Merge "Don't hold onto the lock while reconnecting to the server" into ics-mr0Dave Burke2011-10-171-10/+18
| |\
| | * Don't hold onto the lock while reconnecting to the serverAndreas Huber2011-10-171-10/+18
| | | | | | | | | | | | | | | | | | to avoid stalling the readers. Change-Id: I73b646587c8a654a73ff7d800c0f17bd78001855
* | | NuPlayer is now taking on the task of streaming over RTSP.Andreas Huber2011-10-139-660/+111
| | | | | | | | | | | | Change-Id: Ie204db8810807f1e7981959e34dc0149e5d9563a
* | | Merge "Support for an MPEG2 Program Stream extractor."Andreas Huber2011-10-1313-10/+863
|\ \ \ | |/ / |/| |
| * | Support for an MPEG2 Program Stream extractor.Andreas Huber2011-09-3013-10/+863
| | | | | | | | | | | | Change-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41
* | | Assume a PTS of 0 if absent, don't bail on fragmented PES packets not having PTSAndreas Huber2011-10-122-2/+8
| |/ |/| | | | | | | Change-Id: I3b31f08428fb7195b98f145ae0675006c8756de1 related-to-bug: 5450187
* | YouTube can now request custom cache/prefetch parameters and ↵Andreas Huber2011-10-103-4/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | disconnect-at-highwater through the use of pseudo http headers specified in the setDataSource call. x-cache-config: -1/-1/0 x-disconnect-at-highwatermark: 1 turns off keep-alives and disconnects every time the cache is full (will attempt to reconnect once it run below lowwater mark) related-to-bug: 5433309 Change-Id: Id2f942fc956e0e156834cfcd6bb08dae6a29fae1
* | Specifying -1 for both low and highwater marks would not actually do the ↵Andreas Huber2011-10-071-5/+15
| | | | | | | | | | | | | | | | | | right thing before this change. Also make it more consistent in that specifying -1 for the keepalive settings specifies the default. Change-Id: I086f530fbf42abce66d1c8e61157215cb474e044
* | Merge "Allow a system property "media.stagefright.cache-params" to override ↵Andreas Huber2011-10-072-9/+65
|\ \ | | | | | | | | | cache/prefetcher"
| * | Allow a system property "media.stagefright.cache-params" to override ↵Andreas Huber2011-10-062-9/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cache/prefetcher default parameters. To override specify a property adb shell setprop media.stagefright.cache-params "4096/20480/15" to set the low water threshold to 4096 KB, the high water threshold to 20 MB and the keepalive interval to 15 secs. if high and/or lowwater mark are negative, the default values are used for the respective value. if keep-alive interval is 0, keep-alives are disabled. Change-Id: I89a4a06836e4a2f473d7a92b567ab07818c2f87d
* | | Return a runtime error instead of assertion if seeking beyond EOS in mpeg4 ↵Andreas Huber2011-10-061-4/+6
|/ / | | | | | | | | | | | | files. Change-Id: If6531b4a1ff45460cfcdcc04764c5c63a2f5a749 related-to-bug: 5418914
* | Set crop params to ANative Window during Initialization.Lakshman Gowda2011-10-051-16/+22
|/ | | | | | | | | | | | The native_window_set_crop() is called when port reconfig event callback comes from decoder's and crop parameters are changed from default getconfig() OMX_IndexConfigCommonOutputCrop values. Since the default crop params are same as port reconfig crop params, the native_window_set_crop() is not called, hence resulting in displaying the whole frame(paddedWidth x paddedHeight). By calling native_window_set_crop() during initilaization of output port of decoder ensures in setting up ANative window to crop region. Change-Id: I68926464a1f5c7e6053804615c8b9bd32ea85688 Signed-off-by: Lakshman Gowda <lakshman79@ti.com>
* Gracefuly return on detecting wrong AAC format from corrupted filesGilles-Arnaud Bleu-Laine2011-09-301-6/+22
| | | | | | | | | | | Return BAD_VALUE error upon detection of wrongly formatted files. The client should abort the initialization upon error detection. The current CHECK() interrupts the configurecodec() preventing a graceful exit. Change-Id: Ic79313fa76a63284897df5d91635de87d06f3100 Signed-off-by: Gilles-Arnaud Bleu-Laine <gilles@ti.com>
* Merge "Support multiple NAL fragments per .mkv payload"Andreas Huber2011-09-281-47/+61
|\
| * Support multiple NAL fragments per .mkv payloadAndreas Huber2011-09-281-47/+61
| | | | | | | | | | | | | | | | | | Apparently the payload for an h.264 track in an .mkv file can contain multiple NAL fragments, we used to discard everything after the first one before, now we preserve them all. Change-Id: Ic7187365309f3880a3256982879a45df50db697d related-to-bug: 5337218
* | Merge "Flush resets the count of played audio frames"James Dong2011-09-281-0/+3
|\ \ | |/ |/|
| * Flush resets the count of played audio framesJames Dong2011-09-271-0/+3
| | | | | | | | | | Change-Id: I0cda94646a71757fa113a199d29235e13efd7ac3 related-to-bug: 5331470
* | Support AMR, G.711 and vorbis audio in ACodec and friends.Andreas Huber2011-09-282-3/+95
|/ | | | Change-Id: I08c03219bf2d60fc5c6e89957bd4b4c615570983
* Cut down on AwesomePlayer and OMXCodec's verbosity.Andreas Huber2011-09-272-9/+9
| | | | | Change-Id: Ifd95717e8ea0fb0327099b16d72a6ed58c7c9924 related-to-bug: 5382014
* Propagate error signalled by the source all the way to the output EOS ↵Andreas Huber2011-09-261-3/+19
| | | | | | | notification. Change-Id: I30e959a6d669f09745c59fbdebee08f869511cf7 related-to-bug: 5372901
* Merge "Support even more .avi files with .mp3 content not aligned to chunk ↵Andreas Huber2011-09-262-38/+309
|\ | | | | | | boundaries"
| * Support even more .avi files with .mp3 content not aligned to chunk boundariesAndreas Huber2011-09-232-38/+309
| | | | | | | | | | Change-Id: I3ace4118e2e519648c23c51d0b699ba0d7511a5d related-to-bug: 5349382
* | am 1d71c7b4: Merge "Returning EOS in SurfaceMediaSource:read" into ↵Pannag Sanketi2011-09-231-2/+2
|\ \ | |/ |/| | | | | | | | | ics-factoryrom * commit '1d71c7b40a7f38487e602e78f45279b6a8364fc9': Returning EOS in SurfaceMediaSource:read
| * Returning EOS in SurfaceMediaSource:readPannag Sanketi2011-09-221-2/+2
| | | | | | | | | | | | | | | | | | | | In SurfaceMediaSource::read, if disconnect has already been called, then ERROR_END_OF_STREAM should be returned rather that NO_INIT. Else, it sometimes leads to a crash in mediarecorder stop() call. Related to FactoryROM bug: 5332812 Change-Id: I22132538ab2501d084e0283876817b1ec3f64a1d
* | Support some .avi files containing H.264 video, log warnings if audio/video ↵Andreas Huber2011-09-213-12/+94
| | | | | | | | | | | | | | unsupported Change-Id: Ie7280f25f2bd19f32234c08673e64ceb65833677 related-to-bug: 5349382
* | Remove an O(n^2) algorithm in MPEG4Extractor.cpp to speed up seeks in long ↵Andreas Huber2011-09-192-23/+84
| | | | | | | | | | | | | | | | | | streams containing B-frames. Change-Id: Ie4dc734d2c2d5a5ce84674bb883f4b27e2278642 related-to-bug: 5336497
* | In order to recover from video lagging behind audio, drop avc framesAndreas Huber2011-09-162-0/+23
| | | | | | | | | | | | that are not referenced by other frames before feeding them into the decoder. Change-Id: I822190af8f8329567bff8da1ea23136d0a765481
* | Various improvements to nuplayer playbackAndreas Huber2011-09-165-7/+47
|/ | | | | | | | | | | | | | | | | | | | - Drastically cut down the number of times we supply the AudioSink with data by estimating the time until the sink would run out of data and then scheduling a refill in advance of that. - Use a dedicated looper for video decoders since they are currently taking too long to return from OMX_FillThisBuffer (bug 5325201) - Revise thread priorities for the OMX dispatcher and software codecs, instead of running them at ANDROID_PRIORITY_AUDIO, they now only run at ANDROID_PRIORITY_FOREGROUND - Since threads created by pthread_create inherit all of the parent threads attributes including thread priority, briefly reset thread priority to ANDROID_PRIORITY_FOREGROUND before instantiating OMX components and then restore it. Change-Id: If9332a3a20dad5485333d68c11de0d2d5d3fffc3
* Merge "Change an assert failure due to unsupported level by HW AVC decoder ↵James Dong2011-09-141-9/+10
|\ | | | | | | and report the error to applications"
| * Change an assert failure due to unsupported level by HW AVC decoder and ↵James Dong2011-09-131-9/+10
| | | | | | | | | | | | | | report the error to applications Change-Id: I522a994981d86329ccc86c3b536b561dc6e40eeb related-to-bug: 5300618
* | Support .avi tracks that have a sample size of 1, i.e. samples != chunksAndreas Huber2011-09-132-14/+56
|/ | | | | | | | Assume for now that all chunks are the same size, i.e. have the same number of samples. Change-Id: Ib8a7dfeb16cc3e5be199ff9d98b68dd0b9c23eb8 related-to-bug: 5279872
* Merge "Turn an another assertion into a runtime error in ACodec's ↵Andreas Huber2011-09-121-22/+18
|\ | | | | | | implementation"
| * Turn an another assertion into a runtime error in ACodec's implementationAndreas Huber2011-09-121-22/+18
| | | | | | | | | | Change-Id: I6779b29f200b90d088273ab3204724ef3d8d59bd related-to-bug: 5284760
* | Increase the avi extractor's confidence slighly over mp3'sAndreas Huber2011-09-121-1/+5
|/ | | | | | | | So that we don't accidentally identify a .avi file containing an mp3 track as an mp3 file. Change-Id: I73495b80cbb5bc1007bf810f2db453c9f175171b related-to-bug: 5288189
* Merge "Don't check mFilledBuffers whether it is empty or not when the port ↵James Dong2011-09-091-3/+8
|\ | | | | | | reconfiguration is not meant for buffer reallocation"
| * Don't check mFilledBuffers whether it is empty or not when the port ↵James Dong2011-09-091-3/+8
| | | | | | | | | | | | | | reconfiguration is not meant for buffer reallocation Change-Id: Iee9b18449bce9d7565ab5cc7f9e999484051196c related-to-bug: 5233843
* | Merge "Always set geometry in queuebuffer"Pannag Sanketi2011-09-081-4/+5
|\ \
| * | Always set geometry in queuebufferPannag Sanketi2011-09-081-4/+5
| | | | | | | | | | | | | | | | | | | | | The queuebuffer could return early due to timestamp issues. Need to set the geometry even in that case. Change-Id: I04d7cd1df3996d640c269285398c0042923ba920
* | | Audio player must not be used as a timesource before it's started.Andreas Huber2011-09-082-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise it'll trigger a division-by-zero exception since the audio sample rate is as yet unknown. Change-Id: I0793aa7c1c348ffa2611272bb646eff6ecf6ff53 related-to-bug: 5242451
* | | Merge "Fixing bug in SurfaceMediaSource_test"Pannag Sanketi2011-09-071-5/+19
|\ \ \ | |/ / |/| |
| * | Fixing bug in SurfaceMediaSource_testPannag Sanketi2011-09-021-5/+19
| | | | | | | | | | | | | | | | | | | | | | | | The test was making EGL calls once disconnected. Instead of calling "disconnect" directly on the Surface, and EGL calls should be made to that effect. Change-Id: I21468ac8cbc2cb3145a49269e32a884736cd452e
* | | Apparently keyframe status in audio tracks of .webm/.mkv files is unreliableAndreas Huber2011-09-071-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | fortunately in all our supported audio encodings we can treat every frame as a keyframe. Change-Id: I32f21d0077bbae7ef9efe725dd351baf531179e2 related-to-bug: 5263837
* | | Merge "Stop metadata retriever from dereferencing a NULL pointer if"Andreas Huber2011-09-071-2/+14
|\ \ \ | |_|/ |/| |