History log of /frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0835bc5490dafe2f299edae71ed263f24952a094 22-Mar-2018 Chong Zhang <chz@google.com> Change softvpx buffer count to 10

Some cts tests made implicity assumption that the number of buffers
is less than 16. When the decoder has 16 or more input buffers, it
could queue more input buffers without blocking before the first
output comes out, tests waiting for the output might fail.

Changing buffer count to 10, as it still allows 60fps content to
buffer >150ms.

Also added a few missing OMX param check.

Test: Youtube/Exoplayer HDR 1080p60 playback (with media service
cpu set to top-app) and observe no framedrops;
Failing CTS test in bug.

bug: 75976396
bug: 76145803
Change-Id: Ie27583e6519a3dbadc7c993022a5af830fb250a9
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
9cf12df166dff26da5e6009f7349e9a53b264363 07-Feb-2018 Chong Zhang <chz@google.com> SoftVPX related perf tuning

- Boost decoding thread priority to match ACodec's for video

- Bump up SoftVPX input/output buffer count to 16

- Set buffer count in native window when SoftwareRenderer is used

- Set native window usage to READ_NEVER | WRITE_RARELY to avoid
unnecessary cache invalidation upon lock/unlock

bug: 72841545
Change-Id: Ib7ac3f881fd0612884ecee68ffc79d6fa8f8ca37
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
2d2a2967ce29281816b9ddb9434b3c0084e4ce52 27-Oct-2017 Chong Zhang <chz@google.com> hdr: enable VP9 profile2 in SoftVPX

- enable highbitdepth in libvpx use 16bit for 10-bit YUV

- hook up metadata retrieval in SoftVPX

- send metadata to native window

- pack 10-bit YUV into RGBA_1010102 format in soft renderer

bug: 64227585

Change-Id: Id900a1a8ee5cc2e5c19eef0f46419ad9b8eb587b
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
255735a38b9d5c3755c7b819bdc8fdaf4357d860 19-Jul-2017 Pawin Vongmasa <pawin@google.com> Organize header dependencies

Header files that are exported are moved to a specific place for
exporting.

Test: make cts -j123 && cts-tradefed run cts-dev -m \
CtsMediaTestCases --compatibility:module-arg \
CtsMediaTestCases:include-annotation:\
android.platform.test.annotations.RequiresDevice
Bug: 63821829

Change-Id: Ia578e3c0dd1ff157335b3a49af896acb922586e8
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
7cfc18e680fc295d1975c8da183f0d9df4cab803 24-Jun-2016 Robert Shih <robertshih@google.com> SoftVPX: fix nFilledLen overflow

Bug: 29421675
Change-Id: I25d4cf54a5df22c2130c37e95c7c7f75063111f3
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
d42b90c5183fbd9d6a28d9baee613fddbf8131d6 21-Oct-2014 hkuang <hkuang@google.com> stagefright: support VP9 frame parallel decode in Soft VPX

VPX component now works with both serial decode mode and frame parallel
mode. But VP9 frame parallel decode is not enabled yet until libvpx
library enable it.

In frame parallel decode, libvpx decoder decodes several frames on all
cpus in parallel fashion. If not being flushed, it will only return frame
when all the cpus are busy. If getting flushed, it will return all the
frames in the decoder. Compare with current serial decode mode in which
libvpx decoder is idle between decode calls, libvpx decoder is busy
between decode calls. VP9 frame parallel decode is >30% faster than serial
decode which will makes devices play 1080P VP9 videos more easily.

Bug:17325438

Change-Id: I3c53329c6d0a9ff44f5a34d91ea06697478f08e2
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
50f939d655a5156157564cb91434f1cce424b2dd 02-Sep-2014 hkuang <hkuang@google.com> Fix the bug that same video frame has been decoded twice during port reconfig.

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
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
94705aff3c9eef58cbb72ec6fe5d2dcfd9481646 24-Jun-2013 hkuang <hkuang@google.com> Adds VP9 decoding support for stagefright.

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.
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
7f616d3cc5366a4b8af20d3d0c768e3de1df0666 05-Jun-2013 Lajos Molnar <lajos@google.com> stagefright: created SoftVideoDecoderOMXComponent

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>
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
d94e716af0e49d775f0c0c4f36dd2c136ba5f2b2 04-Jun-2013 Andreas Huber <andih@google.com> Fix our software decoders to reset (more of) their internal state

properly on a transition from idle->loaded.

Change-Id: I56ccfeef24c391e50e42b522194206e35c7ab700
related-to-bug: 9105408
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h
bbba88cb1bdc34705d1477208990a06904c022e7 11-May-2011 Andreas Huber <andih@google.com> Squashed commit of the following:

commit c80992e419ed567abef451042f09c4958534b90d
Author: Andreas Huber <andih@google.com>
Date: Wed May 11 14:00:07 2011 -0700

Support for the mp3 audio decoder as a software OMX component.

Change-Id: I66e10c4d0be4c3aecdef1c21b15a2c7359ceb807

commit a358d0e1bf2a88897887445f42ccdda0f5f2f528
Author: Andreas Huber <andih@google.com>
Date: Wed May 11 13:11:23 2011 -0700

Support for G.711 alaw and mulaw decoders as software OMX components

Change-Id: Ia5c76c02cb83a9f94ce39a27b2251e5880218f03

commit 79088b9c9a5c8b8c97ea66cb4f90a2b0f0d34553
Author: Andreas Huber <andih@google.com>
Date: Thu May 5 15:43:32 2011 -0700

Instead of using an RGB surface and conversion yuv420->rgb565

convert from OMX_COLOR_FormatYUV420Planar to HAL_PIXEL_FORMAT_YV12 instead.

Change-Id: I8c4fc3c54c963f0d4ba6377f3c4ab4e0013152e5
related-to-bug: 4394005

commit 69469d3bd84425777b11b9fc938c5e0c61af26a7
Author: Andreas Huber <andih@google.com>
Date: Tue May 10 15:46:42 2011 -0700

voip mustn't link against libstagefright.so

Change-Id: I4d0ba9a8b9dc9380b792a1bd04bcda231964862c

commit 2a9a9eeeeeb36ae3a9e680469c3016d509ff08c3
Author: Andreas Huber <andih@google.com>
Date: Tue May 10 14:37:10 2011 -0700

Remove most non-OMX software decoders by default

Change-Id: Ic56514bc1b56b8fa952e8c4a164ea7379ecb69d0

commit a4de62c37b335c318217765403a9fb282b20a216
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 16:50:02 2011 -0700

Conditionally build the old-style software decoders.

Change-Id: I5de609e1d76c92d26d6eb81d1551462258f3f15f

commit 5d8b039f9449dc3dad1e77c42c80cc0b54b0c846
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 16:13:12 2011 -0700

Support for MPEG4 and H.263 video decoders as soft OMX components.

Change-Id: I5e3a4835afab89f98e3aa128d013628f5830eafe

commit b25a1bfbeb0ff6e62e1cc694ce2599c91489c7d0
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 11:49:10 2011 -0700

Boost Soft OMX thread priority, fix timestamp handling in vorbis Soft OMX decoder.

Change-Id: I68d26d4999f06fcc451d69e5303663fab0cba9e8

commit c0574362f8dc3319ce84d981097867062a698527
Author: Andreas Huber <andih@google.com>
Date: Mon May 9 11:28:53 2011 -0700

Support for the AMR decoders (NB and WB) as Soft OMX components.

Change-Id: Ia565f59833fb52653e23f26536e7e41fc329a754

commit 3e5575a8f0e27a490cb7bde77bd9456087837f08
Author: Andreas Huber <andih@google.com>
Date: Wed May 4 13:41:25 2011 -0700

Signal an error if the aac decoder failed to initialize from codec specific data.

Change-Id: I01da7831bdf722edd7d6dc5974486daa2cf2b209
related-to-bug: 4272179

commit f94aeaa9886e772ff4823e671ed237096649f4af
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 13:07:38 2011 -0700

Software OMX nodes don't (yet?) support native_window mode.

Change-Id: I7d9ca9164ef4abf66b573ca21dba12d672f8b12d

commit eefdfabac8dc659e00daa56da69aea705c49cb67
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 12:57:16 2011 -0700

Fixing the OMX tests to refer to appropriate files from test content.

Change-Id: I5b61c3498749bfb876abbd3946a5132356e3f6ff

commit f31b7326aef14b6a1b7946520a9688f092e844d5
Author: Andreas Huber <andih@google.com>
Date: Tue May 3 11:08:38 2011 -0700

Soft OMX components are now dynamiclly loaded/unloaded, not directly linked against.

Change-Id: I1e2ecfbfab67a8869886f738eaf0c7b3c948b6d9

commit b7f0343879e4df06f0a1c9bfece24df557954e2f
Author: Andreas Huber <andih@google.com>
Date: Mon May 2 15:58:36 2011 -0700

Support for the AVC software decoder as an OMX component.

Change-Id: I13c12df435ba4afbd968a9fc659f66b91c818bc2

commit 5bb9e616d6c8e1b13d531fe996b9a9affdfb2977
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:05:37 2011 -0700

Fix Vorbis OMX decoder's component role.

Change-Id: I5e871e5e11b3f951c93590210e63fd7987c467b5

commit 089c91f2333062e196c7afd5fb0ca914878aa474
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:05:18 2011 -0700

Support vorbis_decoder OMX testing.

Change-Id: I1985be178a12ae3f8768bc72067d9236238be170

commit 56e241fa36fc37219bc536b823bdc2ab82dc1fad
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 12:01:46 2011 -0700

SoftVorbis OMX component now respects the number of valid frames per page.

Change-Id: I82a117a064d9b083fc58a54ad900a987a763ef03

commit fcd618ec520c376fdb78f4cbb44b8d9f5d213e2b
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 10:59:38 2011 -0700

Support for the vorbis audio decoder as a soft OMX component.

Change-Id: Iaeb057e58ca306d3dce205c0445b74d5aefef492

commit d1fcc3203fc8003ad79c6e96b3a1fc4261743f16
Author: Andreas Huber <andih@google.com>
Date: Fri Apr 29 10:07:50 2011 -0700

VPX decoder now properly resizes buffers after a port settings change.

Change-Id: I110749a31b6cba087891d8e5dfe420830bdbf831

commit 35c7168243cb69849d88911144a2c7fdfed5c54e
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 13:23:34 2011 -0700

Support for the VPX video decoder as a Software OMX component.

Change-Id: Ic345add2d6d768d4af631160153f2e9b97fcea71

commit 923b2534b4211fc5405377b5190bfa6f2dd27f32
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 11:34:40 2011 -0700

Table-based registration of soft omx components.

Change-Id: I7f45f0fa5b3a7950776e69c66349731f7674e937

commit 04a88f3edb2266a463da9c4481b80178be460902
Author: Andreas Huber <andih@google.com>
Date: Thu Apr 28 11:22:31 2011 -0700

Apparently OMX_GetParameter is valid in any state other than OMX_StateInvalid

OMX_SetParameter is still constrained to OMX_StateLoaded or a disabled port.

Change-Id: I1032d7cf4011982d306aa369d4158a82830d26fb

commit 9d70ca68445e7c40f5c9b2d12466e468f514de88
Author: Andreas Huber <andih@google.com>
Date: Wed Apr 27 15:03:18 2011 -0700

Use the new soft OMX aac decoder for HTTP live playback.

Change-Id: Ifbcfb732a9edb855cb46b49f6d0ac942170ee28f

commit 213fe4a10ea93cce08e8622dc3908053f29878a1
Author: Andreas Huber <andih@google.com>
Date: Tue Apr 12 16:39:45 2011 -0700

Foundation for supporting software decoders as OMX components

Change-Id: I7fdab256563b35d1d090617abaea9a26b198d816

Change-Id: I83e9236beed4af985d10333c203f065df9e09a42
/frameworks/av/media/libstagefright/codecs/on2/dec/SoftVPX.h