summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/omx
Commit message (Collapse)AuthorAgeFilesLines
* resolved conflicts for merge of 566be7c3 to masterNarayan Kamath2014-02-112-4/+5
|\ | | | | | | Change-Id: I7b1cc71057b2bd4f771e7bcf508a8c3abd6017ce
| * Make frameworks/av 64-bit compatibleKévin PETIT2014-02-112-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | Contains the necessary changes to make frameworks/av build and work on a 64-bit machine. Signed-off-by: Craig Barber <craig.barber@arm.com> Signed-off-by: Kévin PETIT <kevin.petit@arm.com> Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> Change-Id: I725feaae50ed8eee25ca2c947cf15aee1f395c43
* | Change StagefrightRecorder to use MediaCodecChong Zhang2014-02-053-4/+39
| | | | | | | | | | Bug: 12305192 Change-Id: I72d7cb571be5bd348b58ad650f3269d24c15d350
* | Merge "FINAL ATTEMPT: HTTP services are now provided from JAVA and made ↵Andreas Huber2014-02-051-1/+3
|\ \ | | | | | | | | | available to media code"
| * | FINAL ATTEMPT: HTTP services are now provided from JAVA and made available ↵Andreas Huber2014-02-041-1/+3
| | | | | | | | | | | | | | | | | | to media code Change-Id: I9f74a86e70422187c9cf0ca1318a29019700192d
* | | Cap pts gap between adjacent frames to specified valueChong Zhang2014-01-303-5/+146
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | - In the scenario of cast mirroring, encoding could be suspended for prolonged periods. Limiting the pts gap to workaround the problem where encoder's rate control logic produces huge frames after a long period of suspension. - Repeat last frame a couple more times to get better quality on static scenes. - Fix the timestamp on repeat frames (it was not set) Bug: 11971963 Change-Id: I1d68ab3d269874bf3921aa429a985c5f63e428c7
* | save mGraphicBuffer pointer even when we're suspendedChong Zhang2014-01-281-0/+6
|/ | | | | Bug: 12609966 Change-Id: Ifd41fd973876da69039113fcaeacdccf39472b37
* Back to the old way of making sure that no more buffers are submittedAndreas Huber2013-11-081-2/+4
| | | | | | | to the component while in executing->idle state. Change-Id: Ia207f0a112025ed0e2c4d62f404afbbfa694cbab related-to-bug: 11557463, 11573543
* Merge "Properly handle executing->idle in GraphicBufferSource" into klp-devAndreas Huber2013-11-083-7/+29
|\
| * Properly handle executing->idle in GraphicBufferSourceAndreas Huber2013-11-073-7/+29
| | | | | | | | | | | | | | | | | | | | ACodec has initiated the transition from exectuing->idle and is waiting for the component to return all buffers so they can be freed. It's counter productive and with some vendors harmful to submit additional buffers to the component from this point on. Change-Id: I332be254a1faf94902c77b5792a373ab447e44d3 related-to-bug: 11573543
* | Replace assert with error messageAndy McFadden2013-11-071-1/+6
|/ | | | | | | | | | | | | The failure happens when vendor code sends EMPTY_BUFFER_DONE twice on the same buffer. The second time through, we see a slot that has already been emptied, and get very confused. This should be handled with an error, not an assertion, so we now log a stern complaint and carry on. Bug 11557463 Change-Id: I76e53ff08924bca81afb6980df8e59a6012ff8fe
* Check for NULL buffer in repeat-latestAndy McFadden2013-10-231-0/+17
| | | | | | | | | Repeating the most-recent buffer appears to fail when the producer disconnects. This adds a NULL check to avoid crashing. Bug 10607920 Change-Id: Ied036004425f046fcf9c26303823681f3fddb99e
* IOMX: Add prepareForAdaptivePlayback methodLajos Molnar2013-10-032-0/+41
| | | | | | | | | | | | | 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
* Optionally repeat the previously submitted frame to the encoderAndreas Huber2013-08-133-8/+218
| | | | | | | if no new frame has been delivered by surface flinger within the timeout interval. Change-Id: I282f1b726dfe5646b178d7858d6f5d4f5a264fde
* Merge "IOMX: add updateGraphicBufferInMeta method for metadata mode"Lajos Molnar2013-08-062-0/+27
|\
| * IOMX: add updateGraphicBufferInMeta method for metadata modeLajos Molnar2013-08-062-0/+27
| | | | | | | | | | | | | | | | | | 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>
* | fix fallout from binderizing BufferQueues consumer sideMathias Agopian2013-08-011-5/+2
|/ | | | Change-Id: I626bac6df4fc3d8478046193f06ecc7ea60dd3a8
* Update error messageAndy McFadden2013-07-241-1/+2
| | | | | | | | The color format used for surfaces has two different names. The one in the error message is the "native" name, which doesn't mean anything to external developers. Change-Id: Ic0561f4ad12970b0e0a60bd17b4e3997af1a9f0e
* Don't abort on unusual state transitionAndy McFadden2013-07-231-3/+5
| | | | | | | | | The state transition check was too strict, and we were crashing mediaserver inappropriately. Bug 9819944 Change-Id: I1482ed1cfee37088d4893ee81cf1b2b950d2e930
* Merge "update to new Consumer APIs"Mathias Agopian2013-07-201-5/+4
|\
| * update to new Consumer APIsMathias Agopian2013-07-161-5/+4
| | | | | | | | Change-Id: I3c5d4be2a2e8783fbf98b3e268fd02658f71dc7d
* | Support "suspension" of a video encoder in "surface-input" mode.Andreas Huber2013-07-174-14/+106
|/ | | | | | i.e. feed no more input frames to the encoder while suspended. Change-Id: I51391e18c1517548e869f8ddece19f4af37e78f9
* Pass additional arg to acquireBuffer calls.Andy McFadden2013-07-081-2/+2
| | | | | | Bug 7900302 Change-Id: I30b9cca783e0a48f77035b745b7d5e20edf10f27
* Adds VP9 decoding support for stagefright.hkuang2013-06-242-3/+5
| | | | | | | | | | | | | Also change the VP8 encoder role name from video_encoder.vpx to video_encoder.vp8 for future VP9 encoder support. Requires the change in frameworks/native and media_codecs.xml corresponding to the device. VP9 decoding test will be added to cts repo later.
* stagefright: created SoftVideoDecoderOMXComponentLajos Molnar2013-06-052-0/+291
| | | | | | | | Created common base class for all software video decoders to make adding new features easier. Change-Id: Id89964e572d5cc5add02662273e6ae96c6b7eb12 Signed-off-by: Lajos Molnar <lajos@google.com>
* stagefright: BufferProducer updatesLajos Molnar2013-05-232-29/+28
| | | | | | | | | | | | Update BufferQueue and ConsumerBase users to new BufferQueue API, to allow BufferQueue slots to be reused. Buffer consumers generally now need to track the unique frameNumber belonging to each frame acquired if they are using BufferQueue directly. Otherwise, they can simply track the graphicBuffer. Change-Id: I30ee3158cf40fb10bbd085241646d5f1128ee480 Signed-off-by: Lajos Molnar <lajos@google.com> Related-to-bug: 7093648
* Avoid a deadlock during EmptyBufferDoneAndreas Huber2013-05-201-11/+17
| | | | | | | | The deadlock happens withen in the case where we use an OMX encoder with a GraphicBufferSource. Bug: 8329090 Change-Id: Icec58bb85ff3839ad1a2e3eca02fa9d6d133ca45
* Merge "update to Fence::waitForever() API change" into jb-mr2-devMathias Agopian2013-05-171-2/+1
|\
| * update to Fence::waitForever() API changeMathias Agopian2013-05-161-2/+1
| | | | | | | | | | Bug: 8988871 Change-Id: I24a2620d356f3bb6207ed834c79fd3e48b429695
* | Adjust timestamp scaleAndy McFadden2013-05-162-4/+4
|/ | | | | | | | | BufferQueue item timestamps are in nanoseconds, MediaCodec buffer timestamps are in microseconds. Adjust. Bug 8988357 Change-Id: Ib12824d7eea0316a14543c756e3a127c0866db6b
* OMXNodeInstance: actually fix OMX_GetExtIndex loggingJamie Gennis2013-04-181-4/+5
| | | | | Bug: 8538872 Change-Id: I228746e8eb502af4bba4054caa4d8569fab35025
* Merge "OMXNodeInstance: fix OMX_GetExtensionIndex logging" into jb-mr2-devJamie Gennis2013-04-121-17/+15
|\
| * OMXNodeInstance: fix OMX_GetExtensionIndex loggingJamie Gennis2013-04-091-17/+15
| | | | | | | | | | | | | | | | This change fixes the logging of OMX_GetExtensionIndex errors. Under certain circumstances these errors are not harmful and should not be logged. Bug: 8538872 Change-Id: I19a13d29ca6263454a9a7a8be205e10363725f31
* | Add liblogYing Wang2013-04-092-1/+2
|/ | | | | Bug: 8580410 Change-Id: If493d87d60d71be664ad75b140c62acadb75b0d0
* GraphicBufferSource fixesAndy McFadden2013-03-123-56/+81
| | | | | | | | | | | | | | Various fixes: - Set the maximum number of BQ buffers we're allowed to acquire equal to the actual number of codec buffers. That way we keep the codec as full as possible, and never try to acquire more than we're allowed from the BufferQueue. - Actually use "end of stream sent" flag. - Name the BufferQueue (for debug messages). Bug 8359403 Change-Id: I3b8c1f679bbebf6a89e623e13ca029eda7f657ba
* Correct MediaCodec + Surface behaviorAndy McFadden2013-03-053-20/+31
| | | | | | | | | | | | | | | | | Assorted tweaks: - Allow signalEndOfInputStream() before ACodec is in Executing state (added message to two more states). - Return an error if signalEndOfInputStream() is called a second time on the same stream. - Require AndroidOpaque color format in createInputSurface(). - Disallow dequeueInputBuffer() after an input surface has been created (boolean flag in MediaCodec tracks it). - Discard input surface when encoder is re-configure()ed (drop OMXNodeInstance's ref when we go back to Loaded). Bug 7991062 Change-Id: Iff30f3036e14eb5a2f6536910dcf11aba33031ee
* Implement Surface input to MediaCodec.Andy McFadden2013-03-045-0/+769
| | | | | | | | | Also, renamed a CHECK_INTERFACE macro that was clashing with the Binder version. Bug 7991062 Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
* Add OMX.google.vpx.encoderJames Dong2013-02-121-0/+1
| | | | Change-Id: I843e6e542533884a94e105e1cb56f16f0440af61
* Make codecs reconfigurableMarco Nelissen2012-12-181-0/+8
| | | | Change-Id: I3dd46cb4401493becbf6152f4dcd5a8f1e9a0b44
* Add GSM 6.10 decoderMarco Nelissen2012-11-161-0/+1
| | | | | | | | Supports Microsoft frame packing only, since that's what the sample file used. b/6620569 Change-Id: Ia89d95bcbf0f8dcbaad42148a7401728f60e079d
* ALooper::GetNowUs() now relies on systemTime instead of gettimeofday.Andreas Huber2012-10-011-9/+3
| | | | | Change-Id: Ia31eb0940b02581327a8bf51af6df135f9ab6de3 related-to-bug: 7266324
* Only emit padding at the end of the stream in the aac and mp3 decodersAndreas Huber2012-08-071-3/+14
| | | | | | if we actually discarded content at the beginning of the stream. Change-Id: I1e79835bb3a02350060a137b94f85f2c90f4a12b
* Synchronize access to OMX class member variablesHaynes Mathew George2012-07-201-7/+10
| | | | | | - Protect access to mLiveNodes KeyedVector member variable in freeNode function Change-Id: Ic86844aabc2bc897ffb7fc91cd1f54254f5e29fe
* Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/James Dong2012-06-134-0/+380
| | | | | Change-Id: I0a3af3e2abdedebd5934f3d941d01c32cfc75e26 related-to-bug: 6647465
* OMX IL wrapper for FLAC encoderJean-Michel Trivi2012-05-091-0/+1
| | | | | | | | | | Add wrapper around libFLAC for FLAC encoding in OpenMAX IL. Declare FLAC encoder in OMX component roles. Bug 5525503 Change-Id: I19bbce41c216870669d09365693f4ea89f8bc0f7
* Fix assertion triggered when mediaserver dies at roughly the sameAndreas Huber2012-05-011-1/+5
| | | | | | | time that a client attempts to explicitly free an OMX node. Change-Id: I767e6af402801357da20b328611cc7cddeed0260 related-to-bug: 6012750
* Software MPEG4/H263 video encoder is now OMX-basedJames Dong2012-04-251-0/+2
| | | | | | o related-to-bug: 6401068 Change-Id: If8eccea060f38e42ad31eb6e91aaa832e67c5559
* Software AVC encoder is now OMX-basedJames Dong2012-04-241-0/+1
| | | | | | o related-to-bug: 6383440 Change-Id: I0b1ae50a704b0979857ea447585eabe86602149a
* Implementation of a raw audio "decoder".Andreas Huber2012-03-291-0/+1
| | | | Change-Id: Ie89f01e59dd8106883937188afbb407550f0ac92
* AV Android make files changesJames Dong2012-03-282-2/+2
| | | | | | | o plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc o remove some runtime dependencies to libandroid, libandroid_runtime, etc Change-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10