- 29 Aug, 2017 1 commit
-
-
Jerome Jiang authored
Neutral in borg tests. Some clips show 3-4% speed gain on 2 threads on Pixel. Change-Id: Ic959f34e44892a854551de6e9a3d9ec819ffed00
-
- 28 Aug, 2017 1 commit
-
-
Jerome Jiang authored
Rev d1477715 fixed the test failure. So remove the resolution condition for using source_sad in speed 6. BUG=webm:1452 Change-Id: I1efba97e1ef5bd4de5f886299f6fcb907187abcd
-
- 25 Aug, 2017 2 commits
-
-
Marco authored
Enable adapt_partition for vbr mode for speed 6. This allows the usage of the pickmode-based partition (used in speed 5), but only selectively for superblocks with high source sad, otherwise the faster variance based partition scheme is used. For speed 6 on ytlive set: avgPSNR/SSIM metrics up by ~0.6%, several clips up by ~1.5%. Small/negligible decrease in speed. Change-Id: I12f3efef6b3e059391de330fdbe5a44c2587f1f8
-
Marco authored
For SVC at speed >= 7: only use the improved mv search on base spatial layer, if top layer resolution is above 640x360. ~2.3% speedup Small/negligible loss in avgPSNR metrics on rtc set. Change-Id: Iaef75a57ebf1c248931bc1aa28d20b7fecac1851
-
- 02 Aug, 2017 1 commit
-
-
Yunqing Wang authored
Originally, for the purpose of keeping a fast first pass, the first-pass stats between row_mt_mode = 0 and row_mt_mode = 1 are not bit exact, but that difference is very small that doesn't cause a mismatch between the final bitstreams. However, if the encoder changes, this minor difference may cause a mismatch. Thus, this patch always forces the first pass to be bit exact. BUG=webm:1453 Change-Id: I2b67cf529dee81f660f9d9e7fe9a60ea3c7b12b8
-
- 31 Jul, 2017 1 commit
-
-
Jerome Jiang authored
This reverts commit c9266b85. Disable source_sad when resolution > 1080P. The test should pass now. BUG=webm:1452 Change-Id: I72dde88e66590ff9e41da5e5dd83f5550a83f082
-
- 29 Jul, 2017 2 commits
-
-
James Zern authored
This reverts commit 064fc570. This causes an assertion failure in vp9_mcomp.c when running gtest_filter=VP9/MotionVectorTestLarge.OverallTest/41: `mv->col >= -((1 << (11 + 1 + 2)) - 1) && mv->col < ((1 << (11 + 1 + 2)) - 1)' Change-Id: I449e777bf18b661cb3f1d82253610c55c51687f6
-
Marco authored
Move the source_sad feature to speed 6 (from speed 7), and add speed feature to switch from the variance-based partition to reference_partition (which uses nonrd-pickmode for bsize selection) if source_sad is high. Currently used only for speed 6 for resoln <= 360p. About 4-5% improvement on 360p in RTC set. Some speed slowdown, but still ~30% faster than speed 5. Change-Id: Ib0330ee5fe9fdd2608aed91359a2a339d967491c
-
- 10 Jul, 2017 1 commit
-
-
Johann authored
This code is unused in vp9. Only vp8 still contains references to vpx_sad_NxMx[3|8] and only for sizes 16x16, 16x8, 8x16, 8x8 and 4x4. Remove the remaining sizes and all the highbitdepth versions. BUG=webm:1425 Change-Id: If6a253977c8e0c04599e25cbeb45f71a94f563e8
-
- 28 Jun, 2017 1 commit
-
-
Marco authored
Existing logic was only affecting resolutions above 720p. Needs more testing for reducing subpel for speed >= 8. No change on RTC metrics. Change-Id: I2f4bf9f25891614aafa9a86aa5a5063a3ccfce4d
-
- 19 Jun, 2017 2 commits
-
-
Marco authored
Get some quality gain on RTC metrics (~7%), with ~5-8% speed slowdown. Change-Id: I0d02942a77074424ee0326b6e110ddff09f2df5e
-
Marco authored
Set the base_mv_aggressive for temporal enhancement layers (TL > 0). Under the aggressive mode, skip the NEWMV depending on the SSE of the base_mv. Also reduce the subpel motion to 1/2 under aggressive mode if base_mv is good. Speedup ~3% with small/negligible loss in quality on RTC. Affects speed >= 6. Change-Id: I89341b279cad6da2a04b76d5e726016191dacdb8
-
- 10 Jun, 2017 1 commit
-
-
Marco authored
Set subpel prune_evenmore only for non_reference frames, instead of all TL > 0 frames. Gain some quality back at cost of small speed loss (~1-2%). Change only effects SVC encoding at speed >= 7. Change-Id: I5b9f51e51dccfd7050521a66996176b0415ca3f9
-
- 07 Jun, 2017 1 commit
-
-
Marco authored
Enable simple_block_yrd for temporal enhancement layers (TL > 0). And remove block size condiiton for SVC mode. Only affects speed >= 7 SVC. Speedup ~3-4%. avgPSNR regression on RTC for (3 spatial, 3 temporal) layers: ~1%. Change-Id: Iff4fc191623b71c69cd373e7c0823385e7ac67ed
-
- 06 Jun, 2017 1 commit
-
-
Marco authored
Keep the 1/4subpel for all frames, use SUBPEL_TREE_PRUNED_EVENMORE for all temporal enhancement layer frames. Change-Id: Ibc681acbb6fc75b7b3c57fc483fcb11d591dfc9a
-
- 02 Jun, 2017 1 commit
-
-
Marco authored
For SVC 1 pass non-rd mode: Force subpel seach off for SVC for non-reference frames under motion threshold. Add flag to svc context to indicate if the frame is not used as a reference. Little/no quaity loss, ~2% speedup. Change-Id: Ic433c44b514d19d08b28f80ff05231dc943b28e9
-
- 01 Jun, 2017 1 commit
-
-
Marco authored
Speed >=8: for resolutions above CIF, and for low motion content, set subpel_search_method to SUBPEL_TREE_PRUNED_EVENMORE. Small speed gain (~2%) on vga clips, RTC metrics up by ~2-3% on average. Change-Id: Ie26ba0264589652f92dfe74308740debf94cf0cc
-
- 25 May, 2017 1 commit
-
-
Marco authored
Adjust the max_copied_frame setting for temporal layers. Keep the same setting for non-SVC at speed 8. This change also enables copy_partiton for non-SVC at speed 7, but with smaller value of max_copied_frame (=2). ~2% speedup for SVC speed 7, 3 layers, with little/no quality loss. Change-Id: Ic65ac9aad764ec65a35770d263424b2393ec6780
-
- 22 May, 2017 1 commit
-
-
Marco authored
No change on RTC metrics. Change-Id: I5abc573cb56572188d900645d13ba479f55a1ea0
-
- 18 May, 2017 1 commit
-
-
Marco authored
Only affects speed 8. Make changes to copy partition to fix a bug in setting microblock offset. Avg PSNR shows 0.02% gain on rtc_derf and 0.08% loss on rtc. Change-Id: I61c3e5914dde645331344388e7437e5638acd4f3
-
- 12 May, 2017 1 commit
-
-
Jerome Jiang authored
BUG=webm:1433 Change-Id: I4f3984ef28660d3218d48007d7c977bdbdaf8af6
-
- 28 Apr, 2017 1 commit
-
-
Jerome Jiang authored
Add speed constrains for disabling adaptive_rd_thresh when row_mt_bit_exact is set. Change-Id: I2445115c2f9a2e46b8a0966031a0fea488d4964e
-
- 26 Apr, 2017 1 commit
-
-
Jerome Jiang authored
Don't force disabling of adaptive_rd_thresh for realtime when row_mt_bit_exact is set. Row based adaptive rd is made usable in CL 454882(https://chromium-review.googlesource.com/c/454882) for REALTIME. Change-Id: Ief023414f0fd6eb86f299dd46ae58f4436875af5
-
- 25 Apr, 2017 1 commit
-
-
Marco authored
Make some speed setting changes for temporal enhancement layers, and remove the switch in subpel_force_stop for the aggressive_base_mv in non-rd pickmode. Gain some 2-3% speed with little/negligible quality loss. Change-Id: I3e2a7f80ff45f38c0a6ceb01b34dbca2f53edbf0
-
- 24 Apr, 2017 1 commit
-
-
Yunqing Wang authored
This patch followed allow_exhaustive_searches feature modification and continued to modify the encoder to achieve the determinism in the row based multi-threaded encoding. While row-mt = 1 and using multiple threads, the adaptive feature in encoder was disabled, which gave BDRate gain(at speed 1, -0.6% ~ -0.7%; at speed 2, -0.46% ~ -0.59%), but some encoder speed losses(7% ~ 10% at speed 1 and 3% ~ 6% at speed 2). These speed losses were acceptable considering the speed gains obtained from row-mt. Change-Id: I60d87a25346ebc487a864b57d559f560b7e398bb
-
- 21 Apr, 2017 1 commit
-
-
Yunqing Wang authored
A previous patch turned on allow_exhaustive_searches feature only for FC_GRAPHICS_ANIMATION content. This patch further modified the feature by removing the exhaustive search limit, and made it no longer adaptive. As a result, the 2 counts that recorded the number of motion searches were removed, which helped achieve the determinism in the row based multi-threading encoding. Tests showed that this patch didn't cause the encoder much slower. Used exhaustive_searches_thresh for this speed feature, and removed allow_exhaustive_searches. Also, refactored the speed feature code to follow the general speed feature setting style. Change-Id: Ib96b182c4c8dfff4c1ab91d2497cc42bb9e5a4aa
-
- 20 Apr, 2017 1 commit
-
-
Yunqing Wang authored
The allow_exhaustive_searches feature improves the encoding quality of FC_GRAPHICS_ANIMATION content a lot. For non-FC_GRAPHICS_ANIMATION content, the quality test result is almost neutral. This patch makes this feature to be used only for FC_GRAPHICS_ANIMATION content. The motivation of doing that is to make this feature no longer adaptive, which will be implemented in the following patch. Change-Id: Ic911df6dd757402b6480789cc247801e99840369
-
- 14 Apr, 2017 1 commit
-
-
Marco authored
For low resolutions (<= CIF): use quarter-pixel and simple_block_yrd. ~5% gain on RTC_derf. ~6-7% slowdown on ARM. Change-Id: I4439ebd1116b9decac04786503f978840b68a60c
-
- 11 Apr, 2017 1 commit
-
-
Jerome Jiang authored
Set adaptive_rd_thresh to 2 when simple block yrd is not used. Fix regression caused by computing y sad without int_pro_motion_estimation on low res motion clips. Overall 0.07% quality loss on rtc_derf. Change only affects low res on speed 8. Change-Id: Ic6a188a56529f1034d6431005fb4b0e24e8a7e27
-
- 06 Apr, 2017 1 commit
-
-
Yunqing Wang authored
To prevent the motion vector out of range bug, added a motion vector unit test in VP9. In the 4k video encoding, always forced to use extreme motion vectors and also encouraged to use INTER modes. In the decoding, checked if the motion vector was valid, and also checked the encoder/decoder mismatch. The tests showed that this unit test could reveal the issue we saw before. Change-Id: I0a880bd847dad8a13f7fd2012faf6868b02fa3b4
-
- 05 Apr, 2017 1 commit
-
-
Jerome Jiang authored
Move the memory allocation from setting speed features. Change-Id: I2e89dfaeb46daee63effe5a5df62feed732aa990
-
- 27 Mar, 2017 1 commit
-
-
Marco authored
Refactor to split the 1 passs source sad computation into scene detection (currently used for VBR and screen-content mode), and superblock based source sad computation (used in non-rd CBR mode). This allows the source sad computation for CBR mode to be multi-threaded. No change in compression. Change-Id: I112f2918613ccbd37c1771d852606d3af18c1388
-
- 22 Mar, 2017 2 commits
-
-
Marco authored
Allow for simple_block_rd for VGA resoln, and reduce adaptive_rd_thresh to 1. On average no loss on RTC set, ~4% speedup on mac. Change-Id: Ib549c4061c853776062b5e34040f839d470fbebc
-
Jerome Jiang authored
Change it to row based array to avoid the slow down cause by sync. row-mt on, speed 8, 2 threads: ~4% speedup for VGA on ARM benefited from adaptive_rd_threshold. Change-Id: I887e65a53af20a6c4f48d293daaee09dab3512cf
-
- 20 Mar, 2017 2 commits
-
-
Marco authored
For each superblock, keep track of how far from current frame was the last significant content change, and use that (along with GF distance), to turnoff GF search in non-rd pickmode. Only enabled for speed >= 8. avgPNSR on RTC/RTC_derf down by ~0.9/1.2. Speedup on mac: ~3-5%. Speedup on arm: 3.6% for VGA and 4.4% for HD. Change-Id: Ic3f3d6a2af650aca6ba0064d2b1db8d48c035ac7
-
Yunqing Wang authored
The sum of tx bloxk eobs is needed in the machine learning based partition early termination. The eobs are first accumulated during tx search, and then the value associated with the best tx_size is copied to ctx for later use. After the sum of eobs are calculated correctly, re-enabled ml_partition_search_early_termination speed feature. Re-did the quality/speed test to check the impact of the fix. 1. Borg test BDRATE result: 4k set: PSNR: +0.183%; SSIM: +0.100%; hdres set: PSNR: +0.168%; SSIM: +0.256%; midres set: PSNR: +0.186%; SSIM: +0.326%; 2.Average speed gain result: 4k clips: 21%; hd clips: 26%; midres clips: 15%. The result is in line with the original result. Change-Id: I4209a95c89be03b4cbfb6a95b16885f89feddbda
-
- 17 Mar, 2017 1 commit
-
-
Marco authored
Change-Id: I2c090e6ba853a30fef1957b620853315f9471753
-
- 16 Mar, 2017 1 commit
-
-
Jerome Jiang authored
Change-Id: Iab1409b0fc1175bc5a14afc4749a08c536c98c41
-
- 15 Mar, 2017 1 commit
-
- 14 Mar, 2017 1 commit
-
-
Jerome Jiang authored
Only for speed >= 7. Change-Id: I3ac85fbb4023cf7e6f8333806b345b0174382a09
-