summaryrefslogtreecommitdiffstats
path: root/media/libstagefright
Commit message (Collapse)AuthorAgeFilesLines
...
* | | The progress bar of next song is not properly started in offload use casesamaga Prasanna Krishna2015-11-301-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gapless data was not passed to HAL, which in turn to DRV/FW. During start of every song gapless information is passed to DSP to indicate the reset of hardware pointer. This pointer is used in getting the render position. If some files does not have gapless header, this value is not passed to DSP. This causes wrong updation of render position for the next song in the loop mode. This change will update the necessary information to DSP appropriately. Change-Id: I3dc71f6fb38e7067610813503ff60340e7dcb815 Signed-off-by: samaga Prasanna Krishna <samaga.krishna@intel.com> Signed-off-by: Mazhar <mazharx.sameullah@intel.com>
* | | audio: reset vorbis EOS status after a flushWeiyin Jiang2015-11-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vorbis decoder reports output EOS persistently once it saw input EOS, which causes subsequent playback last for short time if application replays the same session by seeking to elsewhere and starting decoding again. Reset vorbis EOS status after a flush. CRs-Fixed: 939213 Change-Id: I90b0cafe185e1c492d21af4e94e8a41eb3eae19a
* | | stagefright: omx: delay observer death handlingHaynes Mathew George2015-11-302-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | Delay observer death handling to give the component a chance to observe pending freeNode (in other words, allow component to observe mDying = true). Change-Id: I5f70e9b04a1d2decc7abd0d2a9588f2298519cbb
* | | MediaCodec: reset size to zero for EOS.Sidipotu Ashok2015-11-301-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | testflush CTS test doesnt have logic to detect EOS currently, reset the size to zero in Mediacodec, on behalf of the CTS test. CRs-Fixed: 911338 Change-Id: I31727a00e0edf5604d0409fecbd976334508e6d7
* | | stagefright: Fix tags in mpeg4 not parsed correctly.Keith Mok2015-11-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a bug introduced by commit 440b54cbef4a20caeb18bf6927bc728645f649e2 which skipped the atoms inside in mpeg4 container without correctly parsing all of it. Change-Id: I6152b0a8e0248a39f9c686e748b3ae22457579da
* | | libstagefright: Handle MPEG4 DP playbackLeena Winterrowd2015-11-306-2/+239
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the HW decoder doesn't support MPEG4 DP clips, detect DP format clips in the parser and report a new MIME: video/mpeg4-esdp. This MIME is only registered to the SW decoder which supports DP clips. Merges the following change from kitkat: libstagefright: Fix DP Parsing issue with mpeg4 SP,ASP (Change-Id: I69c719011e1a0d2a0b0ae5a9b504b7cce443866b) CRs-Fixed: 722066 Change-Id: I7bc3a7a9f4a6d37e046ed9c8008cb27fb3bc665d
* | | Fix overflow check so it doesn't reject legitimate filesMarco Nelissen2015-11-291-1/+1
| | | | | | | | | | | | Change-Id: Id2a25af287f2d06755ebdf133fcea166a6767a27
* | | Revert "adjust audio timestamp to account for AudioRecord latency"Sultanxda2015-11-271-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | Throws audio and video out of sync for video recordings. This reverts commit fa4303dcbeac79452f35c078c8008f5c2e7622b7. Change-Id: I6207cbb8d2dffec9743b734b8180406506c0d041
* | | libstagefright: Added mime-types for enca/encv atomsManikanta Kanamarlapudi2015-11-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - enca/encv are encrypted audio and video atoms for mp4a and mp4v. Hence returning aac and mpeg4 mime-types for enca and encv. CRs-Fixed: 578506 Change-Id: Ie568ea7eec73e110eef07e2b1b921afefc8c54a7
* | | stagefright: Support hardware codecs with FFMPEG extractorSteve Kondik2015-11-253-20/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Quite often we'll be using our custom extractor to handle container formats which aren't supported by any other means, but the codecs used inside the container are hardware supported. * For QC specifically we need to send a few magical incantations, so add support for this. Software codecs will be used if hardware support is unavailable. Change-Id: I917b674142fdab0b009e066e9511648c2695ec4b
* | | stagefright: Act V: I am become death, the destroyer of worldsSteve Kondik2015-11-242-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | * In which our hero unites the legions of distant worlds together as one at last to fight anew until the segfaults boil the lands and the New Version cometh. Change-Id: I869b2ab254968ed7a133827ea9e5ba6056f68a5c
* | | stagefright: Welcome to my nightmare, act IVSteve Kondik2015-11-233-22/+19
| | | | | | | | | | | | | | | | | | | | | | | | * Standardize parameter names, clean up stub calls * Attempting to make QC's blob work. We've entered our last days on earth. All is lost, all is lost. Change-Id: Idef9aad100f414e64a737e0f0a8c9c112ad4cb46
* | | stagefright: Don't break the ABI in ACodecSteve Kondik2015-11-231-4/+9
| | | | | | | | | | | | | | | | | | | | | * Qualcomm's proprietary extension is doing some seriously bad stuff. This is not going to be fun to maintain. Change-Id: I7d9d709e7a1dfb3107a4c3ae7b2f15ddaa0fab74
* | | Bug 1113271 - Fix stagefright FLACParsersotaro2015-11-231-4/+5
| | | | | | | | | | | | Change-Id: I993bbcdb276ea727c5088cff03cedb34e9a91c38
* | | stagefright: Fix HEVC in MKV for most clipsSteve Kondik2015-11-201-1/+1
| | | | | | | | | | | | | | | | | | * configurationVersion is not always correct for clips in the wild. Change-Id: I628a8bcf47f372844f05f912ed66aea6dad0aa86
* | | Revert "DataSource: Remove global variables in DataSource related to sniff"Steve Kondik2015-11-201-56/+50
| | | | | | | | | | | | | | | | | | | | | | | | * Don't change the ABI. Fun times. This reverts commit 4440ef8efc77d1bd7838885e83d41e54deb5a3b8. Change-Id: Ie9e0812f5e4ee700c29b76a413083858ec0255c9
* | | stagefright: ACodec: Don't return success when encoders fail to initDiogo Ferreira2015-11-201-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When configureCodec fails we try to fallback to another codec that supports the mimeType. However, this fallback is only done for decoders and, if encoders fail, they will always end up sending a success notification and returning true, causing mediaserver to crash. Change-Id: I32bee3167a8b43243cd708258435174f90f21a1b
* | | stagefright: ACodec: Correctly handle FLAC port formatEthan Chen2015-11-201-2/+8
| | | | | | | | | | | | | | | | | | | | | * Handle FFMPEG FLAC codecs correctly, otherwise do the default codec behavior. Change-Id: Ib8c1c5037060ff1c5ea0a5317ab190ce2e306c1e
* | | Merge branch 'LA.BF64.1.2.2_rb4.7' of ↵Steve Kondik2015-11-167-7/+76
|\ \ \ | | | | | | | | | | | | | | | | | | | | git://codeaurora.org/platform/frameworks/av into cm-13.0 Change-Id: Ia41df61c3ccfeb809572b63a4b1a8ca6bd85dfb2
| * | | libstagefright: omx: Prevent assertion due to state mismatchesHaynes Mathew George2015-11-092-4/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead handle them a bit better. Since the assertions dealt with in this patchset can only happen if the OMX IL client died while de-init'ing the component, it is impossible to deal with all possible cases gracefully. Hence take an aggressive approach by moving state of the component to OMX_StateInvalid. This looks okay as per the spec, but might not be the best approach. Change-Id: I3f23f5e3853523fe1a7fb3aaf38b46595fa91732
| * | | Merge "libstagefright: Add WFD specific flags to consumer usage flags"Linux Build Service Account2015-11-072-2/+14
| |\ \ \
| | * | | libstagefright: Add WFD specific flags to consumer usage flagsTatenda Chipeperekwa2015-11-052-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the GRALLOC_USAGE_PRIVATE_WFD flag to the consumer usage flags to allow the display framework to distinguish WFD from other virtual display connections. Change-Id: I7cdbac3716fb5c18d1691701accb8e66f388de86
| * | | | Merge "stagefright: Add null check before passing meta data buffer"Linux Build Service Account2015-11-061-1/+5
| |\ \ \ \
| | * | | | stagefright: Add null check before passing meta data bufferManoj Kumar AVM2015-11-041-1/+5
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add necessary null checks to GraphicBuffer before passing it onto Metadatabuffer. Change-Id: I5cf09da4bd316e5c1733023746aa54960a36d8c9
| * | | | audio: use QTI flac decoder based on flagSharad Sangle2015-11-041-0/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While setting up the component for flac, current design is if encoder then don't use QTI flac component otherwise use QTI flac component, so if QTI flac is not being used then this might be wrong. So enhance the design to use QTI flac component only when it is enabled, otherwise use default flac component Change-Id: I57454841611885ae7cdf75896f8297ef8132292e CRs-Fixed: 916650
| * | | Merge "nuplayer: Drop frames with DATACORRUPT flag"Linux Build Service Account2015-11-031-0/+6
| |\ \ \
| | * | | nuplayer: Drop frames with DATACORRUPT flagShalaj Jain2015-10-261-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 "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-292-9/+19
| |\ \ \ \ \
| | * | | | | stagefright: Remove additional deep-copy of encoder buffersShivaprasad Hongal2015-10-262-9/+19
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | stagefright: Fix more compilation warningsd34d2015-11-071-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix format specifiers for int64_t * Fix format specifiers for size_t Change-Id: I25a775ac3eda092e36fc231ec16698a1c4a66f8b
* | | | | stagefright: Fix compilation warningSteve Kondik2015-11-071-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix format specifiers for int64_t Change-Id: If3f05d0c8c1471ea0b3a97d90a5a774a5c168915
* | | | | SoftAVCDec: Exit gracefully when memory allocation fails in the decoderHarish Mahendrakar2015-11-071-0/+11
| | | | | | | | | | | | | | | | | | | | Change-Id: Ib6e16be3f128e4fc97f8f05b794da980341c81cc
* | | | | SoftAVCDec: Added a check for unsupported resolutionsHarish Mahendrakar2015-11-071-0/+11
| | | | | | | | | | | | | | | | | | | | Change-Id: I97203353c7d026e02c8aad0f2c820a641e453c7c
* | | | | stagefright: Squashed commit of pause/resume featuresSteve Kondik2015-11-0710-33/+315
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add 2 APIs (suspend/resume) in MediaPlayer - API:suspend() will just pause the player and release all the decoders to replace release() which will release the whole player - API:resume() will just init the decoders again, then start() will be called to restart streaming playback - Add a check in AwesomePlayer::onVideoEvent() to make sure the first seek operation will always seek to the next i-frame Change-Id: Ie4c82906a2a056378119921a656128ebdc1007c4 audio: Add pause support for hardware omx component - ADSP doesn't enter sleep state after wma playback is paused and power suspended. - No support for NT session pause in case of hardware component. NT session need to be paused to put ADSP into power collapse. - Add support of pause in stagefright to ensure device enters suspend mode. Also add intermediate states to avoid concurrency issues between read and pause. Change-Id: I41b946b8c8805e6ee303646b63513b5b16514ef6 libstagefright: Drain input buffer on resume - Buffers returned from codec in paused state are not drained. When codec is resumed these buffers are not drained until the next flush, and may cause timed out issue. - Added change to drain input buffers for sw decoders when resuming. Change-Id: Ida2ab1d5dc3a1910accdd6fb89548262a912d8e7 CRs-Fixed: 569585, 574967 libstagefright: camcorder pause-resume implementation - Add pause resume feature in camcorder app. So that user can pause recording and resume later which results in a single recorded clip. Change-Id: Id19c45ae5bb85265aa4d5304b160ebf119d9575a libstagefright: support pause/resume for timelapse recording Modify the timestamp calculation mechanism in CameraSourceTimeLapse in order to support pause/resume. Change-Id: Icb02ea798b0b807ffb7ada2d1ef5b2414b74edfb
* | | | | MatroskaExtractor: don't use new buffer unless necessaryMarco Nelissen2015-11-071-6/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the NAL size length is 4 bytes, we can store the start code in the space occupied by the NAL size length and avoid allocating a new buffer and copying the data into it. Also fix potential memory leak. Change-Id: I29dd72a0616dfae66ddd7b7f9478678e356df440
* | | | | Remove possible div by zero in WavExtractorRoger I Nilsson2015-11-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not accept 0 channels as a valid wav format. Change-Id: I8d03d68f58d023b039503732736cc3a82ea560eb
* | | | | libstagefright: add NULL check in MediaCodecSource's pullerKim Zhang2015-11-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When CameraSource/AudioSource is stopped, puller will read a NULL buffer with success, so we should add NULL check before release it. Change-Id: I8924167fc79c7880e80115aafbb9cc7c3e9e885c CRs-Fixed: 813924 (cherry picked from commit 3dfbe3ae49c44301a8d484c2c5aaf0c8e1b53203)
* | | | | libstagefright: Make it possible to skip OMX buffer reallocationMichael Gernoth2015-11-073-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some devices don't like the call to setParameter() at this point, so skip this call if enough buffers are already allocated. This check was present in KitKat but got removed when code to allocate extra- buffers was introduced. This is activated only for omap4 for now. Squashed 2nd commit: which does same for OMXCodec.cpp Change-Id: I9c1267c2a2a755bc16448a6049cb2e4aff0b65bb
* | | | | libstagefright: add missing TI color format caseZiyan2015-11-071-0/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: Iaca45e6b15d3315a39b51bbf7f0cf3a1e912fee9
* | | | | Fixed comparison so that both operands are treated as 64 bit.Dan Austin2015-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed comparison in setSampleToChunkParams so that both operands are treated as 64-bit to address build breakage. Change-Id: I4b2bc52e9fc61b7e00898928a09e134e88b179f9
* | | | | Fixed benign overflows triggered by tests CVE-2015-1538-1 andDan Austin2015-11-051-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CVE-2015-1538-2 in CTS. Bug: 25016754 Change-Id: I0ceb2c799899015be6b37d5e94fe306d0037a8d2
* | | | | Fix benign overflow in SampleIteratorChad Brubaker2015-11-051-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | Bug:24807954 Change-Id: I83fe1990408c5f1da7cf46ff2a2cafb96b3e8cdd
* | | | | Fix benign overflow in OMXNodeInstanceMarco Nelissen2015-11-051-1/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: I7470bddb7ade97143ba70c026e3b7d61dd8d97b0
* | | | | Fix benign unsigned overflow in OggExtractorChad Brubaker2015-11-051-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When computing mCurrentPageSamples it was possible to have a harmless unsigned integer overflow during the conf pages leading to false positives with fsanitize integer. To prevent the false positives clamp the result to 0. Bug: 23488745 Bug: 23110888 Change-Id: I0769cb4a915d45b00ea43f2abbefe9ee46165cc7
* | | | | Fix benign overflow in getTimeUsOfGranuleChad Brubaker2015-11-051-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Bug: 24748446 Change-Id: I1f8e3927e9a8f646a0d804161924ae0dcc5ab75d
* | | | | Fix offset adjustment when skipping off-spec meta chunkMarco Nelissen2015-11-051-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Bug: 25172843 Change-Id: Ibbfe4369176f2a367eab5a39fd742f425b017288