summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* 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-1613-23/+105
|\ | | | | | | | | | | 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-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
* | | | mediaserver: conditionally launch ListenServiceKiran Kandi2015-11-122-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conditionally instantiate ListenService from MediaService. ListenServiceruns as a singleton in its own thread that calls AudioHAL which in turn accesses Listen Driver. It is the entry point from Application processes that want so execute Listen commands and receive Voice detection events. It manages Listen application resources and global states across all Listen applications. ListenService is similar to AudioFlinger. That is why it is instantiated from MediaServer. Listenservice talks to AudioHAL to deal with concurrent usage of mic. Change-Id: I71c346bb16e0ed3a7aae9c908e03c7f1c694fe0a
* | | | 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-0720-40/+589
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Stop thread before deleting object referenceOscar Rydhé2015-11-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If setPeriodicCapture is called Visualizer will start a thread and do periodic callbacks. When native_finalize is called the reference to the class is deleted. If a callback happens after this the reference is no longer valid and when used from the callback method the vm crashes. With this patch the thread will be terminated before deleting the reference. Change-Id: I30f331437ddad05f8d52c244cdbecb1859a0abd2
* | | | 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
* | | | Play timed text even after 35.79 minutesPatrik2 Carlsson2015-11-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | int overflow when converting current position in ms to Us Change-Id: I12882e52ed1ac92644d601efae5c10ec25ae9e63
* | | | 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
* | | | Fix benign unsigned overflow in AuidoTrackSharedChad Brubaker2015-11-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | fsanitize=integer adds unsigned checks to int32_t - uint32_t, force both operands to int32_t to avoid such checks being added. Change-Id: I76fce38f9636f5322ad95fdb81abb690503f4d08
* | | | Refactor setPlaybackRate to avoid benign unsigned integer overflow.Dan Austin2015-11-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a check that results in a benign unsigned integer overflow. This has been refactored to avoid the unsigned integer overflow. Bug: 25327431 Change-Id: Ib112a7cd585c680f13e4bee3d7e9f45da7d66f1d
* | | | libstagefright : fix the bug of wrong value setting for slice-heightxrwu2015-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I2ad0fa6039fb3b31e7dbfdcf15be4703664da04d Signed-off-by: xrwu <xellos.1983@gmail.com>
* | | | Don't send OnCompletion events when loopingMarco Nelissen2015-11-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | AwesomePlayer never did, and neither should NuPlayer. Bug: 18656047 Change-Id: Ia9abe42cfe6ea643633cec859e9da770092569bb
* | | | nuplayer: don't resume if player is resetingRonghua Wu2015-11-052-1/+7
| | | | | | | | | | | | | | | | | | | | Bug: 24712426 Change-Id: I58cca0bde708a5c3b073ed77e18b62fe81d6c017
* | | | 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
* | | | Add include guard into SampleIterator.hMasaichi Toki2015-11-051-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Include guard is added to have SampleIterator.h safer. Change-Id: Ib773a529cb7ab9d55524951f8bd8ed37f58c1cad
* | | | Fix benign unsigned integer overflowsVishwath Mohan2015-11-051-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | Bug: 23110888 Change-Id: I1894a61e94a274795cab7fb23a81f3a611717c1d (cherry picked from 25f191c5cb2ec532e534be646c32806f9f85e196)
* | | | Benign integer overflow in PlaylistFetcherDan Austin2015-11-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a benign integer overflow in the loop that finds the smallest first PTS from all streams in the current parser. The loop has been refactored to eliminate the integer overflow. Bug: 25008541 Change-Id: Ie2c0f1d360023cad960e071d810dddb1b5420470