Age | Commit message (Collapse) | Author |
|
Define LIBVPX_{ELF,MACHO} to simplify blocks.
Create new globalsym macro and include logic for PRIVATE.
BUG=webm:1679
Change-Id: I303ba1492a2813f685de51155ccef7e4831e1881
|
|
|
|
Condition on current_video_frame count, as the
avg_frame_qindex needs some time to settle.
Fixes psnr test failures.
Change-Id: I462c45250becb55b72b6ffe2b7087094d6d58a01
|
|
|
|
For speed >= 8: disable nonrd_keyframe SVC with
spatial_layers > 1. In this case having base
spatial layer key frame with higher quality
(hybrid mode search) is beneficial, without too
much cpu cost (since its on lowest spatial layer).
Change-Id: Iff7c43aed4e808603d8abdedb6eb5d2c9c8ecb8d
|
|
Only affects variance partition at low-resoln,
speed 6,7 real-time mode. At very high Q better to
save bits from the split to 8x8.
bdrate gain ~3% on rtc_derf at very low bitrates
Change-Id: I94ee58e67d5ba6277cbab8f8dd9ea45b035c82b5
|
|
|
|
Add vp9 RTC rate control without creating encoder,
to allow external codecs to use vp9 rate control.
A new library (libvp9rc.a) will be built. Applications using this
interface must be linked with the library.
BUG=1060775
Change-Id: Ib3e597256725a37d2d104e1e1a1733c469991b03
|
|
:private_extern only applies to macho. Match x86inc.asm logic:
%if FORMAT_ELF
global %2:function hidden
%elif FORMAT_MACHO
global %2:private_extern
%else
global %2
%endif
May fix a build issue on windows:
vp8/encoder/x86/block_error_sse2.asm:18: error:
COFF format does not support any special symbol types
BUG=webm:1679
Change-Id: I7e1f4043b064a04752d1cedd030cbe7f5461fe40
|
|
* changes:
x86inc.asm: update to 3e5aed95c
x86inc.asm: namespace ARCH_* defines
x86inc.asm: only set visibility for chromium builds
x86inc.asm: do not align .text for aout
x86inc.asm: use .text on march32
x86inc.asm: copy PIC macros from x86_abi_support.asm
x86inc.asm: set PREFIX from libvpx defines
x86inc.asm: pull settings from libvpx
x86inc.asm: update to 3e5aed95
|
|
Change-Id: Idae90838012c78605f20f1d7a3125b71683f6f44
|
|
All decoder functions should return the VPX_CODEC_INCAPABLE error code
if the algorithm does not have the requested capability.
Move the definitions of VPX_CODEC_CAP_FRAME_THREADING and
VPX_CODEC_CAP_EXTERNAL_FRAME_BUFFER to the VPX_CODEC_CAP_* section.
Change "PUT_SLICE and PUT_FRAME events are posted" to "put_slice and
put_frame callbacks are invoked".
Also fix some other minor comment errors.
This carries back to libvpx the following libaom CL:
https://aomedia-review.googlesource.com/c/aom/+/108405
Change-Id: If67a271c9abbb3eebc2359719cc7d9f235b690d2
|
|
BUG=webm:1679
Change-Id: I24997420b7b43cac3c674300c667eb493794893e
|
|
Reapply fad865c54 to prevent redefinition warnings.
BUG=webm:1679
Change-Id: Ie4ca7435b1f84711d0231e7957129580b05b3918
|
|
Reapply and update a4b47b89f. This restores the previous version's
behavior avoiding issues with builds that may split sources on
directory boundaries; protected visibility may work in this case.
BUG=webm:1679
Change-Id: I36011727485847dd11f06782bc6beddedc39019c
|
|
Reapply a97c83f7a. Only use .text sections for aout and do not specify
an alignment.
BUG=webm:1679
Change-Id: Ibb01b09c205f9e0ecd4bfa0241e3d5e01ae5a55e
|
|
Reapply 9679be4bc. The read only sections are getting stripped on some
OS X builds. As a result, random data is used in place of the intended
tables.
BUG=webm:1679
Change-Id: Ifb17acbed73df4b9949a8badae2d9305a3073b83
|
|
Reapply 7e065cd57. x86inc.asm always defines PIC for x86_64. We undefine
it for x32.
Incorporate e56f96394 as well to ensure GET_GOT_DEFINED is defined.
BUG=webm:1679
Change-Id: I1535d57bcb4223327ca63b4fd11bffcda1009332
|
|
Reapply 4de9641f1
BUG=webm:1679
Change-Id: I70b2224121f8f997fcd04c38a07a8126c2855ec6
|
|
Reapply 1be46ef6b. Include vpx_config.asm and prefix functions with vpx.
BUG=webm:1679
Change-Id: I5fba3154203822a829bc88ad0e302adf2ce3bbee
|
|
Pull a clean copy in and name it _new. Will apply the libvpx
patches and then move it over.
BUG=webm:1679
Change-Id: I48d3d4ab7911340c0997dd79a0dbadccf5697682
|
|
Chromium needs :function hidden and the space between the symbol and the
colon removed, at least for nasm. This matches x86inc.asm.
BUG=webm:1679
Change-Id: Ie47bb75d44d3130791639cbf4e2ebe019e2d686e
|
|
|
|
|
|
Move some code for 1 pass, that is not
directly related to rate control, out of
the postencode.
This avoids the need of extra flag for the
RC interface in:
https://chromium-review.googlesource.com/c/webm/libvpx/+/2118915
Change-Id: I3992ea8255196a762c1174c35dd7dcc9b01d317e
|
|
Change-Id: I3912c79d0f0f7a65fc753ae29bb10cdcac76878a
|
|
BUG=webm:1679
Change-Id: I75b1f860d111febf0aabe38b89d845ef296728a4
|
|
Increase resize limit to avoid resized frame
from going below 320x180.
Change-Id: If736ac3fac4731b47844e4d8c771ecf5c66550de
|
|
For RTC dynamic resize: don't allow resize for
resoln <= 320x180.
Change-Id: I9109e9e1338e5420e72436a57d266ae46e9f2d60
|
|
Change-Id: Ic667c77ff58672212fc2e9dd5066c650b0152226
|
|
|
|
in calculations involving bitrate in encode_frame_to_data_rate() and
vp8_compute_frame_size_bounds()
note this isn't exhaustive, it's just the result of a vpxenc run with:
-w 800 -h 480 --cpu-used=8 --rt --target-bitrate=1400000000
Bug: b/151945689
Change-Id: I3a4f878046fcf80e87482761588c977c283ae917
|
|
in calculations involving bitrate in vp9_rc_postencode_update() and
calc_pframe_target_size_one_pass_vbr()
note this isn't exhaustive, it's just the result of a vpxenc run with:
-w 800 -h 480 --cpu-used=8 --rt --target-bitrate=1400000000
Bug: b/151945689
Change-Id: I941a77340fd44b09fc965dd182d7aeab9f1f3da0
|
|
Because energy scaling is non-decreasing, we can work on the variance
and scale after the loop. This avoids costly computations (in
particular, log()) within the loop.
We've measured that we spend 0.8% of our total time computing the log.
Change-Id: I302fc0ecd9fd8cf96ee9f31b8673e82de1b2b3e2
|
|
* changes:
Correct time_base of ivf header in SimpleEncode
Add detail comments on valid_list in SimpleEncode
Add missing Copyright to python files
Move member functions up in simple_encode.h
|
|
Change-Id: I8a14fcad3e7b4c4689f4e7387414e59ba9c4c20a
|
|
Change-Id: Iad7ca261a99c7b5f082cf3cc6504f4af438bf409
|
|
BUG=webm:1655,webm:1654
Change-Id: I2063c59218e082f40958dddbdcb1c105d5440199
|
|
quiets -Wunreachable-code-loop-increment, present since:
e57f388bc vpx_codec_enc_config_default: disable 'usage'
as g_usage was never supported for vp8/9 this was always a single
iteration. if additional usages are added in the future similar to av1
this can be restored.
Bug: b/150166387
Change-Id: Ic6f0985829e87694de8b5e0340cffa6c451ed1c2
|
|
Change-Id: I9c5c74ab52361bcd73aef110729c6e332066c2af
|
|
Change-Id: I929fec66d541705fe94365b56a5bdd8cf5ee7c37
|
|
* changes:
Add unit test for ref_frame_info
Add key frame group info to SimpleEncode
Add ref_frame_info to encode_frame_result
Add init/update_frame_indexes()
Add GetVectorData()
|
|
Add count on expected number of resizes,
and use the speed_setting_ for base layer.
Also allow AQ_MODE=3 for the tests with
dynamic layer disabling/enabling.
Change-Id: I03fb0789a2210ba00b8b153941bf79fb774d51bf
|
|
Make internal dynamic resize work for SVC mode
when single layer SVC is running (i.e, other layers
are dropped due to 0 bitrate).
Added unittest.
Change-Id: Icf03e1f276d9c4ba2734c87c927f7881c6b0a116
|
|
Fix several bugs to make the test pass.
1) Move update_frame_indexes() out of show_frame check.
2) Init coding_indexes[i] to -1 when key frame appears
3) Fix a bug in PostUpdateRefFrameInfo()
Change-Id: Ie7c70a1d460e5b89475a1aef77416fc9a88387e1
|
|
Change-Id: I2c5abbe23c84c6d794e06ed6429136b10fb18683
|
|
Change-Id: If41a1ea6ce0a2b8db3811f2fa8efcf16f97fa0bd
|
|
We will init and update current_video_frame and
current_frame_coding_index in the functions.
So it's easier to keep track of when the frame indexes are updated.
Change-Id: Id6ba46643f8923348bb4f81c5dd9ace553244057
|
|
It's necessary to get data pointer from a vector sometimes.
This function will guarantee that the data pointer is nullptr
if the vector is empty.
Change-Id: I156308bcb193fe404452d3cd3b24b3f80c3c3727
|
|
RefFrameInfo contains the coding_indexes and valid_list of
three reference frame types.
Note that I will add unit test in the follow-up CLs.
Change-Id: Ia055df1f8a5537b2bdd02c78991df9bbf48e951a
|