summaryrefslogtreecommitdiff
path: root/vp9
AgeCommit message (Collapse)Author
2019-04-29Add PERCEPTUAL_AQ tagJingning Han
Refactor the percetual AQ mode control. Change-Id: I9c00c32139ec98fd6aebc1d5086e042730f3616f
2019-04-29Merge "Fix in key frame detection"Paul Wilkins
2019-04-25vp9-rtc: Adjust thresh for 4x4 tx selectionMarco Paniconi
For screen content nonrd_pickmode: reduce threshold to select 4x4 tx_size, under certain conditions. Change-Id: If68c30172272868033f0e3011e53c76b4e7c48b6
2019-04-25vp9-rtc: Fix int conversion error in nonrd_pickmode.Marco Paniconi
Change-Id: I1be775d8c11f530ff26121f1ffaf1dae100b2510
2019-04-24vp9-rtc: Pass source variance and mode to select txMarco Paniconi
For nonrd-pickmode: pass the source variance and the mode (intra/inter) to select tx_size, for better tuning. Neutral change for video mode, speed 7. Some quality improvement for screen content. Change-Id: I53336f23fa4f14076aa1cdf8036e9af73c43060a
2019-04-24Merge "vp9-rtc: tx_size selection for intra mode in nonrd"Marco Paniconi
2019-04-23Merge changes I1af88144,I9eaf9563,I58c1bc0f,I8d173addAngie Chiang
* changes: Remove mv_dist and mv_cost from TplDepStats Remove inter_cost_arr and recon_error_arr Remove RE_COMPUTE_MV_INCONSISTENCY Remove unused mv_[dist/cost]_sum
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-23vp9-rtc: tx_size selection for intra mode in nonrdMarco Paniconi
In nonrd_pickmode for intra modes: add tx_size selection based on Y prediction signal for the bsize. The tx selection is done in model_rd, same as inter-modes. Existing code for intra mode was first setting a tx_size based only on the bsize, and then in some cases in block_yrd (during the loop over bsize in units of tx_size) the tx_size may be set again if model_rd is called in block_yrd. This CL separates out the tx_size setting (based on Y channel prediction via model_rd), and then block_yrd is called once for whole bsize. This allows for better tuning of the tx selection for intra modes in future change. Adjust threshold in svc datarate test. Negligible/neutral change in psnr/ssim metrics for speed 7 and 8, 1 layer and SVC mode. Change-Id: I33bc8447afdc3785482e13aac5c3636e13c59644
2019-04-23Add VPX_TUNE_SSIM and VPX_TUNE_PSNR enumssdeng
Change-Id: I3df5af2c60b774e6d395062077542c52db868236
2019-04-22Add vpx_clear_system_state() in SSIM based rdmult adjustmentssdeng
Change-Id: I2a0cdec3bfce864e975aaa408cfdcb855db8680f
2019-04-22[vp9] Fix handling of skip in row_mt=1Harish Mahendrakar
For row_mt=1, when mi->skip is set to 1 after parse based on eobtotal for that partition, dqcoeff and eob need to be restored as recon_partition doesn't increment these pointers for skip cases Change-Id: I79711b0c175937aa6da3bba3b3bc053f91a8ce35
2019-04-22Merge "Refine interval for key frame boost calculation"Jingning Han
2019-04-22Merge "Fix issues with bits allocated and consumed"Jingning Han
2019-04-21Remove mv_dist and mv_cost from TplDepStatsAngie Chiang
Change-Id: I1af8814449a187e900df9c930dc174f0832b0212
2019-04-21Remove inter_cost_arr and recon_error_arrAngie Chiang
Change-Id: I9eaf9563f2ee92fcfbe38d0f5e36c82632af468f
2019-04-21Remove RE_COMPUTE_MV_INCONSISTENCYAngie Chiang
Change-Id: I58c1bc0f285271ccff163791d35c8c0c6cc8460b
2019-04-21Remove unused mv_[dist/cost]_sumAngie Chiang
Change-Id: I8d173add2d1fc599a7915a3c9668870f18a0c59f
2019-04-19Merge "[CFI] Remove function pointer cast of row_decode_worker_hook"Harish Mahendrakar
2019-04-19Merge "vp9: Use model rd for large blocks in filter search."Jerome Jiang
2019-04-19[CFI] Remove function pointer cast of row_decode_worker_hookHarish Mahendrakar
This fixes CFI error flagged for this function when row-mt=1 Change-Id: Ic5b427a6b621228280ebe829d00b540b18e2c087
2019-04-18vp9: Use model rd for large blocks in filter search.Jerome Jiang
Neutral on speed and quality. Change-Id: Ia1d3929124bb57e31bbab516a994734d2fd51891
2019-04-19Merge "vp9-rtc: Use correct plane for UV in estimate_intra"Marco Paniconi
2019-04-18vp9-rtc: Use correct plane for UV in estimate_intraMarco Paniconi
For nonrd-pickmode: some PSNR increase observed on screen content/scroll clips. Change-Id: Idf1bce9dd434e33d7c35dbeb59e02e2e58ea1aaa
2019-04-18vp9-rtc: Move setting for use_model_rd_largeMarco Paniconi
Move the setting to just before the inter-mode loop, as for screen content the value may change due to reset of segment. No change in behavior except for screen-content. Change-Id: I256795b581ceda352e57b88eba2e86aa18b0fdc4
2019-04-18Fix issues with bits allocated and consumedDeepa K G
For show existing frames, set the variables this_frame_target and projected_frame_size correctly. Change-Id: Id5f06eb4ac195f6b63c0199d9d761eaaaea79bbd
2019-04-18Refine interval for key frame boost calculationDeepa K G
In the calculation of boost for key frames, increase number of frames to be scanned based on the content nature. Change-Id: Ia4533966a00055d0bec712e073d82d4bd1dc715a
2019-04-18Fix in key frame detectionDeepa K G
The frame next to scene cut frame does not usually have a high second ref useage. Thus the sec ref useage of the frame next to scene cut frame is tested against a threshold for scene cut detection. With this change scene cut detection is improved for contents where genuine scene cuts were being missed. Change-Id: I11190d848fa1c1dcd63aab81da799354371e2a30
2019-04-17Merge "Revert "Refactor tile boundary condition for intra prediction""James Zern
2019-04-17Merge "vp9: refactor condtions for model rd for large blocks."Jerome Jiang
2019-04-17Merge "Refine vp9_kmeans()"Angie Chiang
2019-04-16Revert "Refactor tile boundary condition for intra prediction"James Zern
This reverts commit 14208ab41e114f5779d106ae54a7cc8fd9d43820. This causes test vectors failures with --row-mt=1. BUG=webm:1617 Change-Id: Icb14bbbb6f38608a73dde0370ad874c0b1b0af8a
2019-04-16vp9: refactor condtions for model rd for large blocks.Jerome Jiang
Change-Id: If474273642b68e29abacb7b87cbb6e3c91bb93a4
2019-04-16Merge "vp9-rtc: Add speed feature to force SMOOTH filter"Marco Paniconi
2019-04-16Refine vp9_kmeans()Angie Chiang
Reduce the number of group_idx initialization. Initialize the center to the median of the data group. Change-Id: Ie16150610480bf54a6b5e2bc048ba1e940bef10f
2019-04-16vp9-rtc: Add speed feature to force SMOOTH filterMarco Paniconi
Add speed feature for real-time to always force SMOOTH filter for subpel motion. Can be useful in some cases for noisy content or high motion at low bitrate. Also some speedup in avoiding the checking of two filters. Keep it off always for now. Change-Id: I843d79aaddef75f9c6ded60906cc75c279a6e37a
2019-04-16Merge "Use uniform sampling as initial centers for k-means"Jingning Han
2019-04-15Fix libvpx__nightly_optimization-levels - Build Failingsdeng
This CL removes the extra floating math in tune=psnr, I will add clear_system_state calls in tune=ssim in the next cl. Change-Id: I7cdd4854b2b8e7e7f872f097c5535f10c80cfe0d
2019-04-14Merge "loop_filter_rows_mt: unify worker count calculation"James Zern
2019-04-13Add Tune for SSIM for high bitdepth encodingsdeng
midres_bd10 test results: avg_psnr ssim ms_ssim 3.189 -4.083 -5.258 Change-Id: I9faccc02f34692fc304d82241390f92267f5a72c
2019-04-13Merge "Add Tune for SSIM"Sai Deng
2019-04-12loop_filter_rows_mt: unify worker count calculationJames Zern
fixes a deadlock with an odd number of threads that go from < number of tiles to >. the previous calculations were out of sync so going from e.g., 8 tiles to 2 with 3 threads would result in scheduling only 2 workers, but thread_loop_filter_rows() would expect 3. BUG=webm:1618 Change-Id: I78c967a8c3c927d929e13c949808a5ef443ebacb
2019-04-12Use uniform sampling as initial centers for k-meansJingning Han
The Wiener variance output has been sorted prior to the clustering, which allows to directly use the uniform sampling as the initial center points. It avoids empty cluster situations when the samples are heavily distributed at two far ends and leave the middle empty. Change-Id: I159fbfa6bbb4aafd19411fd005666d144cca30fc
2019-04-12Add Tune for SSIMsdeng
Implementation with some tuning of the paper: C. Yeo, H. L. Tan, and Y. H. Tan, "On rate distortion optimization using SSIM," Circuits and Systems for Video Technology, IEEE Transactions on, vol. 23, no. 7, pp. 1170-1181, 2013. Test results: avg_psnr ssim ms-ssim lowres 2.516 -2.622 -2.450 midres 2.312 -3.062 -3.882 hdres 2.292 -4.293 -5.246 The encoding time is about the same as the baseline. Change-Id: Ida2c380ade79b6c15cf12b88bf090069da8765d8
2019-04-12Use qsort to find median valueJingning Han
The list is short enough to use qsort. Change-Id: I5bb1f2c43eec508bafaf4d1ad7c8a92441f066ce
2019-04-11Fix static analysis warningskyslov
With switching to clang-7.0.1 we got new warnings. With this change the warnings are back to 0 for all configurations (excluding warnings in third_party) BUG=webm:1616 Change-Id: I25ceb592c425394e8f14d333fb5680144f892213
2019-04-11Merge "Use log-based sse in eval_mv_mode"Angie Chiang
2019-04-10vp9-rtc: Fix to re-eval zero-mv for denoisingMarco Paniconi
Change-Id: I3bb0646661efa06c8d1d688c746e41855c99f408
2019-04-11Merge changes I9d315e35,Id48f2b65,I4e5ed327Angie Chiang
* changes: Print mv_mode counts Adjust the probs in get_mv_mode_cost Add build_inter_mode_cost()
2019-04-10Use log-based sse in eval_mv_modeAngie Chiang
Up to this point, non_greedy_mv's BDRate change lowres -0.397% midres -0.776% hdres -0.637% Change-Id: I5eb2f03d067d172350dad6ba9a9f4dffef5143cd