summaryrefslogtreecommitdiff
path: root/vpx
AgeCommit message (Collapse)Author
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
2019-04-23Revert "Add VPX_TUNE_SSIM and VPX_TUNE_PSNR enums"Sai Deng
This reverts commit 1d8d8f562bf382e47071bb38d13b7ded366820af. Reason for revert: change the api names will break existing code. Original change's description: > Add VPX_TUNE_SSIM and VPX_TUNE_PSNR enums > > Change-Id: I3df5af2c60b774e6d395062077542c52db868236 TBR=jingning@google.com,builds@webmproject.org,sdeng@google.com Change-Id: Ic94c19739f595f4544e8b68892ab9d9c1bbccd79 No-Presubmit: true No-Tree-Checks: true No-Try: true
2019-04-23Add VPX_TUNE_SSIM and VPX_TUNE_PSNR enumssdeng
Change-Id: I3df5af2c60b774e6d395062077542c52db868236
2019-04-03vp8cx.h: s/VP8E_(SET_MAX_INTER_BITRATE_PCT)/VP9E_$1/James Zern
this was renamed in: 268f10669 Provide information on codec controls but the corresponding type checked control call was missed. Change-Id: I151cb42516b10e551b31273327de4ec1bac3c81b
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-05vp9: map speed > 9 to speed 9.Jerome Jiang
Report warning in example encoder. Change-Id: Iec4cdffce9faa65241756fbdac498214c8b93cc1
2019-01-15vp9: fix definition for VP9E_SET_POSTENCODE_DROPJerome Jiang
Change-Id: I667be78eb7c41154bf44c242992f622f12c31b80
2019-01-14Change "ximage" to "vpx_image_t" in comments.Wan-Teh Chang
In test/external_frame_buffer_test.cc, rename CheckXImageFrameBuffer() to CheckXImageFrameBuffer(). Change-Id: Ifea3910445673be465d7536a69f85f1a2e2bce6e
2018-12-21Merge "vpx/{vp8,vpx_encoder}.h: fix some typos"James Zern
2018-12-20vpx_integer.h: remove VPX_EMULATE_INTTYPESJames Zern
platforms supported by the library all offer stdint.h BUG=webm:1573 Change-Id: I2ad95dfbcfc2d1890c1b7e503340fda8a9849635
2018-12-20Merge "vpxenc : fix misleading documentation about sharpness."James Bankoski
2018-12-19vpxenc : fix misleading documentation about sharpness.Jim Bankoski
Change-Id: I792c178736a9fc02a84aa83f351e12b7227259b0
2018-12-19Merge "vpx/*.h: rm some deprecated defines/enum vals/typedefs"James Zern
2018-12-19Merge "vpx/vp8cx.h: fix some typos"James Zern
2018-12-19vpx_integer.h: drop VS2010 workaroundJames Zern
visual studio 2015 is the current minimum BUG=webm:1573 Change-Id: I22139925c0a322b1da214c38d8f74fadbc34d2de
2018-12-19vpx/{vp8,vpx_encoder}.h: fix some typosJames Zern
BUG=webm:1573 Change-Id: I5cbb29c89955aa1548ea2a2b3da5763bd38dd978
2018-12-19vpx/vp8cx.h: fix some typosJames Zern
BUG=webm:1573 Change-Id: I46faa216a4a8278a363a8111237342f73e8467eb
2018-12-19vpx/*.h: rm some deprecated defines/enum vals/typedefsJames Zern
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
2018-12-11vp8: Fix to enabling MFQEMarco Paniconi
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
2018-11-07Merge "vp9: postencode drop frame for screen content in CBR."Jerome Jiang
2018-11-06vp9: postencode drop frame for screen content in CBR.Jerome Jiang
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
2018-11-06Merge "vpx_codec_enc_config_default: disable 'usage'"Johann Koenig
2018-11-05vpx_codec_enc_config_default: disable 'usage'Johann
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
2018-11-05clang-tidy: fix vpx_img_wrap alignJohann
This function specifically only aligns the stride and not the base buffer like vpx_img_alloc does. BUG=webm:1444 Change-Id: I3092827eeec3c9e16306a3973534d3a362a337e8
2018-10-08Loopfilter Multi-Thread OptimizationSupradeep T R
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
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-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-15svc: Force the quantizer to be same as that in encoder config.Jerome Jiang
Change-Id: I0377ca2ebf63792d7a27de4b8e7e08b38659ecde
2018-08-14Add vpxenc control to turn on/off tpl modelJingning Han
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