don't use AVDA for small vpx video decoding |
|||
Issue descriptionthere is little to no power advantage to using avda for < 360p video, according to measurements on n5. just use software decoding for these cases, since it will save codec instances and be more stable besides.
,
Sep 15 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cbf3eb056e5d75a33379bff11c117a9453db6715 commit cbf3eb056e5d75a33379bff11c117a9453db6715 Author: liberato <liberato@chromium.org> Date: Thu Sep 15 20:50:12 2016 Don't use AVDA for <360p VPx content. Power measurements on a nexus 5 show that there's very little difference below 360p between hardware and libvpx decoding. This CL switches to libvpx decoding for <360p, even if it could be hardware accelerated by AVDA. This saves a hardware codec instance, and avoids potential stability issues with lots of MediaCodecs in use at once. BUG= 647259 , 642948 TEST=manually checked 240p and 360p. Review-Url: https://codereview.chromium.org/2334223009 Cr-Commit-Position: refs/heads/master@{#418964} [modify] https://crrev.com/cbf3eb056e5d75a33379bff11c117a9453db6715/media/gpu/android_video_decode_accelerator.cc
,
Sep 16 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d532efaca37fc8a3c7de35e09bf2e0ecc922f199 commit d532efaca37fc8a3c7de35e09bf2e0ecc922f199 Author: liberato <liberato@chromium.org> Date: Fri Sep 16 05:56:11 2016 Always allow MediaCodec for encrypted VPx content. https://codereview.chromium.org/2334223009 caused AVDA to avoid VPx content < 360p. Unfortunately, it did not have an exception for encrypted content. This CL adds an addition "encrypted only" profile that covers all supported sizes. BUG= 647259 , 642948 Review-Url: https://codereview.chromium.org/2348653002 Cr-Commit-Position: refs/heads/master@{#419108} [modify] https://crrev.com/d532efaca37fc8a3c7de35e09bf2e0ecc922f199/media/gpu/android_video_decode_accelerator.cc
,
Sep 16 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/90534dfcf1c0016eeaa5493c608da9c2371270ca commit 90534dfcf1c0016eeaa5493c608da9c2371270ca Author: liberato <liberato@chromium.org> Date: Fri Sep 16 14:59:01 2016 [M54] Roll-up of fixes for VP8/VP9 stability on Android. This is a roll-up of: https://codereview.chromium.org/2332253004 https://codereview.chromium.org/2334223009 https://codereview.chromium.org/2348653002 ==== Don't require free PicturBuffers when draining AVDA for destroy. When draining AVDA for destroy or reset, DequeueOutput will discard any decoded frames from the codec. Previously, it would still refuse to check for available output unless a free picture buffer was available to hold it. This could prevent a flush for destroy or reset from completing. In the case of destruction, this would also prevent the codec from being released. This affected only VP8 codecs, which require a drain on some platforms. https://codereview.chromium.org/2332253004 ==== Don't use AVDA for <360p VPx content. Power measurements on a nexus 5 show that there's very little difference below 360p between hardware and libvpx decoding. This CL switches to libvpx decoding for <360p, even if it could be hardware accelerated by AVDA. This saves a hardware codec instance, and avoids potential stability issues with lots of MediaCodecs in use at once. https://codereview.chromium.org/2334223009 ==== Always allow MediaCodec for encrypted VPx content. https://codereview.chromium.org/2334223009 caused AVDA to avoid VPx content < 360p. Unfortunately, it did not have an exception for encrypted content. This CL adds an addition "encrypted only" profile that covers all supported sizes. https://codereview.chromium.org/2348653002 BUG= 647259 , 642948 TEST=manually checked 240p and 360p. NOPRESUBMIT=true NOTRY=true TBR=dalecurtis@chromium.org Review-Url: https://codereview.chromium.org/2347193002 Cr-Commit-Position: refs/branch-heads/2840@{#389} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/90534dfcf1c0016eeaa5493c608da9c2371270ca/media/gpu/android_video_decode_accelerator.cc
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/90534dfcf1c0016eeaa5493c608da9c2371270ca commit 90534dfcf1c0016eeaa5493c608da9c2371270ca Author: liberato <liberato@chromium.org> Date: Fri Sep 16 14:59:01 2016 [M54] Roll-up of fixes for VP8/VP9 stability on Android. This is a roll-up of: https://codereview.chromium.org/2332253004 https://codereview.chromium.org/2334223009 https://codereview.chromium.org/2348653002 ==== Don't require free PicturBuffers when draining AVDA for destroy. When draining AVDA for destroy or reset, DequeueOutput will discard any decoded frames from the codec. Previously, it would still refuse to check for available output unless a free picture buffer was available to hold it. This could prevent a flush for destroy or reset from completing. In the case of destruction, this would also prevent the codec from being released. This affected only VP8 codecs, which require a drain on some platforms. https://codereview.chromium.org/2332253004 ==== Don't use AVDA for <360p VPx content. Power measurements on a nexus 5 show that there's very little difference below 360p between hardware and libvpx decoding. This CL switches to libvpx decoding for <360p, even if it could be hardware accelerated by AVDA. This saves a hardware codec instance, and avoids potential stability issues with lots of MediaCodecs in use at once. https://codereview.chromium.org/2334223009 ==== Always allow MediaCodec for encrypted VPx content. https://codereview.chromium.org/2334223009 caused AVDA to avoid VPx content < 360p. Unfortunately, it did not have an exception for encrypted content. This CL adds an addition "encrypted only" profile that covers all supported sizes. https://codereview.chromium.org/2348653002 BUG= 647259 , 642948 TEST=manually checked 240p and 360p. NOPRESUBMIT=true NOTRY=true TBR=dalecurtis@chromium.org Review-Url: https://codereview.chromium.org/2347193002 Cr-Commit-Position: refs/branch-heads/2840@{#389} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/90534dfcf1c0016eeaa5493c608da9c2371270ca/media/gpu/android_video_decode_accelerator.cc
,
Nov 21 2016
|
|||
►
Sign in to add a comment |
|||
Comment 1 by liber...@chromium.org
, Sep 15 2016