summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/codecs/on2
Commit message (Collapse)AuthorAgeFilesLines
* libstagefright: set actual stride info for SW encoder input portLajos Molnar2014-10-251-0/+4
| | | | | | | | | This fixes encoding flexible YUV content using SW encoders. Also skip setting input color format if it is flexible YUV, as it has already been translated to a color format supported by the codec. Bug: 18124320 Change-Id: I423782936986f4d6cf65ea9ef89ae77a92e30140
* am 48be19a4: am 2edda09a: stagefright: fix surface input handling of ↵Lajos Molnar2014-10-143-139/+20
|\ | | | | | | | | | | | | software encoders * commit '48be19a4a17cfc1e0627039bf740fffd2fcbd9f8': stagefright: fix surface input handling of software encoders
| * stagefright: fix surface input handling of software encodersLajos Molnar2014-10-133-139/+20
| | | | | | | | | | | | | | | | | | - added SoftVideoEncoder for common color conversion and extension handling logic - fix YUV420 SemiPlanar handling that should be NV12 not NV21 Bug: 17935149 Change-Id: I9b8d05678b1862dd37bf349ea83d67bdf1bb5560
* | libstagefright: compile errorsMark Salyzyn2014-10-081-0/+1
|/ | | | Change-Id: I752d7d73f9c4939160a1ccaefc44ce1f8ffd9982
* stagefright: fix cropping handling for SoftAVC and SoftMEPEG4.Ronghua Wu2014-09-242-7/+9
| | | | | Bug: 17326758 Change-Id: I9b0c281d92cf1803e275b1768e9edab9404ea577
* stagefright: add adaptive playback support to SoftAVC decoder.Ronghua Wu2014-09-103-101/+48
| | | | | | | | Also change SoftVPX decoder to use common handlePortSettingsChanged and copyYV12FrameToOutputBuffer method. Bug: 17326758 Change-Id: I6fb2ee8fb9291f69c70493b8558af341adc1f4b2
* Fix the bug that same video frame has been decoded twice during port reconfig.hkuang2014-09-032-32/+38
| | | | | | | | | This does not hurt normal video playback. But in adaptive playback, this will lead to a little bit delay for some clips. Bug: 17202935 Change-Id: I5af0a5911e28a1597c74d79960fac25faf72c9d2
* Add adaptive playback support to VPX decoder.Ronghua Wu2014-08-282-24/+39
| | | | | Bug: 13842676 Change-Id: I9c054ea489fd3a71b3b2394f15a85b84d42edb5a
* Fix PIC relocations for non-Bsymbolic buildsArd Biesheuvel2014-08-082-0/+24
| | | | | | | | | | | | The ARM assembly contains a couple of hand-coded PC relative references to data defined in other object files. Make sure the externs are tagged as hidden so the linker knows that it can resolve the reference locally at build time. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com> Bug: 16853291 Change-Id: If7bc8e5bb6a2c63b9df33666d56e6c42f398fd47 (cherry picked from commit 97e3e847179c17eb9059fb322413b6facd3e5a03)
* libstagefright: 64-bit compile warningsMark Salyzyn2014-06-261-1/+1
| | | | Change-Id: I3d1146714fa23be3d4e696599b6f70cac1f9d28b
* Merge "Support VP8 encoder key frame interval and number of temporal layers ↵Alex Glaznev2014-04-242-12/+324
|\ | | | | | | configuration."
| * Support VP8 encoder key frame interval and number ofAlex Glaznev2014-04-242-12/+324
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | temporal layers configuration. - Change ACodec.cpp to populate VP8 extra parameters structure with key frame interval, number of temporal layers and quantization parameters. - Change software VP8 encoder to select frame temporal patterns and temporal layers bitrate distribution based on the number of layers similar to patterns used in WebRTC. - Calculate video frame duration in VP8 encoder from the timestamps. Bug: 11969958 Change-Id: Ia96054d886cd09d8c108dfe250fc5f4478eaa042
* | am e80631aa: am 839d11d1: Merge changes I0a744dc7,Id993a70dMark Salyzyn2014-04-153-153/+27
|\ \ | |/ |/| | | | | | | * commit 'e80631aa1992ca50af679cd6a018c0ffda7f9b17': media: use size_t for integer iterator to Vector::size() media: 64 bit compile issues
| * media: 64 bit compile issuesMark Salyzyn2014-04-153-153/+27
| | | | | | | | | | | | | | | | - change internal sized types to use stdint.h - printf & scanf formats - size_t or unsigned int for iterators Change-Id: Id993a70d8bf54c667c5d652b34179a2c727ed446
| * warnings be gone.Andreas Huber2014-04-114-4/+4
| | | | | | | | | | | | | | | | (cherry picked from commit 84333e0475bc911adc16417f4ca327c975cf6c36) Modified by Mark Salyzyn <salyzyn@google.com> to keep merge conflicts or errors downstream to a minimum. Change-Id: Ic3b272f9cbf3155001aabd2f79728f1bc31de613
* | A few fixes in SW VP8 encoder:Alex Glaznev2014-03-192-17/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Increase encoder output buffer size to 1 Mb to avoid buffer overrun when encoding high complexity HD frames. - Store output port format parameters. - Use same VP8 encoder settings as in WebRTC when encoder is configured to run in CBR mode. Bug: b/12924516 Bug: b/12908952 Change-Id: Ida884efd0cd1a7272998f5835abd290bfb19b2ac
* | am 9219bfc4: am 2ad7af29: Merge "Check for ARCH_ARM_HAVE_NEON flag only for ↵Narayan Kamath2014-03-071-2/+3
|\ \ | |/ | | | | | | | | | | ARM arch" * commit '9219bfc48ccfab892913e37eaa85921f7e9b2d51': Check for ARCH_ARM_HAVE_NEON flag only for ARM arch
| * Check for ARCH_ARM_HAVE_NEON flag only for ARM archAshok Bhat2014-03-031-2/+3
| | | | | | | | | | | | | | | | This patch prevents ARM neon code from being included for Arm64, where ARM is the 2nd architecture. Change-Id: I5a283991034f2650a0e7d4227aef967be276fc9c Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
* | am d4c6052d: am 096d72a3: Merge "AArch64: Correction for LP64"Narayan Kamath2014-02-271-5/+5
|\ \ | |/ | | | | | | * commit 'd4c6052dd41dd5b942295cea5568783da7670eb4': AArch64: Correction for LP64
| * AArch64: Correction for LP64Marcus Oakland2014-02-261-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the Intra16x16PlanePrediction function, a u32 (unsigned 32-bit integer) was being used for the "i" variable, and being used with a value of 7 in the loop "for (i = 0, b = 0; i < 8; i++)" to access the "above[6-i]" location where "above" is defined as "u8 *". Because "i" was unsigned there was no sign extension on use with the __LP64__ 64-bit pointer, so rather than 0xFFFFFFFF being treated as -1, it was treated as 4,292,967,295 and that resulted in a SIGSEGV at an invalid address. By changing the type of "i" to an i32 (signed 32-bit integer) the expected sign extension occurs and the value is treated as -1. This change fixes android.media.cts.DecoderTest#testCodeBasicH264 on 64-bit platforms Change-Id: I85df58b0dc1d39f89ab421d04ab5481356520f0c Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
* | fix the OS X builds until we can fix compiler warnings that apparentlyAndreas Huber2014-02-111-2/+0
| | | | | | | | | | | | trigger only on that platform... Change-Id: I9555d7e2efbe3e349e8af60528b7b9d131a257e3
* | warnings be gone.Andreas Huber2014-02-119-5/+18
|/ | | | Change-Id: Ie3bae3f037730e316d7fca12e7a3527973f752ef
* Make frameworks/av 64-bit compatibleKévin PETIT2014-02-111-1/+2
| | | | | | | | | | | | 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
* SoftVPXEncoder: Set the frame size on the output port as wellMartin Storsjo2013-11-251-0/+3
| | | | | | | This makes sure the MediaCodec output MediaFormat contains the right width and height. Change-Id: Ic97af3b5850ebaf563533c3d1cae992be3e4d074
* Change VP8 encoder bitrateJohann2013-09-272-1/+36
| | | | | | | Allow the bitrate to be updated while the encoder is running. Bug: 8422347 Change-Id: I8427fe20921b00f92b8f99fe21691709fab354b0
* Indicate sync frames returned by encoderJohann2013-09-261-0/+2
| | | | | | | | | Set the appropriate OMX flag when the encoder generates a keyframe. This is necessary for any muxer which needs to indicate which frames are seekable. Bug: 8422347 Change-Id: I744a0b3023db24d3de2210bce82f41e50d259505
* Enable support for explicitly requesting an encoded keyframe from the vp8Andreas Huber2013-07-192-2/+36
| | | | | | encoder. Change-Id: I370d5831f7d6037faf361a92521390f19f179cbe
* Experimental support for enabling the use of "surface input" modeAndreas Huber2013-07-173-21/+158
| | | | | | | | | even with the software VP8 encoder. This relies heavily on the fact that the "Nexus" devices use ARGB32 as the colorspace for the data underlying a surface provided by SurfaceFlinger (mirroring). Generally there are no such guarantees. Change-Id: I1de32f591a3bb935ca76151816b3a02665bec40b
* Adds VP9 decoding support for stagefright.hkuang2013-06-244-11/+33
| | | | | | | | | | | | | 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.
* The software avc decoder would silently drop output frames if notAndreas Huber2013-06-142-36/+31
| | | | | | | enough room was available in the output queue at the time they were available. No more. Change-Id: I5957290d40ba31bda7944271ec7f2aa0f1f7043c
* stagefright: created SoftVideoDecoderOMXComponentLajos Molnar2013-06-054-489/+24
| | | | | | | | 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>
* Fix our software decoders to reset (more of) their internal stateAndreas Huber2013-06-034-0/+11
| | | | | | | properly on a transition from idle->loaded. Change-Id: I56ccfeef24c391e50e42b522194206e35c7ab700 related-to-bug: 9105408
* stagefright: SoftVP8: Handle EOS flag on frames with content.Lajos Molnar2013-05-221-12/+16
| | | | | | | | | SoftVP8 decoder ignored frame content if EOS flag was set on input frame. Now, decode the frame first, unless it is empty. Change-Id: Id105a9eb86103a61390af3de60cae2507028e2d1 Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 9091495
* am e63f850b: am da0dc0af: Add liblogYing Wang2013-04-093-4/+3
|\ | | | | | | | | * commit 'e63f850b179a43a344d438f202ad34ec7566f955': Add liblog
| * Add liblogYing Wang2013-04-093-4/+3
| | | | | | | | | | Bug: 8580410 Change-Id: If493d87d60d71be664ad75b140c62acadb75b0d0
* | am b41c9a03: am a5761dcb: Fix a number of warnings in stagefright code.Andreas Huber2013-04-041-1/+2
|\ \ | |/ | | | | | | * commit 'b41c9a03b7a7ca4244f68fd26b2f9d41b66f038a': Fix a number of warnings in stagefright code.
| * Fix a number of warnings in stagefright code.Andreas Huber2013-04-041-1/+2
| | | | | | | | Change-Id: If3edd00d991851797aeccdfe795a4a405e3a2ea3
* | am 49a8b409: am 5952255a: Merge "Fix valgrind error in software h264 ↵Marco Nelissen2013-03-281-4/+2
|\ \ | |/ | | | | | | | | | | decoder" into jb-mr2-dev * commit '49a8b409541eb090bf31761014d3bc9bd64b77bd': Fix valgrind error in software h264 decoder
| * Fix valgrind error in software h264 decoderMarco Nelissen2013-03-271-4/+2
| | | | | | | | | | | | | | | | h264bsdNextMbAddress could read past the end of an allocation, which could conceivably result in a segfault if the allocation was at the very end of a page. Change-Id: Id7a0c5733d66e609f36feb0e15b2d67b9bbc0b4d
* | Turn off debug tags in stagefright modules.Dan Morrill2013-03-191-1/+1
|/ | | | | | | | | LOCAL_MODULE_TAGS := debug causes the module to be included in every userdebug build, regardless of whether it's specified as a dep by the device config. This CL switches them all to optional (i.e. default behavior) so that we can do (userdebug) device builds without pulling these in. Change-Id: I4b7b65afea61865dd38b3af55550fb8f10edf66d
* Adds VPX encoding support for stagefright.Kunter Gultekin2013-02-125-0/+1102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only following encoder settings are available - target bitrate - rate control (constant / variable) - frame rate - token partitioning - error resilience - reconstruction & loop filters Only following color formats are recognized - YUV420Planar - YUV420SemiPlanar - AndroidOpaque Following settings are not configurable by the client - encoding deadline is realtime - the algorithm interface for encoder is vp8 - fractional bits of frame rate is discarded - timebase is fixed to 1/1000000 Requires libvpx to be built with encoder support enabled. Requires openmax 1.1.2 extension headers. Relevant tests exist in cts repo. Change-Id: I650f1aca83e7dc93f79d7e6cba7ac24f26e66d40 Signed-off-by: Kunter Gultekin <kuntergultekin@google.com>
* Revert "Adds VPX encoding support for stagefright."James Dong2013-02-085-1102/+0
| | | | | | | This lib was not part of the build, but it is built anyway for userdebug image (not for eng though). let me revert it for now... This reverts commit 6c6bb9873f55853fe74d8f45ad3ae116636d8be7.
* Adds VPX encoding support for stagefright.Kunter Gultekin2013-02-075-0/+1102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only following encoder settings are available - target bitrate - rate control (constant / variable) - frame rate - token partitioning - error resilience - reconstruction & loop filters Only following color formats are recognized - YUV420Planar - YUV420SemiPlanar - AndroidOpaque Following settings are not configurable by the client - encoding deadline is realtime - the algorithm interface for encoder is vp8 - fractional bits of frame rate is discarded - timebase is fixed to 1/1000000 Requires libvpx to be built with encoder support enabled. Requires openmax 1.1.2 extension headers. Relevant tests exist in cts repo. Change-Id: If759edb8db36acbd24dcb53d159a54e942766020 Signed-off-by: Kunter Gultekin <kuntergultekin@google.com>
* Ensure proper EOS behaviorMarco Nelissen2012-12-201-7/+3
| | | | | | | If a buffer is tagged with EOS but has data in it, decode that data instead of ignoring it. Change-Id: Ie41c8485c3ad7fe7d9c64f0752c2e7601d91d602
* Merge "Match new paths and organization in external/libvpx"Ying Wang2012-12-121-4/+3
|\
| * Match new paths and organization in external/libvpxJohann2012-10-291-4/+3
| | | | | | | | | | | | See I739f99d48b8d7e6354c416ef2ca79c954826307f Change-Id: I42b51e2845a696a6e211dde00951afc8f571336f
* | The length information of the chunks making up vorbis codec specific infoAndreas Huber2012-11-151-1/+1
|/ | | | | | | are "Xiph-style-lacing encoded" instead of individual bytes. Change-Id: Ic1274a5bd8f082197bae6831da04002762a920c5 related-to-bug: 7401329
* hardening: eliminate text relocations from h264Ard Biesheuvel2012-08-138-54/+94
| | | | Change-Id: I8bdf9746f28f2f7bed6c1109c0f4badbab765a7c
* Add NOTICE and MODULE_LICENSE_APACHE2 for libstagefright_soft_h264dec and ↵James Dong2012-06-124-0/+380
| | | | | | | libstagefright_soft_vpxdec Change-Id: Id4f1ef8dfc21731846a9862b8d12940a92fe99bb related-to-bug: 6647465
* 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