summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-18update googletest to v1.10.0James Zern
this moves the framework to c++11 and changes *_TEST_CASE* to _TEST_SUITE BUG=webm:1695 Change-Id: I07f2c20850312a9c7e381b38353d2f9f45889cb1
2020-06-18vp9_skip_loopfilter_test: make Init() return a boolJames Zern
ASSERT's in the function only force a return, not termination. this fixes a static analyzer issue with using a null decoder object in following calls. BUG=webm:1695 Change-Id: I79762df8076d029c5c8fef4d5e06ed655719de62
2020-06-16vp9-svc: Add svc test for denoiser and dynamic resizeMarco Paniconi
This catches the assert/crash fixed in 5174eb5. Also fix to only check for dynamic resize in SVC mode for base temporal layer. Change-Id: Ie6eb7d233cc43eafb1b78cec4aeb94fb4d7fe11a
2020-06-15vp9-svc: Fix to dynamic resize for svc denoisingMarco Paniconi
Fix the logic to allow denoiser reset on resize for SVC mode, as dynamic resize is allowed for SVC under single_layer mode. Change-Id: I7776c68dadff2ccbce9b0b4a7f0d12624c2ccf90
2020-06-11Let SetExternalGroupOfPicturesMap use c-style arrangiebird
Change-Id: Ic92ce5a3cc5bb74120eb32fc6219e43b1b861f14
2020-06-08Fix assertion error in simple_encode.ccangiebird
Change-Id: I271d11cc35d34d5450a8b56fabcedaf2bb7c6565
2020-06-03Merge "Refactor simple_encode_test.cc"Angie Chiang
2020-06-02Merge "Add NV12 support"Jerome Jiang
2020-06-02Refactor simple_encode_test.ccangiebird
1) Avoid using global variables. 2) Add comments to EncodeConsistencyTest. 3) Check frame_type and show_idx in EncodeConsistencyTest. Change-Id: I2261a0bd65189beb70432d62c077ef618a2712ab
2020-06-02Add NV12 supportJerome Jiang
Change-Id: Ia2a8221a156e0882079c5a252f59bc84d8f516b1
2020-05-28Add extra check / unit test to SetExternalGroupOfPicturesMap()angiebird
Let SetExternalGroupOfPicturesMap() modify the gop_map_ to satisfy the following constraints. 1) Each key frame position should be at the start of a gop. 2) The last gop should not use an alt ref. Add unit test for SetExternalGroupOfPicturesMap() Change-Id: Iee9bd238ad0fc5c2ccbf2fbd065a280c854cd718
2020-05-28Merge "Refactor decode_api_test and realtime_test"Angie Chiang
2020-05-26Add functions to compute/observe key frame mapangiebird
Change-Id: I2fc0efb2ac35e64af3350bddaa802a206d1aa13c
2020-05-26Init static_scene_max_gf_interval in vp9_rc_init()angiebird
Change-Id: I2cad885fac2fd5f3e84d02b905a2ce59eb66760e
2020-05-26Make SetExternalGroupOfPicture support no arf modeangiebird
Rename external_arf_indexes by gop_map Use kGopMapFlagStart to indicate the start of a gop in the gop_map. Use kGopMapFlagUseAltRef to indicate whether to use altref in the gop_map. Change-Id: I743e3199a24b9ae1abd5acd290da1a1f8660e6ac
2020-05-26Add GOP_COMMANDangiebird
Send GOP_COMMAND to vp9 for setting gop decisions on the fly. GOP_COMMAND has three members. use: use this command to set gop or use vp9's gop decision. show_frame_count: number of show frames in this gop. use_alt_ref: use alt ref frame or not. Move the logic of processing external_arf_indexes_ from get_gop_coding_frame_num() to GetGopCommand() and GetCodingFrameNumFromGopMap(). Change-Id: Ic1942c7a4cf6eecdf3507864577688350c7ef0cf
2020-05-20Refactor decode_api_test and realtime_testangiebird
Replace NULL by nullptr. Use override specifier over virtual specifier. Change-Id: Iac2c97f997abd6ed9a5cd3991e052e79996f40f4
2020-05-19vp9_decoder: free postproc_state.prev_mipJames Zern
this fixes a leak when using MFQE BUG=webm:1692 Change-Id: I19fb2f07155769f59924e0843989b3d3f8899bf6
2020-05-15vp9-svc: Fix key frame update refresh simulcast flexible svcMarco Paniconi
For flexible svc in simulcast mode: don't allow refresh of all reference slots on key frame. Which slots to update should be based on the user flags. Change-Id: I3597c61ebcdfed2055bbdffec7ce701fad892744
2020-05-15Merge "vp9_firstpass.c: limit mv_limits with MV_MAX in motion_search"Yunqing Wang
2020-05-13vp9-rtc: Increase thresh for scene detectionMarco Paniconi
For CBR screen content mode. Makes it more robust to false detections. Change-Id: Icad89adb6f79b530b589bba2c71ba88ee5088d37
2020-05-12Merge "Don't collect stats if they won't be used"Jerome Jiang
2020-05-12Merge "Temporarily convert to 64 bits to avoid overflows"James Zern
2020-05-11Temporarily convert to 64 bits to avoid overflowsJorge E. Moreira
In the vp8_cost_branch function a couple of unsigned int are being multiplied by integer coefficients and added to later be divided by 256. While the end result most likely fits an unsigned int, the intermediary result of multiplying and adding sometimes doesn't (I was able to reproduce it by leaving the encoder running at 60 fps for a while). To avoid the multiplication overflow (which is undefined behavior and causes a wrong result anyways) the calculation is performed using unsigned long long instead and cast to unsigned int for return. Bug: b/154172422 Test: run cuttlefish with webrtc enabled for an hour Change-Id: If7ebbda38b2450a59ed3c99ffbb59dc62431a324
2020-05-11Merge changes Ib55d46e9,I4a4feeabJames Zern
* changes: decode_api_test: add negative test for vpx_codec_error_detail examples: use die() on dec/enc_init() failure
2020-05-09Merge "Fix mac build with vp9 ratectrl interface"Jerome Jiang
2020-05-08Don't collect stats if they won't be usedJorge E. Moreira
When the encoder is run continuously for a few minutes at 60 fps, the total_target_vs_actual field overflows. Since this field is a signed integer that's considered undefined behavior in C++, which causes an abort when used in an android binary (those run with ubsan enabled) Bug: b/154172422 Test: run cuttelfish with webrtc enabled for an hour Change-Id: I8f7d9d0884311a6338bdcdec76348b8cc3ce8c69
2020-05-08Merge "vpx_dec_fuzzer: add coverage for VP9D_SET_LOOP_FILTER_OPT"James Zern
2020-05-08Fix mac build with vp9 ratectrl interfaceJerome Jiang
Add -std=c++11 for darwin build. Change-Id: I760d4f7096bc33520c02b2cd7000fed9ac6cdd90
2020-05-07decode_api_test: add negative test for vpx_codec_error_detailJames Zern
Change-Id: Ib55d46e9290d2bd36345ff4a9737e227664c2a5b
2020-05-07examples: use die() on dec/enc_init() failureJames Zern
rather than die_codec(). calling any api functions with an uninitialized codec context is undefined. this avoids a crash in a call to vpx_codec_error_detail(). BUG=webm:1688 Change-Id: I4a4feeabc1cafa44c8d2f24587fad79e313dba6d
2020-05-07Merge "libs.mk,msvc: add missing vp9rc project"James Zern
2020-05-07libs.mk,msvc: add missing vp9rc projectJames Zern
+ fix some test_rc_interface issues: add a space before $^ in the vcproj rule to add sources to the target, one between the -I's, and make the guid unique; fixes build / link errors. Change-Id: Ia9c99f6a4482a001d993affbc3b3903c2a4e366a
2020-05-06vpx_dec_fuzzer: add coverage for VP9D_SET_LOOP_FILTER_OPTJames Zern
BUG=chromium:1076203 Change-Id: Ib3339a9fd7d940b69a5ef89b3fbf7f4fdeaac006
2020-05-04Merge "vp8_dx_iface.c: make vp8_ctf_maps[] static"James Zern
2020-05-04vp8_dx_iface.c: make vp8_ctf_maps[] staticJames Zern
Change-Id: I6c19745a392681733c6deaaacc7e3540bc72fd4d
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-28test/*.sh: add explicit error checks/returnsJames Zern
there was an assumption that function calls would terminate early with an error given 'set -e' was being used. this is true, but only when the function is part of a simple command otherwise it won't inherit the behavior. many of the call sites use 'func || return 1' syntax meaning the function would continue to completion return with the status of the last command executed. this hid errors with e.g., eval statements. inner calls within the functions are now explicitly tested for failure. BUG=aomedia:2669 Change-Id: Ie33a5ac4023dcc800bd302cb8cc54c6c3f2282f5
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-27Merge "Update comments on nonexistent vpx_codec_init"James Zern
2020-04-25vp9_firstpass.c: limit mv_limits with MV_MAX in motion_searchNeil Birkbeck
Currently, in rare cases on big videos (> 5K), best_mv may differ from ref_mv by more than the allowable MV_MAX. Intersect mv_limits with those bound by MV_MAX before diamond search. We could use vp9_set_mv_search_range, but that seems a bit more constrained than the bug I encountered (e.g., MAX_FULL_PEL_VAL < MV_MAX / 8). Change-Id: I2c6563c05039d6ee05edf642665faaccf51787d4
2020-04-25Merge "vp9-rtc: Some speedups to speed 5 real-time mode"Marco Paniconi
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-24Merge "Revert "Revert "Remove RD code for CONFIG_REALTIME_ONLY in vp9."""Jerome Jiang
2020-04-24vp9-rtc: Some speedups to speed 5 real-time modeMarco Paniconi
Disable checking rectangular partitions in nonrd_pick_partition, and enable use_source_sad. ~3-4% speedup for HD clip on x86. bdrate loss of ~0.2% on rtc set. Change-Id: Ibef8f100f1f623482d47510cb4ec9278ba777d7c
2020-04-24Revert "Revert "Remove RD code for CONFIG_REALTIME_ONLY in vp9.""Jerome Jiang
Under CONFIG_REALTIME_ONLY flag, map speed < 5 to speed 5. Bug: webm:1684 This reverts commit 85cb983682fe9ca14fd302b50d27d762da05d665. Change-Id: I67b7ed37e8b74417db310ea0c817d3c5a5de9e44
2020-04-24vp9-rtc: Allow simulcast mode for flexible/bypass modeMarco Paniconi
Change-Id: I0252d06c4f21d7c700c81d387bef89646229a63c
2020-04-23Merge "Move index check before array access"Jerome Jiang
2020-04-23Merge "Revert "vp9-rtc: Some speedups to speed 5 real-time mode""Jerome Jiang
2020-04-23Revert "vp9-rtc: Some speedups to speed 5 real-time mode"Marco Paniconi
This reverts commit 62af22b5e57ed1e382ef0994183824a03f698797. Reason for revert: causes crash in chromium test Change-Id: I27792e05ece84c79739638b8cce634ffeaef3ba1