summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/include/OMXNodeInstance.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-6.0.1_r74' into HEADJessica Wagantall2016-11-091-2/+8
|\ | | | | | | | | | | | | | | CYNGNOS-3303 Android 6.0.1 release 74 Change-Id: I0a14578751f4ecb8d13def26b9ffe5dcba4afd72
| * IOMX: work against metadata buffer spoofingLajos Molnar2016-09-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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_r61' into HEADJessica Wagantall2016-08-021-1/+1
|\ \ | |/ | | | | | | | | Android 6.0.1 Release 61 (MOB30Z) Change-Id: Ic86e42d5fb8f81fe5c4f58d2e76852829c609760
| * DO NOT MERGE omx: check buffer port before usingWonsik Kim2016-06-231-1/+1
| | | | | | | | | | Bug: 28816827 Change-Id: I3d5bad4a1ef96dec544b05bb31cc6f7109aae0a5
* | stagefright: omx: delay observer death handlingHaynes Mathew George2015-11-301-1/+1
|/ | | | | | | | 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
* OMX: allow only secure codec to remotely call allocateBuffer.Wei Jia2015-10-021-0/+5
| | | | | Bug: 24310423 Change-Id: Iebcfc58b447f925ec2134898060af2ef227266a3
* stagefright: add support for batching OMX eventsLajos Molnar2015-06-051-0/+6
| | | | | Bug: 20503131 Change-Id: I762c419ed1245f8b83fb1f6bf61e5557213ca07b
* stagefright: add support for fences in OMXLajos Molnar2015-06-021-4/+13
| | | | | | | Pass Fence between Surface and ACodec, and between ACodec and IOMX. Bug: 12386081 Change-Id: Ifdc566979dec0d91ed8b07c3b69d2cf092accc73
* stagefright: rework metadata buffer supportLajos Molnar2015-06-011-9/+16
| | | | | | | | | | | | | | - 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-011-2/+2
| | | | | | | | | 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: Enable buffer ptr to buffer id translation for arm32Andy Hung2015-05-261-2/+1
| | | | | Bug: 20634516 Change-Id: Iac9eac3cb251eccd9bbad5df7421a07edc21da0c
* stagefright: rename usePersistentInputSurface to setInputSurfaceChong Zhang2015-05-131-1/+1
| | | | | | | | and clear persistent surface pointer when MediaRecorder is reset bug: 21045118 bug: 21045402 Change-Id: Ifd0d6deeb969f2252123929541b30b518cecbf9a
* Merge "Stagefright: propagate InsufficientResources error" into mnc-devRonghua Wu2015-05-051-0/+2
|\
| * Stagefright: propagate InsufficientResources errorPraveen Chavan2015-05-051-0/+2
| | | | | | | | | | | | | | | | | | Propagate OMX_ErrorInsufficientResources when handling node-allocation failure any other error from the component. bug: 20132289 Change-Id: I1ed9626dab947227e3d5e983bbbeee89ad7b2d2a
* | MediaCodec: implement persistent input surface APIsChong Zhang2015-05-011-0/+9
|/ | | | | | | Bug: 19127604 Bug: 19489395 Change-Id: Idaf1cc9008016f66903e93907a676f54e342e1a3
* stagefright: warnings be gone, some are now errors, use clangLajos Molnar2015-04-171-1/+1
| | | | Change-Id: I81f438ae444f04c12ae27ae4ef6d073033de172c
* stagefright: add runtime debug supportLajos Molnar2014-11-121-1/+17
| | | | | Bug: 18285408 Change-Id: I56346f4652b2c5f7ef5fa3003fd8676051339384
* stagefright: support passing GraphicBuffer in metadata bufferLajos Molnar2014-10-131-1/+3
| | | | | Bug: 17935149 Change-Id: I6bb5dd654e498a7153410afc052c2c8f7f35e44d
* Added Tunneled video playback support to ACodecRachad2014-08-081-0/+4
| | | | | Bug:16132368 Change-Id: I88d2d66b8548fc203f4a2c4797196af15e56ff38
* Update OMX messages for 64 bitAndy Hung2014-05-141-0/+13
| | | | | | | | | Change node_id and buffer_id to uint32_t. Ensure IOMX messages are fixed size. Remove 64 bit compile warnings in associated files. Change-Id: Icdbef00aca575e5dc502ebb52e3ce7d0d7883203 Signed-off-by: Andy Hung <hunga@google.com>
* IOMX: Add prepareForAdaptivePlayback methodLajos Molnar2013-10-031-0/+4
| | | | | | | | | | | | | prepareForAdaptivePlayback is the fallback mechanism to support seamless resolution change for devices that do not support dynamic output buffers. It is up to the codecs to handle this appropriately, but codecs that do not handle dynamic output buffers would request enough buffers up to the requested size in this method to avoid port reconfiguration on resolution changes. Change-Id: I58d4aa8ef1359ea3472735bbe9140c3132039b3d Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 10192531 Related-to-bug: 7093648
* IOMX: add updateGraphicBufferInMeta method for metadata modeLajos Molnar2013-08-061-0/+4
| | | | | | | | | This is used to set the handle in the metadata buffer that is valid in the mediaserver process, as well as to keep a reference for the graphic buffers in BufferMeta. Change-Id: I46bb68d8bed894f357eeeb25368360d11b276634 Signed-off-by: Lajos Molnar <lajos@google.com>
* Support "suspension" of a video encoder in "surface-input" mode.Andreas Huber2013-07-171-0/+6
| | | | | | i.e. feed no more input frames to the encoder while suspended. Change-Id: I51391e18c1517548e869f8ddece19f4af37e78f9
* Implement Surface input to MediaCodec.Andy McFadden2013-03-041-0/+24
| | | | | | | | | Also, renamed a CHECK_INTERFACE macro that was clashing with the Binder version. Bug 7991062 Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
* Stagefright: idle OMX after ANW errorsJamie Gennis2011-10-191-0/+2
| | | | | | | | | | | | | | 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
* Stagefright: add support for gralloc OMX_UseBuffer.Anu Sundararajan2011-06-231-1/+3
| | | | | | | | | | | | | | | XXX: This change should go along with a documentation change to HardwareAPI.h that describes the new extension. This change adds support for passing a buffer_handle_t to OMX_UseBuffer during OMXCodec initialization. This new way of passing the buffer_handle_t's replaces the old OMX_SetParameter-based approach, and this change deprecates that interface, but still supports it for OMX IL implementations that do not support the new interface. Change-Id: If9c1cb3c6c349c54dab094aeb8af13eae9f85271 Signed-off-by: Jamie Gennis <jgennis@google.com> Signed-off-by: Sarthak Aggarwal <sarthak@ti.com>
* Add an OMX IL API for querying buffer usage flags.Jamie Gennis2011-02-281-0/+3
| | | | | | | | | | This change defines an OpenMAX IL API for querying from the IL component the gralloc buffer usage flags that should be used to allocate the buffers. It also adds the Stagefright plumbing for using the new OMX IL API. Change-Id: I046b5e7be70ce61e2a921dcdc6e3aa9324d19ea6 Related-Bug: 3479027
* OMX extension to support storing meta data in video input buffers during ↵James Dong2010-10-211-0/+1
| | | | | | | | recording bug - 3042125 Change-Id: I7543809fa4ff61d48da35eec6c2bd5eaa7e8cead
* Add the new Stagefright ANativeWindow OMX codec API.Jamie Gennis2010-09-031-1/+6
| | | | | | | | | | | This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. This is try 2 for this change, after reverting the first one because it broke the build. Change-Id: I94249b72bdb5d5719360f03d7935fcca4ece5028
* Revert "Merge "Add the new Stagefright ANativeWindow OMX codec API.""Jamie Gennis2010-09-011-6/+1
| | | | | This reverts commit 8a643b411e1802977f742709113ce01b06a18e12, reversing changes made to 73ea9beaf8eb3d0027e78cbc0ac5e626c3f8deb4.
* Add the new Stagefright ANativeWindow OMX codec API.Jamie Gennis2010-09-011-1/+6
| | | | | | | | This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. Change-Id: Ibfbf893dc3513db0b3d3221bec5708c77287cddc
* Fix no-copy-overhead OMXCodec implementation to actually work.Andreas Huber2010-01-201-1/+2
|
* Squashed commit of the following:Andreas Huber2009-12-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 144b1c40e9cf08a584c50e1bef7ba3f287e81a4f Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:28:23 2009 -0800 This H264 file shows a certain problem even better. commit 3245f1f3b7471975aeeb824a756c987abd610f55 Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:20:08 2009 -0800 Using only the QA testfiles now. commit 074817eb3816c5dd70858a3594e3b92d799d873b Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 16:17:39 2009 -0800 Yay, roles are back again now that the API is in place. commit 6d847e4932cc38301ae27cb7283b7f1553a95457 Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 13:01:20 2009 -0800 Added commandline option for specifying the random seed for reproducable tests. commit 62ab37b26336eaa67e49791c41c996acb6acee3f Author: Andreas Huber <andih@google.com> Date: Mon Dec 14 10:53:27 2009 -0800 When issuing a seek it is important that only the first MediaSource::read call has the seek option. commit e77c46644b2fb6862bafa3569f7d304252074f1e Author: Andreas Huber <andih@google.com> Date: Mon Dec 7 16:39:07 2009 -0800 Make sure the tests are actually built, sp<OMXCodec> becomes sp<MediaSource> commit 6df56915bd55a9445b3c6f953d3cc251d81579b8 Author: Andreas Huber <andih@google.com> Date: Thu Dec 3 14:25:36 2009 -0800 Temporarily disable support for querying the roles of OMX components. commit 31bb26930df9e3658dea684cedb4b0f1a06a4a88 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 13:36:52 2009 -0800 Disregard EOS events, slightly change the way the EOS flag on output buffers is handled. commit 4c382fbc9aebee8197d5988d04378062809e7c48 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 09:37:24 2009 -0800 New random seek test for the codec tests. Fixed "sticky" end-of-output-buffers flag behaviour in OMXCodec. commit c762eac3e44309592b61a168d66e091cf609fa03 Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 14:13:43 2009 -0800 Fix a typo. commit 50540a59b65c7d476b0193c7494cd75895e6ca6d Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 09:48:35 2009 -0800 Some more fine tuning of the unit tests, make MPEG4Extractor less verbose. commit 1157a7e52a0636706caa235abe16d2ff8a0b8140 Author: Andreas Huber <andih@google.com> Date: Wed Oct 28 12:01:01 2009 -0700 Changes to the IOMX::listNodes API, this now returns the component's roles as well, unit tests now test all components in all supported roles by default. commit 30fbf2d8c6cb927689f7ba75eb550a81e9df488a Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 09:45:26 2009 -0700 Initial check-in of unit tests for OMX components.
* Enable proper cleanup of OMX nodes managed through stagefright.Andreas Huber2009-12-041-2/+3
|
* When freeing an OMX node, attempt to transition it from its current state ↵Andreas Huber2009-10-261-0/+10
| | | | all the way to "Loaded" in order to properly free any allocated buffers.
* Reimplement the OMX backend for stagefright.Andreas Huber2009-10-161-0/+115
Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.