summaryrefslogtreecommitdiff
path: root/vpx
AgeCommit message (Collapse)Author
2021-06-11Update some comments for rc_target_bitrateJames Zern
this mirrors the change from libaom: 5b150b150 Update some comments for rc_target_bitrate Change-Id: Iaabee5924e0320609a29dc8ab71327923fb4c5d2
2021-05-26Fixed redundant wording for decoder algorithm interfaceChunbo Hua
Change-Id: Id56e03dc9cf6d4e70c4681896f29893a9b4c76f2
2021-05-07img_alloc_helper: make align var unsignedJames Zern
quiets an integer sanitizer warning: vpx/src/vpx_image.c:101:25: runtime error: implicit conversion from type 'int' of value -2 (32-bit, signed) to type 'unsigned int' changed the value to 4294967294 (32-bit, unsigned) Change-Id: Ifeac31cc80811081c1ba10aadaa94dc36cd46efa
2021-04-28Bump ABI versionCheng Chen
Due to recent changes to command line options for rate control parameters. Change-Id: I1de7cb4ff2850a3ed19ec216dd9d07f64a118e92
2021-04-28Merge "vp8: enc: Fix valid range for under/over_shoot pct"James Zern
2021-04-21vp8: enc: Fix valid range for under/over_shoot pctSreerenj Balachandran
The overshoot_pct & undershoot_pct attributes for rate control are expressed as a percentage of the target bitrate, so the range should be 0-100. Change-Id: I67af3c8be7ab814c711c2eaf30786f1e2fa4f5a3
2021-04-20Further normalization of Vizier parameters.Paul Wilkins
Further changes to normalize the Vizier command line parameters. The intent is that the default behavior for any given parameter is signaled by the value 1.0 (expressed on the command line as a rational). The final values used in the two pass code are obtained by multiplying the passed in factors by a default values if use_vizier_rc_params is 1. Where use_vizier_rc_params is 0 the values are explicitly set to the defaults. This patch also changes the default value of each parameter to 1.0 even if not set explicitly. This should ensure safe /default behavior if the user sets use_vizier_rc_params to 1 but does not set all the the individual parameters. Change-Id: Ied08b3c22df18f42f446a4cc9363473cad097f69
2021-04-14Pass vizier rd parameter valuesCheng Chen
Add command line options for three rd parameters. They are controlled by --use_vizier_rc_params, together with other rc parameters. If not set from command line, current default values will be used. Change-Id: Ie1b9a98a50326551cc1d5940c4b637cb01a61aa0
2021-04-13Set vizier rc parametersCheng Chen
If pass --use-vizier-rc-params=1, the rc parameters are overwittern by pass in values. It --use-vizier-rc-params=0, the rc parameters remain the default values. Change-Id: I7a3e806e0918f49e8970997379a6e99af6bb7cac
2021-04-08vpx_image: clear user provided vpx_image_t earlyJames Zern
this avoids uninitialized values and potential misuse of them which could lead to a crash should the function fail this is the same fix that was applied in libaom: d0cac70b5 Fix a free on invalid ptr when img allocation fails Bug: webm:1722 Change-Id: If7a8d08c4b010f12e2e1d848613c0fa7328f1f9c
2021-04-06Change zm_factor for Vizier.Paul Wilkins
Changes the exposed zm_factor parameter. This patch alters the meaning of the zm_factor parameter that will be exposed for the Vizier project. The previous power factor was hard to interpret in terms of its meaning and effect and has been replaced by a linear factor. Given that the initial Vizier results suggested a lower zero motion effect for all formats, the default impact has been reduced. The patch as it stands gives a modest improvement for PSNR but is slightly down on some sets for SSIM (overall psnr, ssim % bdrate change: -ve is better) lowres -0.111, 0.001 ugc360p -0.282, -0.068 midres2 -0.183, 0.059 hdres2 -0.042, 0.172 Change-Id: Id6566433ceed8470d5fad1f30282daed56de385d
2021-03-29Add command line options for a few rc parametersCheng Chen
These rate control parameters are for the Vizier experiment. They are defined as rational numbers. Change-Id: I23f382dd49158db463b75b5ad8a82d8e0d536308
2021-02-03L2E: let external rate control pass in a max frame sizeCheng Chen
And allow the frame to recode when the frame size is larger than the input max frame size. If the max frame size is not specified, let vp9 decide whether to recode. The recode follows the vp9's current recoding mechanism. The rate control api will return the new qindex back to the external model. Change-Id: I796fbf713ad50a5b413b0e2501583b565ed2343f
2020-11-20Refine documentation of vpx_ext_ratectrl.hAngie Chiang
Bug: webm:1707 Change-Id: Iba04b5292c157e22dd8618a79e8c977ec9fc2199
2020-11-19Add gop_index to vpx_ext_ratectrl.hAngie Chiang
Bug: webm:1707 Change-Id: I48826d5f3a7cc292825a7f1e30ac6d0f57adc569
2020-11-17Capitalize VPX_RC_OK / VPX_RC_ERRORAngie Chiang
Change-Id: I526bd6a6c2d2095db564f96d63c7ab7ee4dd90ad
2020-11-17Add doxygen for vpx_rc_funcs_tAngie Chiang
Change-Id: If75215d574fe0b075add50154a9eece5d387741a
2020-11-17Add doxygen for vpx_rc_configAngie Chiang
Bug: webm:1707 Change-Id: I65bab6b2b792653e70cb136a5f9a21796e34b829
2020-11-17Copy first pass stats documentation from AV1 to VP9Angie Chiang
Bug: webm:1707 Change-Id: Iae7eaa9ba681272b70b6dad17cd2247edab6ef79
2020-11-17Add doxygen to structs in vpx_ext_ratectrl.hAngie Chiang
Bug: webm:1707 Change-Id: Ib5f6b6f143f55e5279e39eb386fcd3340211de59
2020-11-13Merge "vp9: Allow for disabling loopfilter per spatial layer"Marco Paniconi
2020-11-12vp9: Allow for disabling loopfilter per spatial layerMarco Paniconi
For SVC: add parameter to the control SET_SVC_PARAMS to allow for disabling the loopfilter per spatial layer. Note this svc setting will override the setting via VP9E_SET_DISABLE_LOOPFILTER (which should only be used for non-SVC). Add unittest to handle both SVC (spatial or temporal layers) and non-SVC (single layer) case. Change-Id: I4092f01668bae42aac724a6df5b6f6a604337448
2020-10-20Add ref frame info to vpx_rc_encodeframe_info_tAngie Chiang
Bug: webm:1707 Change-Id: I2ff9e54a9c8ae535628c1c471a2d078652f49a31
2020-10-20Add vpx_rc_status_tangiebird
Let callback functions in vpx_ext_ratectrl.h return vpx_rc_status_t Bug: webm:1707 Change-Id: I4ebed47278b228740f6c73b07aa472787b2617d2
2020-10-15Add vp9_extrc_update_encodeframe_result()angiebird
Bug: webm:1707 Change-Id: I962ffa23f03b953f7c0dfd81f49dc79d1975bbba
2020-10-15install vpx_ext_ratectrl.hJames Zern
fixes encoder detection / compile with installed headers after: 6dba0d0a0 Add callback functions for external_rate_control Bug: webm:1707 Change-Id: I370d8c94d6f1b8201002a722077ecf6b3d8cede5
2020-10-09Add vpx_rc_frame_stats_tangiebird
Change-Id: I496ce13592f71779bb00cc8bbb601835bca8ff09
2020-10-09Add vp9_extrc_send_firstpass_stats()angiebird
Change-Id: Ia2457b416200a2b2d1558600bff90ac2746cf396
2020-10-09Add vp9_extrc_init/create/deleteangiebird
Change-Id: I9fcb9f4cc5c565794229593fadde87286fcf0ffd
2020-10-09Add callback functions for external_rate_controlangiebird
Change-Id: I20a1179a2131d2cd069dae9076aa2c18b80784f3
2020-10-02Add codec control for external rate control libangiebird
VP9E_SET_EXTERNAL_RATE_CONTROL One can assign an external library using the control flag, VP9E_SET_EXTERNAL_RATE_CONTROL. The args alongside the control flag should be of type char**. args[0]: char* points to the path of rate control library args[1]: char* points to the config of the rate control library. Change-Id: Iae47362cdfafa00614bac427884bffcf6944c583
2020-10-02Add codec control to disable loopfilter for vp9Jerome Jiang
Change-Id: I6d693e84570c353d20ec314acea43363956c0590
2020-08-25vp9-rtc: Add control to disable maxq on overshootMarco Paniconi
Add encoder control to disable feature to increase Q on overshoot detection, for CBR. Default (no usage of the control) means the feature is internally enabled. Add the control to the sample encoders, but keep it disabled as default (set to 0, so feature is on). Change-Id: Ia2237bc4aaea9770e5080dab20bfff9e3fd09199
2020-06-02Add NV12 supportJerome Jiang
Change-Id: Ia2a8221a156e0882079c5a252f59bc84d8f516b1
2020-05-04Remove unneeded null check for entry in for loopWan-Teh Chang
In vpx_codec_control_(), before we enter the for loop, we have already checked if ctx->iface->ctrl_maps is null and handle that as an error. So the for loop can assume ctx->iface->ctrl_maps is not null, which implies 'entry' is not null (both initially and after entry++). Change-Id: Ieafe464d4111fdb77f0586ecfa1835d1cfd44d94
2020-04-27Update a comment on nonexistent vpx_codec_initWan-Teh Chang
Update a comment on the nonexistent vpx_codec_init() function. Replace it with vpx_codec_dec_init() and vpx_codec_enc_init(). I missed this comment in the last commit. Change-Id: I1d3614b3bb3aa4330ac6bd49e4d2e1f4e627b6b0
2020-04-24Update comments on nonexistent vpx_codec_initJames Zern
Update comments on the nonexistent vpx_codec_init() function. Replace it with vpx_codec_dec_init() and vpx_codec_enc_init(). based on the change in libaom: b1b8c68e8 Update comments on nonexistent aom_codec_init Change-Id: I63d3f6c87706a98f631457b5f6ce51e8b0c5cfb1
2020-04-02Return VPX_CODEC_INCAPABLE on capability failureWan-Teh Chang
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
2020-03-13vpx_codec_enc_config_default: rm unnecessary loopJames Zern
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
2020-02-18Cap delta_q_uv to -15..15Jerome Jiang
only 4 bits in bitstream Change-Id: I338fe54475e094ee5e556467e0b66c982bb560fa
2020-01-17vp9: add delta q for uv channel. add tests.Jerome Jiang
Add control for delta q for uv. 0 by default. Change-Id: Ib8ed160b1a5c9a61ba15985076f6c6f121477103
2019-12-18Add text to clarify the unit of variables for target bitrateWonkap Jang
ts_target_bitrate, layer_target_bitrate, and ss_target_bitrate Change-Id: I845c4b67b5b8b546f7a185e97ad9e510bc246ce0
2019-10-29Add vp9_get_encoder_config / vp9_get_frame_infoangiebird
Change-Id: Id5c8b2d69a36d218ec04cd504868ce0efebf6b69
2019-09-30namespace ARCH_* definesJames Zern
this prevents redefinition warnings if a toolchain sets one BUG=b/117240165 Change-Id: Ib5d8c303cd05b4dbcc8d42c71ecfcba8f6d7b90c
2019-09-06vp9-svc: Add new frame drop mode for SVCMarco Paniconi
add SVC framedrop mode: Lower spatial layers are constrained to drop if current spatial layer needs to drop. No change in behavior to other existing modes. Change-Id: I2d37959caf8c4b453b405904831b550367f716ba
2019-08-20Update documentation: CRF works with VPX_Q modeelliottk
Tested that if VPX_Q is set, this variable will still be used to pull the CRF value. Change-Id: I065a219a7acd18b50478d4d0d3dc7ba5e1c90901
2019-06-19vp8: Allow higher resolution to get periodic keyframe.Jerome Jiang
BUG=webm:1632 Change-Id: Ib05a010245e77f9d502c3e7b8f488fca280ea544
2019-06-14Fix memory leak for vp8 multi-res encoder.Jerome Jiang
BUG=webm:1630 Change-Id: I03e74e78aa0ead66eda7506e921b1774b5442ed5
2019-05-29remove unused svc exportsJohann
The spatial svc implementation has moved outside the library: commit ed8f189cccda9168fd400d1ba6661b1bc14a3afa Refactor: move svc example files to from vpx/ to  examples/ BUG=webm:1629 Change-Id: I31c3ae7b20a6bd50615d1d6e48d4f93beca939e6
2019-04-29vp8cx.h,vpxenc: add note about alt ref rangesJames Zern
BUG=webm:1597 Change-Id: I56345ec621a06dfe1eae7f205874f34bfb40e6e5