Age | Commit message (Collapse) | Author |
|
Change-Id: I667be78eb7c41154bf44c242992f622f12c31b80
|
|
In test/external_frame_buffer_test.cc, rename CheckXImageFrameBuffer()
to CheckXImageFrameBuffer().
Change-Id: Ifea3910445673be465d7536a69f85f1a2e2bce6e
|
|
|
|
platforms supported by the library all offer stdint.h
BUG=webm:1573
Change-Id: I2ad95dfbcfc2d1890c1b7e503340fda8a9849635
|
|
|
|
Change-Id: I792c178736a9fc02a84aa83f351e12b7227259b0
|
|
|
|
|
|
visual studio 2015 is the current minimum
BUG=webm:1573
Change-Id: I22139925c0a322b1da214c38d8f74fadbc34d2de
|
|
BUG=webm:1573
Change-Id: I5cbb29c89955aa1548ea2a2b3da5763bd38dd978
|
|
BUG=webm:1573
Change-Id: I46faa216a4a8278a363a8111237342f73e8467eb
|
|
most predate 1.4.0 the DBG enums were deprecated in 1.6.1. VPX_KF_FIXED
is left as it's still fairly widely used
BUG=webm:1573
Change-Id: Iacaad28a6fe7251f042a2b45507b00fc5b7a0eac
|
|
Remove the unused *_DEBUG_* enum values in vpx/vp8.h
This fixes issue with enabling MFQE, which was
caused in 4807f15, where the unused DEBUG flags
were removed from common/ppflags.h but not in vp8.h.
BUG=913246
Change-Id: I47f114ef20adc084cb4883add5ac3ebf58ae9f1d
|
|
|
|
Encode the next frame at max q.
For layers: post_encode_drop is only check on base
spatial layer, and if base is post-encoded-dropped,
then whole superframe is dropped.
Added API to guard postencode dropping. Turned off by default.
Added unittest.
BUG=b/112990050
Change-Id: I42fee279014aca616f7a4d9b582cb2bf5da2f2e7
|
|
|
|
Found with clang-tidy. This value is unused in libvpx.
There is an existing test which ensures this is not used:
test/encode_api_test.cc:
EXPECT_EQ(VPX_CODEC_INVALID_PARAM,
vpx_codec_enc_config_default(kCodecs[i], &cfg, 1));
Change-Id: I94bd0663c6652b4267204c02c3921972c854d0b0
|
|
This function specifically only aligns the stride and not the base buffer
like vpx_img_alloc does.
BUG=webm:1444
Change-Id: I3092827eeec3c9e16306a3973534d3a362a337e8
|
|
Take the original loopfilter multi-thread optimization
(dafe064289a917977439ab6f4f002b9946496084) along with the fixes for bugs
1558 and 1562.
BUG=webm:1558
BUG=webm:1562
Change-Id: Ibbf6bd13f4ffff0e79184ccfd6b85a49e067a6d8
|
|
use the recommended format [1] of:
<PROJECT>_<PATH>_<FILE>_H_
[1] https://google.github.io/styleguide/cppguide.html#The__define_Guard
"All header files should have #define guards to prevent multiple
inclusion. The format of the symbol name should be
<PROJECT>_<PATH>_<FILE>_H_."
Change-Id: I2e8ab0b32fb23c30fa43cff5fec12d043c0d2037
|
|
Add duration to set_svc_ref_frame_config.
BUG=b/113346831
Change-Id: I63613aed6b1183f98d04831600a6bdd645c740df
|
|
|
|
svc_encodeframe.c and svc_context.h are only used by the example
encoder.
Change-Id: Idb41a5a9d6a229a0bc7d2bc8dbe6575a74efc54c
|
|
BUG=b/112294545
Change-Id: I5be230c8969d69af3ad87068fdf3834ef1af11d9
|
|
Change-Id: I0377ca2ebf63792d7a27de4b8e7e08b38659ecde
|
|
The default is set to turn on the temporal dependency model at
speed 0. Use --enable-tpl to control turning it on/off when calling
vpxenc.
Change-Id: I61614cd8100ae57dc01fd46b2a69c5b67287f18a
|
|
Add update_buffer_slot to SVC API to allow for refreshing
any of the 8 reference buffers. Remove frame_flags from
the struct.
Remove svc tests from vp8 build.
BUG=b/112292577
Change-Id: I0551c349d2b311227245a8ed1639cdbbaf5bc5db
|
|
This commit adds a command line argument "--row-mt". Passing "--row-mt=1" will
set the row_mt flag in the decoder context. This flag will be used to
determine whether row-wise multi-threading path is to be taken when the
row-wise multi-threading functions are added.
Change-Id: I35a5393a2720254437daa5e796630709049e0bc2
|
|
This adds the following command line options to
vp9_spatial_svc_encoder test app:
--drop-frame=<arg> Temporal resampling threshold (buf %)
--tune-content=<arg> Tune content type default, screen, film
--inter-layer-pred=<arg> 0 - 3: On, Off, Key-frames, Constrained
Change-Id: I653d1924fb6e525edb2d1e84739be0b88e773e1c
|
|
Add encoder control to allow application to insert
spatial layer sync frame. The sync frame disables
temporal prediction for that spatial layer.
This is useful for RTC application to have receiver
start decoding a higher spatial layer, without inserting
a key frame on base spatial layer.
If the layer sync is requested on the base spatial layer
this then force a key frame, otherwise it only disables
the temporal reference for that spatial layer, allowing
temporal prediction to continue for the other layers.
Although the temporal prediction is disabled and reset
on a layer sync frame, the inter-layer prediction for the
sync frame is enabled on INTER frames. So the meaning of
INTER_LAYER_PRED_OFF_NONKEY is modified to mean disable
inter-layer prediction on non-key and non-sync frames.
Added unittest for inserting layer sync frames.
Bump up ABI version.
Change-Id: Id458acc400a77c853551f125c4e7b6d001991f03
|
|
Bump up ABI version.
Change-Id: I4498d7ea4ed72994c5f847aa98e75b0150dd7f82
|
|
* changes:
force-inline the convolve functions
Unbreak the force inline directive for gcc
|
|
Change-Id: I97d26285ec146628cbafd3573ca812c630c6687d
|
|
For any spatial, limits the amount of consecutive frame drop.
Change-Id: I692d90363f329f571f2b59e12cc680ad2e76065d
|
|
This will check for dropping full superframe if any
spatial layer is overshooting.
Change-Id: Ic656807028ebef5552301b6d10399fbe3a6c890c
|
|
Copy ref frame index in SVC struct after set in encoder.
Rename ext_{lst,gld,alt}_fb_idx to {lst,gld,alt}_fb_idx.
Bump up ABI version.
BUG=webm:1527
Change-Id: I06209040cb83d374030f40b79f0b36b0efe9f97d
|
|
libvpx only emits:
VPX_IMG_FMT_{I420,I422,I440,I444,I42016,I42216,I44016,I44416}
and additionally supports YV12 as input.
interleaved yuv, rgb and alpha formats are unused.
Change-Id: Ie2ab1099e950c6e696f475d46882f5c47a174042
|
|
Switch the order of constrained and layer drop mode,
and keep constrained_layer_drop as the default.
Update the svc datarate tests.
Change-Id: I764270f7b4964b87b0cd3da6c2f96a628f212a30
|
|
Change-Id: I3d4697b00729553e0860762b9264e29b8a89b9d4
|
|
Add the logic for the constrained framdrop mode for SVC.
Add test case in datarate unittests.
Also lower target bitrates in the tests to better test
frame dropper.
Change-Id: I8ee1b8cb56d835c233ad1fbe0fc1456cb2e7291f
|
|
Add encoder control to set the frame drop thresholds per
spatial layer, and add a frame drop mode: 0 = per-layer drop,
and 1 = constrained drop mode (a drop on a given layer forces
drops to all upper layers).
Default is mode 0 (per-layer dropping).
Implementation for mode 1 will come in subsequent change.
If the control is not used, then the spatial layer frame
drop thresholds (water mark) are all equal and set to the value
given by the encoder config (oxcf->drop_frames_water_mark).
Bump up the ABI version.
Change-Id: Id038d4181b86fa98b3d44d026f96d5f344d81629
|
|
Add VP9E_SET_SVC_INTER_LAYER_PRED to disable inter layer (spatial)
prediction.
0: prediction on
1: prediction off for all frames
2: prediction off for non key frames
Bump up ABI version.
Change-Id: I5ab2a96b47e6bef202290fe726bed5f99bd4951f
|
|
SVC frame dropper: modify the logic to allow for individual
spatial layers to drop. This removes the constraint that all
upper spatial layers must drop when a given spatial layer drops.
Add a flag to the pkt to indicate whether a spatial layer is
encoded or dropped. This is needed for applications that enable
this feature (frame dropping for SVC).
For a current spatial layer, if its previous spatial layer is
dropped, then disable certain features for that layer:
inter-layer prediction, base_mv, partition_reuse, copy partition.
Also add the constraint to never drop a spatial layer if its
base layer is a key frame.
Updates to sample encoder (vp9_spatial_svc_encoder) and the
SVC datarate unittests to properly handle frame dropping.
Bump up ABI version.
Change-Id: I7d14ccf67b8d014a7abfce5ba3989fc623e94067
|
|
If a given spatial layer decides to drop, due to the
buffer/overshoot conditions for that layer, then drop
that current spatial layer and all spatial layers above.
In the current implementation the svc frame counter
(and hence the pattern for the non-flexible SVC case)
are updated on frame drops.
Also add last spatial layer encoded to the pkt.
This is useful for RTC applications that enable
frame dropping for SVC.
Update to the SVC datarate tests:
enabled frame dropper on all SVC datarate tests, and
made a fix to properly set the temporal_layer_id, which
works now even on frame drops.
Change-Id: If828c193f3cb6b1839803fd52fe9fbbda5b5a039
|
|
Change-Id: Ifda11caaf992d10f2d93d6cd1d07b79b6047be05
|
|
Print error messages as they are encountered. This was the default
behavior.
Removes a static analysis warning regarding the use of strncat:
Null pointer argument in call to string length function
As this is the only use of strncat in the library, remove it and the
associated public function.
Change-Id: Id55305c5a4d65f11da88c3a2203ff824200f526f
|
|
Extended ROI struct suitable for VP9.
ROI input from user is passed into internal struct and applied on every frame
(except key frame).
Enabled usage of all 4 VP9 segment features (delta_qp, delta_lf, skip,
ref_frame) via the ROI map input.
Made changes to nonrd_pickmode for the ref_frame feature.
Only works for realtime speed >= 5.
AQ_MODE needs to be turned off for ROI to take effect.
Change example in the sample encoder: vpx_temporal_svc_encoder.c to be suitable
for VP9.
Add datarate test.
Bump up ABI version.
BUG=webm:1470
Change-Id: I663b8c89862328646f4cc6119752b66efc5dc9ac
|
|
When compiling an app using libvpx in Xcode 9.2, a warning is
thrown in vpx_frame_buffer.h:
"Parameter 'new_size' not found in the function declaration"
Switching it to 'min_size' to match the comment text and the
callback type definition prototype resolves it.
Change-Id: I7a3e4a857c2007c2d0d390e22054d7bc85068aa1
|
|
|
|
|