summaryrefslogtreecommitdiff
path: root/examples
AgeCommit message (Collapse)Author
2019-04-05svc_encodeframe: check strdup returnJames Zern
BUG=webm:1616 Change-Id: Ic9de589154485ad2de30b0b044991e1f9b852d74
2019-03-27Disable mismatch check on vp9 svc examples.Jerome Jiang
Change-Id: I49902a750758ba0ffe733be9b1efd0cdea44f936
2019-03-21fix redundant cast in examples.Jerome Jiang
Change-Id: I84280de82053f9056bda9d813baa6165ca9bcd1e
2019-03-14Merge "Enclose macro arguments in parentheses"Jerome Jiang
2019-03-14Enclose macro arguments in parenthesesJerome Jiang
BUG=webm:1606 Change-Id: I661485b860243c95b6450035dbac77b0dd4d9ff4
2019-03-11Merge "vp9: map speed > 9 to speed 9."Jerome Jiang
2019-03-08Merge "vp9 svc: add simulcast mode when inter-layer pred is off."Jerome Jiang
2019-03-07vp9 svc: add simulcast mode when inter-layer pred is off.Jerome Jiang
Force all upper spatial layers to be key frame if the base layer is key. Mode only works for inter-layer pred=off and non-flexible mode. Add flag to write out bitstream for each spatial layer in example encoder. Change-Id: I5db4543cf8697544ae49464f2157e692640d5256
2019-03-07vp9-svc: Fix to sample encoder for 1 layerMarco Paniconi
Fix to vp9_spatial_svc_encoder to run case of 1 spatial, 1 temporal layer. Change-Id: I93675c3c4bd2c55cb1c971679588525a8e5b889d
2019-03-05vp9: map speed > 9 to speed 9.Jerome Jiang
Report warning in example encoder. Change-Id: Iec4cdffce9faa65241756fbdac498214c8b93cc1
2019-03-05vp9 svc example: use CONFIG_VP9_DECODER guarding decoding.Jerome Jiang
Change-Id: I91f2955f2936303c3e09e9b2dc60e32305ebae17
2019-02-11Test decode and find mismatch in vp9 svc example encoder.Jerome Jiang
Also write it to opsnr.stt when internal stats is enabled. Removed some redundant code in vpxenc.c and vp9cx_set_ref.c Change-Id: I3700137fff0be92a23e4ab75713db72da1dc4076
2019-02-11refactor vp9 svc example encoder.Jerome Jiang
Put rc stats related code into a separate function. Change-Id: I11808bb947079b5fd9e53dfa5894bf227ed0c4c6
2019-02-08vp9 svc example encoder accept -o (--output) for output.Jerome Jiang
Make it same as vpxenc so easier to run on borg. Change-Id: Ie19db6e828ced773cba9aef715c8fbd0f4715b27
2019-02-07Merge "vp9: Write height and width to ivf header in SVC example encoder."Jerome Jiang
2019-02-07vp9: Write height and width to ivf header in SVC example encoder.Jerome Jiang
Write height and width of top layer to ivf header in SVC. vpxdec Can't decode it correctly when output is y4m. Change-Id: I9b2f1d54696611a30e252bdfd182897d191d92b5
2019-02-06Merge "No vpx_img_alloc for y4m input in example encoders."Jerome Jiang
2019-02-05No vpx_img_alloc for y4m input in example encoders.Jerome Jiang
Y4M reader has its own allocation. Change-Id: Ie02440a183126072ea773860f4e9dc9b412772f5
2019-02-01vpx_dec_fuzzer: Remove dependency on tools_common.cHarish Mahendrakar
Instead of calling get_vpx_decoder_by_name(), derive decoder interface directly. This will avoid dependecy on tools_common and hence any potential updates needed to build fuzzer, when tools_common uses functions defined in a different file With this dependency removed, fuzzer no longer needs to enable examples when building vpx_dec_fuzzer binaries Change-Id: I05753edf041b4bc742a6dc06e809a8a2929d379f
2019-01-30add y4m support to vp9 example encoders.Jerome Jiang
vp9_spatial_svc_encoder and vpx_temporal_svc_encoder. Change-Id: I8dfa1dfad83c83a26ddac4e7c57b5f1ff161e588
2018-12-21svc examples: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: Icb7ba5bb5a6d460c4d0419b76ee54af461ca4a52
2018-11-14vpx_dec_fuzzer: Unify single and multi-thread testsHarish Mahendrakar
As thread count is now randomized, serial and threaded modes can be combined to a single binary. With this change, threads takes values between 1 to 64 and tests both single thread and multi-thread variants of the decoders Change-Id: I6dd2a3aa03bff9c0e2c126843b543d46892be696
2018-11-14Added libFuzzer plugin to test decodersHarish Mahendrakar
vpx_dec_fuzzer.cc can be built with clang++ to generate fuzzer binary Build instructions are part of the file Change-Id: I19ba0bd49b236e27b27e81a83f6de59f15bdc994
2018-09-15cosmetics: normalize include guardsJames Zern
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
2018-09-05vp9-svc: Allow for setting framerate per spatial layer.Marco Paniconi
Add duration to set_svc_ref_frame_config. BUG=b/113346831 Change-Id: I63613aed6b1183f98d04831600a6bdd645c740df
2018-08-30vp9: Fix rate control stats for bypass mode in sample encoderMarco Paniconi
Allow rate control stats to work for bypass mode in vp9_spatial_svc_encoder.c Change-Id: I66764a006a73b1fd13c07b4fc4e0c88b2bb2a035
2018-08-27vp9-svc: Change default pattern for bypass modeMarco Paniconi
For sample encoder: keep default pattern for bypass mode to example#0. Change-Id: Icddc4600d750a23a44b26517a327b546fd8eb412
2018-08-27Merge "SVC: extend api to specify temporal id for each spatial layers."Jerome Jiang
2018-08-16Refactor: move svc example files to from vpx/ to examples/Jerome Jiang
svc_encodeframe.c and svc_context.h are only used by the example encoder. Change-Id: Idb41a5a9d6a229a0bc7d2bc8dbe6575a74efc54c
2018-08-16SVC: extend api to specify temporal id for each spatial layers.Jerome Jiang
BUG=b/112294545 Change-Id: I5be230c8969d69af3ad87068fdf3834ef1af11d9
2018-08-09vp9-svc: Update to SET/GET_SVC_REF_FRAME_CONFIG apiJerome Jiang
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
2018-07-04vp9-svc: add more command line options to test app.Sergey Silkin
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
2018-06-29vp9-svc: fix strings concatenation in test app.Sergey Silkin
Change-Id: I292a1a5c19fd4f23b332e346d0ccac1a9c8455fc
2018-05-29vp9-svc: Add frame dropper control to sample encoder.Marco Paniconi
Disabled as default as enc_cfg.rc_dropframe_thresh is set to 0 as default. Change-Id: Ia888aa16b1a86a716ec33ea041e8b16b19bf93be
2018-04-18vp9: Changes for scene detection overshoot and SVC.Marco Paniconi
Refactor the scene detection for 1 pass cbr to allow the scene detection to be checked once per superframe (on the base layer), using the full resolution sources. If scene change is detected: check for re-encoding due to large overshoot for all spatial layers withing the superframe. Add speed feature to control the re-encode step. Keep the re-encode step on for now. Small change in nonrd_pickmode to remove the possible skip of golden reference for SVC, when the high_source_sad is set for the superframe. Change only affects SVC encoding with screen-content mode enabled. Change-Id: If4cfb52cb0dd0f0fce1c4214fa8b413f8f803d56
2018-04-06Fix settings for num of tiles in samples & tests.Jerome Jiang
The control is set by log2 of number of threads (such that the number of tiles is the same of number of threads). Thus it should be log2(num_threads) instead of (num_threads >> 1). Change-Id: I2ccec5557e660048dad3e561534e1c74fc8eec1f
2018-04-03Fix to svc sample enocoder for visual studio build.Marco Paniconi
Fix to sample encoder, for visual studio buid failure: conversion from 'uint64_t' to 'int'. Change-Id: I385ab8482e1ee97da9872437f8286d9071e38e0e
2018-04-02vp9-svc: Fix to svc sample encoder for write_out.Marco Paniconi
When writing out stream for spatial layer N, make sure to include all spatial layers up to N. Fixes an issue with the streams when frame dropping occurs. Change-Id: I1e20b7dac6b94dcda751043541dd8a12f7df6d8c
2018-03-30VP9 SVC: Write bitstream for each spatial layer in sample.Jerome Jiang
Added control for denoiser in the sample SVC encoder. Change-Id: I8e62aa2fc13a943eb110cb33e419e912a898bbc7
2018-03-21vp9-svc: Fix to sample encoderMarco Paniconi
Get the correct computation of number of input layers to account for frame drops. Change-Id: I39637381e1981b53c930da67a5c525191de6907d
2018-03-20VP9 SVC: Add control to disable inter layer prediction.Jerome Jiang
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
2018-03-20vp9-svc: Improve frame dropper for spatial layers.Marco Paniconi
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
2018-03-15Merge changes I5501d0d6,I8c863ced,I19895d06,Ifa39353d,I09bd209bJohann Koenig
* changes: vp9_resize.c: assert vp9_highbd_resize_plane conditions vp9_loopfilter.c: zero lfl_uv vp8 rdopt.c: zero rd.[rate_uv|distortion_uv] vp8 mfqe: zero map[] temporal svc: zero layer_target_bitrate
2018-03-14temporal svc: zero layer_target_bitrateJohann
These values are set in main() from user input. Ensure they are cleared out first. Clears a static analysis warning: warning: The right operand of '*' is a garbage value 1000.0 * rc->layer_target_bitrate[0] / rc->layer_framerate[0]; Change-Id: I09bd209be5aff31b87597a24d37a9673fa99381b
2018-03-14spatial svc: set window_size to 15Johann
Static analysis does not recognize that output_rc_stat guards the usage of window_size. Clears this warning: The right operand of '>' is a garbage value if (frame_cnt > (unsigned int)rc.window_size) { set_rate_control_stats sets window_size to 15. Zeroing it just introduces another static analysis warning. Change-Id: Ieee7b81a385f986e42189101cfa39279e519b368
2018-03-13spatial svc: zero sizesJohann
This should be taken care of by parse_superframe_index but the static analysis is not recognizing it because it depends on 'marker' which is read from the bitstream. Clears a static analysis warning: The right operand of '*' is a garbage value rc.layer_encoding_bitrate[layer] += 8.0 * sizes[sl]; Change-Id: I8ee48a98f907bc7b46869fd27a351f33e2e7de71
2018-03-13spatial svc: remove vpx_svc_get_messageJohann
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
2018-03-13spatial svc: remove unused localsJohann
Clears static analysis warning: Value stored to 'tl' is never read Change-Id: If047a74f508288c63d5b83ed0f3ad34f791f9312
2018-03-13spatial svc: rescope slJohann
sl was passed to set_frame_flags_bypass_mode, triggering an uninitialized variable warning. Inside the function it is only used as a local variable. Change-Id: If743626e9e10fd41d135e3b4ad6196dc4dc90172
2018-02-09VP9 ROI: Fix errors in example encoder.Jerome Jiang
Fix some errors in the vpx_temporal_svc_encoder. Change-Id: Id93f449364dcf72c826ca931df3c8c3d3b80100f