summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Merge "nuplayer: Drop frames with DATACORRUPT flag"Linux Build Service Account2015-11-035-1/+17
|\
| * nuplayer: Drop frames with DATACORRUPT flagShalaj Jain2015-10-265-1/+17
| | | | | | | | | | | | | | | | | | | | | | Drop frames in NuplayerDecoder if the corresponding OMX_BUFFERFLAG_DATACORRUPT is set from OMX. Add a util function to easily switch off this feature. Do not declare MediaSource explicitly. Change-Id: I97bd238d52d660e1ab61eac222cdff28334cc5cc
* | Merge "NuPlayer: use a generic funtion to get flags"Linux Build Service Account2015-10-303-3/+3
|\ \ | |/
| * NuPlayer: use a generic funtion to get flagsSidipotu Ashok2015-10-263-3/+3
| | | | | | | | | | | | | | | | | | Use a generic function to get flags while creating extractor, so that there is no restriction to a particular usecase. CRs-Fixed: 911338 Change-Id: I8520d2ea9b25ab564b7eee6610744fcaa364fe87
* | Merge "GenericSource: Hold an additional reference to dataSource."Linux Build Service Account2015-10-291-1/+6
|\ \
| * | GenericSource: Hold an additional reference to dataSource.Shivaprasad Hongal2015-10-261-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mDataSource can be deleted by client thread while GenericSource looper is accessing dataSource in sniff functions, which can lead to race condition. Add local sp<> to hold an additional reference to dataSource. Change-Id: I9e51f75f3c2bd703e381230dd93cb4d3f6621dab CRs-Fixed: 923729
* | | Merge "GenericSource: Synchronize access to dataSource"Linux Build Service Account2015-10-292-5/+18
|\ \ \ | |/ /
| * | GenericSource: Synchronize access to dataSourcePraveen Chavan2015-10-262-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DataSource and HTTPSource can be accessed/modified by GenericSource's looper and Client's thread which can lead to race conditions when copying the sp<>. Add a Mutex lock to synchronize such accesses and avoid race conditions. CRs-Fixed: 906899 Change-Id: I2fb4b4a7079e638e151f4fe67a780007a4011652
* | | Merge "stagefright: Return error for wrong buffer index in MediaCodec"Linux Build Service Account2015-10-292-1/+5
|\ \ \
| * | | stagefright: Return error for wrong buffer index in MediaCodecShalaj Jain2015-10-262-1/+5
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Return error if the index passed by client is incorrect rather than returning OK with null buffer. Also add a null buffer check in MPEG4Writer as it shouldn't rely on the source returning the correct error code, just as a precaution. Change-Id: Iaefcd57a545ec3ce4ec0b8d4220bdf41377ff798
* | | Merge "stagefright: Remove additional deep-copy of encoder buffers"Linux Build Service Account2015-10-293-9/+22
|\ \ \
| * | | stagefright: Remove additional deep-copy of encoder buffersShivaprasad Hongal2015-10-263-9/+22
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MPEG4Writer makes a copy of encoded buffer to avoid holding on to the read buffer. This is not needed with MediaCodecSource, as the encoded-output buffer is already copied to a heap buffer. This saves a copy and some power. However, cloning the buffer is still needed for upstream sources that cannot afford to keep the buffers with writer up until they are released. So, pass a hint in buffer's metadata to indicate if it is OK to delay the release and not copy the buffer Change-Id: Ib59ac29ebc6ce4afd6fc272688a8260438ab1517
* | | Merge "stagefright: Enable QTI FLAC based on feature flag"Linux Build Service Account2015-10-291-0/+6
|\ \ \
| * | | stagefright: Enable QTI FLAC based on feature flagAshish Jain2015-10-261-0/+6
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | -QTI Flac decoder is used only if QTI_FLAC_DECODER flag is defined. -Enable QTI_FLAC_DECODER flag if respective feature flag is enabled. Change-Id: I192e30af3e53a57f13aa2be5dc92bfbe5f20d096 CRs-Fixed: 927012
* | | Merge "Stagefright: use set buffers mode."Linux Build Service Account2015-10-2710-18/+53
|\ \ \ | | |/ | |/|
| * | Stagefright: use set buffers mode.Shivaprasad Hongal2015-10-2610-18/+53
| |/ | | | | | | | | | | Use set buffers mode if parser supports it. Change-Id: Ia3d12f15fa28f25e1ccb724158cc91ce26fc81ed
* | Merge "NuPlayer: Decoder: Check for valid codec on resume"Linux Build Service Account2015-10-261-1/+8
|\ \ | |/ |/|
| * NuPlayer: Decoder: Check for valid codec on resumeHaynes Mathew George2015-10-251-1/+8
| | | | | | | | | | | | | | | | | | | | | | The MediaCodec member associated with an NuPlayerDecoder is cleared if configure fails. A pending seek operation in NuPlayer can issue a ResumeDecoderAction. Add a NULL check before accessing the MediaCodec instance to handle this resume. Change-Id: Idc6c15168ec922ca1bd6d867cbe59847647c6f26 CRs-Fixed: 913215
* | Merge "stagefright: Wait longer before force releasing codec"Linux Build Service Account2015-10-251-2/+2
|\ \
| * | stagefright: Wait longer before force releasing codecShalaj Jain2015-10-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increase the timeout to 30 secs from 10 in order to give the components more time to move to idle state, otherwise freeNode during codec release will also try to move it to idle and bad things will happen. This is a temporary fix until software codecs error handling is improved. Change-Id: I89203bfbce1b81f53ed6e2a33747ec40a786507d
* | | Merge "Revert "NuPlayer: Use ".m3u8" in substring search to determine HLS URL""Linux Build Service Account2015-10-251-1/+1
|\ \ \ | |_|/ |/| |
| * | Revert "NuPlayer: Use ".m3u8" in substring search to determine HLS URL"Santhosh Behara2015-10-241-1/+1
| |/ | | | | | | | | | | This reverts commit 427d20a12115dbb35c6391f014f68e5283b3e6a2. Change-Id: I80295041a49295852701832d5af71adda862df8e
* | Merge "Nuplayer: Ensure AudioSink is closed before clearing Renderer"Linux Build Service Account2015-10-251-0/+3
|\ \
| * | Nuplayer: Ensure AudioSink is closed before clearing RendererHaynes Mathew George2015-10-241-0/+3
| |/ | | | | | | | | | | | | | | | | Close AudioSink object explicitly before clearing NuPlayerRenderer to avoid race conditions between NuPlayerRenderer and AudioSink callback thread. CRs-Fixed: 927545 Change-Id: Id6cef83bc8e4b6f581641b19b0bbd29eee3704bb
* | Merge "libmedia : audio: handle set playback rate when direct pcm used"Linux Build Service Account2015-10-251-5/+23
|\ \
| * | libmedia : audio: handle set playback rate when direct pcm usedvivek mehta2015-10-241-5/+23
| |/ | | | | | | | | | | | | | | | | - In direct PCM usecase if setplayback rate is called then invalidate the common block and send empty offload structure below to use default path. CRs-Fixed: 916660 Change-Id: I6df7c10b7115c77a19564e2f9fabc511d76a2410
* | AudioTrack: Fix the signature of AudioTrackGetTimestampPraveen Chavan2015-10-232-3/+3
|/ | | | | | | to invoke the customized method correctly. CRs-Fixed: 923592 Change-Id: I8a7da0a679bebaa70076920936081be4470da6d1
* nuplayer: Fix de-referencing NULL mSourceAmit Shekhar2015-10-211-1/+4
| | | | | | | | | | | | InstantiateDecoderAction is executed after performing reset. By the time performReset call is over, mSource is cleared and instantiateDecoderAction is executed on a NULL mSource - causing crash. At this point of time, mSource is already reset and it is not intended to be used in future, so, we can safely return. Check for NULL to avoid crash. CRs-Fixed: 902831 Change-Id: If438da2b8c778c6db3640c0bc2e53d3ef68d286c
* Merge "Opt out of clang till issues are fixed"Linux Build Service Account2015-10-152-0/+4
|\
| * Opt out of clang till issues are fixedAravind Asam2015-10-092-0/+4
| | | | | | | | | | | | Needed for moving to clang Change-Id: I984ce0d452bcd9025d743c0f081bb0d22587b106
* | Merge "libstagefright: Allow for CameraSourceTimeLapse to be extended"Linux Build Service Account2015-10-133-4/+33
|\ \
| * | libstagefright: Allow for CameraSourceTimeLapse to be extendedDeva Ramasubramanian2015-10-093-4/+33
| |/ | | | | | | | | | | | | Add in hooks to route CameraSourceTimeLapse creation to AVFactory so that we can add our customizations. Change-Id: I309a247ba6e3c5626cfba096677a6dbfeae543f3
* | Merge "NuPlayer: Teardown sequence for pcm offload"Linux Build Service Account2015-10-122-0/+49
|\ \
| * | NuPlayer: Teardown sequence for pcm offloadHaynes Mathew George2015-10-092-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On a teardown event, follow proper shutdown sequence if the decoder instance type is not passthrough. This is needed to ensure NuPlayerDecoder, MediaCodec do not enter an invalid state due to forced clear while handling a teardown event. CRs-Fixed: 916643 Change-Id: Ied5df07dc8567974ef02e3a0bb415795f31f2ed2
* | | Merge "NuPlayer: Fix for PCM offload fallback on BT"Linux Build Service Account2015-10-122-0/+18
|\ \ \ | |/ /
| * | NuPlayer: Fix for PCM offload fallback on BTPreetam Singh Ranawat2015-10-092-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Start the Decoded PCM offload playback on speaker or headset and connect BT, audio is not played on BT. -During tear down event on BT connection, instantiation of decoder is initated before actual shut down of decoder completes.So decoder is not getting instantiated again after tear down event. It is a race condition between instantiation of Decoder and shut down of decoder. -Defer the instantiation of decoder in intermediate state CRs-Fixed: 916643, 829392 Change-Id: Ic346cb7bb7b1babe21618daa8f8746c00f4b61b3
* | | Merge "nuplayer: handle error from MediaCodec in Decoder handleAnOutputBuffer"Linux Build Service Account2015-10-121-0/+5
|\ \ \
| * | | nuplayer: handle error from MediaCodec in Decoder handleAnOutputBufferShalaj Jain2015-10-091-0/+5
| | |/ | |/| | | | | | | | | | | | | | | | MediaCodec could send out message of output buffer available right before it hits an error and clears its buffers. Change-Id: I1b11c88cdcb3fca7ddd6103c6d3d28642304f079
* | | Merge "Stagefright: Transition to uninitialized state after freeing node"Linux Build Service Account2015-10-121-0/+1
|\ \ \
| * | | Stagefright: Transition to uninitialized state after freeing nodePraveen Chavan2015-10-081-0/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the component is force-released after timeout, there could be a race condition where component posted a message just before it was released. This posted message will cause ACodec to wrongly invoke OMX API on the component which was freed already. Move ACodec to uninitialized state where all component messages will be safely ignored. Change-Id: I71da7c7d021210fd6bed44761740161a5d8894e7 CRs-Fixed: 884165
* | | Merge "Revert "Revert "mediaplayer: make frame-accurate avsync configurable"""Linux Build Service Account2015-10-111-0/+18
|\ \ \
| * | | Revert "Revert "mediaplayer: make frame-accurate avsync configurable""Surajit Podder2015-10-061-0/+18
| |/ / | | | | | | | | | | | | | | | This reverts commit e17afa888040eb5fbd31249305efd88ee03bb5bc. Change-Id: I7afb6a055d3efb08fdbdff19f0bbad01934614e8
* | | Merge "libmedia: return error if getRenderPosition fails"Linux Build Service Account2015-10-101-3/+7
|\ \ \
| * | | libmedia: return error if getRenderPosition failsSatya Krishna Pindiproli2015-10-061-3/+7
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Currently, if the call getRenderPosition() fails, no error is propagated to the caller. As the handling is already present in NuPlayerRenderer, return an error if the call fails. CRs-Fixed: 912730 Change-Id: I01e3348ffd696ce781287451b9a9478b50037ade
* | | Merge "httplive: Ignore seek request for livestreaming"Linux Build Service Account2015-10-091-1/+5
|\ \ \
| * | | httplive: Ignore seek request for livestreamingSanthosh Behara2015-10-061-1/+5
| |/ / | | | | | | | | | | | | | | | | | | Check added in HTTPLiveSource to throw error if seek is called in live streaming usecase. Change-Id: I1d478ea506734bd9b6bbfba4f04649be398f3c7a
* | | Merge "NuPlayer: Use ".m3u8" in substring search to determine HLS URL"Linux Build Service Account2015-10-091-1/+1
|\ \ \
| * | | NuPlayer: Use ".m3u8" in substring search to determine HLS URLSanthosh Behara2015-10-061-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In IsHTTPLiveURL(), "m3u8" is being used in sub-string comparison to determine if the given URL is HTTPLiveURL or not. This can lead to false results incase if the given URL has "m3u8" as part of it. Hence use ".m3u8" in strstr() instead of "m3u8". Change-Id: I7f4a3c641d831b3ef77d166701f3e3edabdaebc0
* | | Merge "AudioSystem: Fix race condition in accessing ioDescriptors"Linux Build Service Account2015-10-091-4/+10
|\ \ \
| * | | AudioSystem: Fix race condition in accessing ioDescriptorsPraveen Chavan2015-10-061-4/+10
| |/ / | | | | | | | | | | | | | | | | | | | | | The vector mIoDescriptors can be simultaneouly modified and accessed by 2 threads. Acquire a lock while wrapping the ioDescriptor in a sp<> Change-Id: I73c79ef8eca092b500a7ead3a5ebd0bcf75f9920