summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/omx
Commit message (Collapse)AuthorAgeFilesLines
* IOMX: convert ANWB to Gralloc meta if using useBuffer in the same processLajos Molnar2017-02-031-3/+5
| | | | | | | | This was disabled by a previous commit. Bug: 32436178 Change-Id: I9f9c6a372a039226d61f3651be3af207fed63e60 (cherry picked from commit 4fb1e42a16e77d7abf1d84bedbc20f901af26524)
* stagefright: remove allottedSize equality check in IOMX::useBufferLajos Molnar2017-02-031-7/+0
| | | | | | | | | This was meant for buffers shared cross-process, but we are not gaining anything from this check even if it was at the correct place. Bug: 32436178 Change-Id: I6919e8ac6e35092273e171f49f6711ba577ba2e6 (cherry picked from commit 58388aa7be1c6963eb4b8464d46938ba9b0a04b0)
* Merge tag 'android-6.0.1_r74' into HEADJessica Wagantall2016-11-092-25/+179
|\ | | | | | | | | | | | | | | CYNGNOS-3303 Android 6.0.1 release 74 Change-Id: I0a14578751f4ecb8d13def26b9ffe5dcba4afd72
| * IOMX: do not clear buffer if it's allocated by componentChong Zhang2016-09-301-1/+0
| | | | | | | | | | | | | | | | | | The component might depends on their buffers to be initialized in certain ways to work. Don't clear unless we're allocating it. bug: 31586647 Change-Id: Ia0a125797e414998ef0cd8ce03672f5b1e0bbf7a (cherry picked from commit ea76573aa276f51950007217a97903c4fe64f685)
| * IOMX: allow configuration after going to loaded stateLajos Molnar2016-09-301-2/+8
| | | | | | | | | | | | | | | | | | This was disallowed recently but we still use it as MediaCodcec.stop only goes to loaded state, and does not free component. Bug: 31450460 Change-Id: I72e092e4e55c9f23b1baee3e950d76e84a5ef28d (cherry picked from commit e03b22839d78c841ce0a1a0a1ee1960932188b0b)
| * IOMX: restrict conversion of ANWB to gralloc source in emptyBufferLajos Molnar2016-09-301-2/+7
| | | | | | | | | | | | | | | | | | | | This is only allowed in-process (if backup and codec buffers are connected.) Bug: 29422020 Bug: 31412859 Change-Id: If48e3e0b6f1af99a459fdc3f6f03744bbf0dc375 (cherry picked from commit 087ff38490016f4a0b6a1e717ae8af781d9b750c)
| * IOMX: work against metadata buffer spoofingLajos Molnar2016-09-272-24/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Prohibit direct set/getParam/Settings for extensions meant for OMXNodeInstance alone. This disallows enabling metadata mode without the knowledge of OMXNodeInstance. - Do not share metadata mode buffers cross process. - Disallow setting up metadata mode/tunneling/input surface after first sendCommand. - Disallow store-meta for input cross process. - Disallow emptyBuffer for surface input (via IOMX). - Fix checking for input surface. Bug: 29422020 Change-Id: I801c77b80e703903f62e42d76fd2e76a34e4bc8e (cherry picked from commit f8a4cb410115045278f534e54b41ac78d6bf6c07)
* | Merge tag 'android-6.0.1_r66' into HEADJessica Wagantall2016-09-071-0/+7
|\ \ | |/ | | | | | | | | Android 6.0.1 release 66 Change-Id: I1d3eb6b66b7482149fe93647c278065fa46dc518
| * omx: prevent input port enable/disable for software codecsWonsik Kim2016-07-211-0/+7
| | | | | | | | | | Bug: 29421804 Change-Id: Iba1011e9af942a6dff7f659af769a51e3f5ba66f
* | Merge tag 'android-6.0.1_r61' into HEADJessica Wagantall2016-08-021-19/+54
|\ \ | |/ | | | | | | | | Android 6.0.1 Release 61 (MOB30Z) Change-Id: Ic86e42d5fb8f81fe5c4f58d2e76852829c609760
| * DO NOT MERGE omx: check buffer port before usingWonsik Kim2016-06-231-19/+54
| | | | | | | | | | Bug: 28816827 Change-Id: I3d5bad4a1ef96dec544b05bb31cc6f7109aae0a5
* | Merge tag 'android-6.0.1_r46' into HEADJessica Wagantall2016-06-072-0/+38
|\ \ | |/ | | | | | | | | Android 6.0.1 release 46 Change-Id: I4fcabf5775aebd2cb8dc0e352d1b1460d3214573
| * DO NOT MERGE Verify OMX buffer sizes prior to accessMarco Nelissen2016-04-212-0/+38
| | | | | | | | | | Bug: 27207275 Change-Id: I4412825d1ee233d993af0a67708bea54304ff62d
* | Merge tag 'android-6.0.1_r43' into HEADJessica Wagantall2016-05-031-1/+6
|\ \ | |/ | | | | | | | | | | Ticket: CYNGNOS-2373 Android 6.0.1 release 43 (MOB30J) Change-Id: Ie0ab546349bd8a7eed51c839fba28b809e433fd4
| * Add VPX output buffer size checkMarco Nelissen2016-03-251-1/+6
| | | | | | | | | | | | | | and handle dead observers more gracefully Bug: 27597103 Change-Id: Id7acb25d5ef69b197da15ec200a9e4f9e7b03518
| * Fixing safteynet logging bug introduced in ag/862848mspector@google.com2016-02-261-0/+1
| | | | | | | | | | | | We moved the safteynet logging into storeMetaDataInBuffers_l Bug: 26324358 Change-Id: I2171742b53192ebb71d546bcb8970bb3c68f366f
* | omx: softcodecs: Support HAL_PIXEL_FORMAT_RGBX_8888Diogo Ferreira2016-04-111-0/+3
| | | | | | | | | | | | | | | | | | | | Adds support for the HAL_PIXEL_FORMAT_RGBX_8888 format used by mediatek's hardware. Fixes several CTS tests where interaction between hardware and software encoders and decoders is tested. Change-Id: Ie3267c7d34706c49ad415ebc04ad05f2f2ef3506
* | Merge tag 'android-6.0.1_r24' into HEADJessica Wagantall2016-04-051-0/+1
|\ \ | | | | | | | | | | | | Ticket: CYNGNOS-2213 Android 6.0.1 release 24
| * | Fixing safteynet logging bug introduced in ag/862848mspector@google.com2016-03-011-0/+1
| |/ | | | | | | | | | | We moved the safteynet logging into storeMetaDataInBuffers_l Bug: 26324358 Change-Id: I2171742b53192ebb71d546bcb8970bb3c68f366f
* | stagefright: omx: delay observer death handlingHaynes Mathew George2015-11-301-5/+8
| | | | | | | | | | | | | | | | 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
* | Merge branch 'LA.BF64.1.2.2_rb4.7' of ↵Steve Kondik2015-11-161-4/+40
|\ \ | | | | | | | | | | | | | | | git://codeaurora.org/platform/frameworks/av into cm-13.0 Change-Id: Ia41df61c3ccfeb809572b63a4b1a8ca6bd85dfb2
| * | libstagefright: omx: Prevent assertion due to state mismatchesHaynes Mathew George2015-11-091-4/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Fix benign overflow in OMXNodeInstanceMarco Nelissen2015-11-051-1/+2
| | | | | | | | | | | | Change-Id: I7470bddb7ade97143ba70c026e3b7d61dd8d97b0
* | | Merge tag 'android-6.0.0_r26' into cm-13.0Ricardo Cerqueira2015-11-052-0/+6
|\ \ \ | | |/ | |/| | | | | | | | | | Android 6.0.0 release 26 Change-Id: I8a57007bf6efcd8b95c3cebf5e0444345bdd4cda
| * | OMX: allow only secure codec to remotely call allocateBuffer.Wei Jia2015-10-022-0/+6
| | | | | | | | | | | | | | | Bug: 24310423 Change-Id: Iebcfc58b447f925ec2134898060af2ef227266a3
* | | stagefright: Add support for loading a custom OMXPluginSteve Kondik2015-10-283-30/+50
| |/ |/| | | | | | | | | | | | | | | | | | | | | * To facilitate moving the stagefright-plugins glue out of the framework, support is added to OMXMaster to load multiple external plugins besides internal/vendor versions. * This is currently limited to one plugin, defined by the "mm.sf.omx-plugin" system property. The code will allow any number of libraries to be loaded, though. * Should also be useful for nonstandard vendor implementations too. Change-Id: I27d7e16ad56baa17754d8ea47a8c608a0d73d6f1
* | libstagefright: Copy the entire buffer from/to OMX componentDeva Ramasubramanian2015-10-061-2/+5
| | | | | | | | | | | | | | Presence of OMX extradata in buffers isn't reflected as part of nFilledLen. To avoid omitting the extradata, copy the entire buffer. Change-Id: Ib310dda3dc93693d4ab380912a9997d7ea120be1
* | audio: add support for FLAC decodingSharad Sangle2015-10-062-0/+9
| | | | | | | | | | | | added support for FLAC decoding Change-Id: Ia35b0b9218fdf2584348a2a95bf0401c5065dedc
* | libstagefright/omx: Fix CallbackDispatcher dereference in callback.Shivaprasad Hongal2015-10-061-2/+16
| | | | | | | | | | | | findDispatcher can return NULL. Check for NULL. Change-Id: I07edc427b706dfdeec6a6f90f13d00c8941e77f2
* | libstagefright/omx: Fix logic to handle dead observers.Shivaprasad Hongal2015-10-061-0/+1
|/ | | | | | | | OMXNodeInstance freeNode tries to tear down OMX component if not in OMX_StateLoaded. It handles all other states except OMX_StatePause. This change adds OMX_StatePause handling. Change-Id: I3bae2015c57b932186069756490c9bdf1f93eea4
* SimpleSoftOMXComponent: change CHECK to error notification.Wei Jia2015-07-081-1/+9
| | | | | | | | | SoftAVCDec, SoftMPEG4: fix handling of zero-byte input buffer. ACodec: do not send empty input buffer without EOS to the omx component. Bug: 22199127 Change-Id: I0bbcf5778f969ba6e30d0db31770c4289e2b64a4
* Merge "stagefright: prevent allocating stale buffers for OMX decoders" into ↵Lajos Molnar2015-07-011-3/+5
|\ | | | | | | mnc-dev
| * stagefright: prevent allocating stale buffers for OMX decodersLajos Molnar2015-07-011-3/+5
| | | | | | | | | | | | | | | | | | Also fix some issues encountered once using generationNumbers: - properly account outstanding buffers in MediaSync - don't release arbitrary frame if attach fails Bug: 11990461 Change-Id: Icee5ea188ca4eb856138feb5e6ec5d4ee5e44008
* | stagefright: fix deadlock and NPE in GraphicBufferSourceLajos Molnar2015-07-013-10/+15
| | | | | | | | | | Bug: 22202388 Change-Id: I04f2f783ecc0e0c50adf16a666f6d7ab4221e285
* | Merge "ignore buffers that's already removed" into mnc-devChong Zhang2015-06-301-4/+19
|\ \
| * | ignore buffers that's already removedChong Zhang2015-06-291-4/+19
| |/ | | | | | | | | bug: 22005018 Change-Id: I892a0fe77519d5fb996bcb4cc95e0d10e859000c
* | stagefright: ask for flex-YUV camera buffers for software encodersLajos Molnar2015-06-262-2/+23
|/ | | | | Bug: 13222807 Change-Id: I854b73a63cf9239311729598241725d84e8513aa
* stagefright: relax check of OMX buffer header - againLajos Molnar2015-06-191-8/+23
| | | | | | | | - move check to after FillBufferDone only. - add support for NULL graphicBuffer - just in case Bug: 21773260 Change-Id: Ibf03511f1d04425e29b63fe4e560e0d8ba6ea20e
* fix buffer leak due to unreleased last repeat frameChong Zhang2015-06-182-56/+56
| | | | | | bug: 21659689 bug: 21473584 Change-Id: I9e3dabd1be33352fdacd38797bc9fce91ecc7ee2
* stagefright: fix issues with OMX message passingLajos Molnar2015-06-101-1/+3
| | | | | | | | | - added destructor for MessageList so messages are freed - check if notify has been initialized - do not call onMessages if there are no messages Bug: 21659665 Change-Id: Idb4eaa63dc2f8be8b282be79e6234f83a7669481
* stagefright: fix legacy support for CameraSourceLajos Molnar2015-06-101-17/+19
| | | | | | | | | | | - allocate big enough buffers for native metadata source even in CameraSource mode - don't check range when using native metadata mode (and converting it to GrallocSource) as OMX buffer will be smaller than input - log allocated vs. OMX reported sizes in OMXNodeInstance logs Bug: 21708032 Change-Id: I7eeffc5116079e5b368f84980e8e7524260aaccf
* stagefright: add support for output frame rendered callbackLajos Molnar2015-06-091-2/+26
| | | | | | | | | | | - Added FRAME_RENDERED event in OMX, used by tunneled video decoders to signal rendered event timing - Track buffers sent for rendering in ACodec and in SoftwareRenderer, and determine when they have rendered - Propagate render times to MediaCodec Bug: 20503131 Change-Id: Idf0a8714d5368b237c2285dd39fa82db847c232f
* fix graphic buffer leak with persistent input surfaceChong Zhang2015-06-082-2/+102
| | | | | | | | | | implement PersistentProxyListener that returns buffers during period when actual listener is not connected. also clear old buffer slot in GraphicBufferSource when re-attaching. bug: 21473584 Change-Id: I3bcf1a208e745397d6cc6ce9aef9e4f5aa604f3c
* stagefright: add support for batching OMX eventsLajos Molnar2015-06-054-21/+37
| | | | | Bug: 20503131 Change-Id: I762c419ed1245f8b83fb1f6bf61e5557213ca07b
* stagefright: rename VideoGrallocMetadata.hHandle to pHandleLajos Molnar2015-06-023-5/+5
| | | | | | | | This is so that it can be equivalent to the previously named VideoDecoderOutputMetaData struct. Bug: 13222807 Change-Id: I38831e19a76f49cc7e8385c079817c538d18f0ff
* stagefright: add support for fences in OMXLajos Molnar2015-06-025-49/+134
| | | | | | | Pass Fence between Surface and ACodec, and between ACodec and IOMX. Bug: 12386081 Change-Id: Ifdc566979dec0d91ed8b07c3b69d2cf092accc73
* stagefright: rework metadata buffer supportLajos Molnar2015-06-015-129/+168
| | | | | | | | | | | | | | - Add fence to new metadata buffer mode structure, but don't use it yet, so that we don't have to add another mode soon. - Change GraphicBuffers to ANativeWindowBuffer in new metadata mode. This removes internal depencency from vendor codecs. - Extend new metadata mode from SW encoders to all codecs. - Fallback from new metadata mode to old mode (so Camera can always use the new mode even with legacy codecs) Related-bug: 19614055 Bug: 13222807 Change-Id: I405a21dd6ce8e99808f633bfeab8f14278eb7079
* stagefright: allow to overallocate OMX codec buffersLajos Molnar2015-06-013-15/+21
| | | | | | | | | Specify allottedSize for useBuffer and allocateBufferWithBackup, where OMX will see only the allottedSize, even though framework may allocate and use a bigger buffer. Bug: 13222807 Change-Id: Ibfa93f6c7b7c8ca0853ef17d4a0758e496eaf921
* IOMX: Clear buffer id for arm32Andy Hung2015-05-271-4/+2
| | | | | | | Initial counter needs to be cleared for ease of debugging. Bug: 20634516 Change-Id: I4131d759b9cc296bbecf25a53433d42b22ef228f
* IOMX: Enable buffer ptr to buffer id translation for arm32Andy Hung2015-05-261-21/+0
| | | | | Bug: 20634516 Change-Id: Iac9eac3cb251eccd9bbad5df7421a07edc21da0c