- 17 Nov, 2017 - 2 commits
-
-
Paul Wilkins authored
-
Jerome Jiang authored
-
- 16 Nov, 2017 - 1 commit
-
-
Jerome Jiang authored
Enable partition copy on boundary and scale blocks along the boundary. Rename copy_partition_svc to scale_partition_svc. Do not copy if the block crosses the boundary. Change-Id: I37a04d48f11b15c4ea67facd7631193ec2f62150
-
- 15 Nov, 2017 - 3 commits
-
-
Johann authored
Fixes a build issue when relocation is not allowed: relocation R_X86_64_32 against '.rodata' can not be used when making a shared object Change-Id: Ica3e90c926847bc384e818d7854f0030f4d69aa0
-
paulwilkins authored
Add a clause to the breakout test for alt ref groups that examines the size of the accumulated second reference frame error compared to the cost of intra coding. This clause causes a reduction in the average group length for many clips. Alongside the change to the group length the minimum boost is increased. On balance the results are positive for psnr and psnr-hvs but is negative for ssim/fast ssim for the smaller image formats. Strong gains on some harder clips (eg ducks take off (midres) ~20%, husky (lowres) 6-17%. Most of the negative cases are lower motion clips. Subsequent patch hopefully will help with those. Change-Id: Ic1f5dbb9153d5089e58b1540470e799f91a65dc4
-
Marco authored
Fix/cleaup the conditioning for usage of the reuse-lowres partition feature. Replace the non-reference condition with the top temporal layer, and put this condition in the speed feature. This prevents doing update_partition_svc() on every VGA frame, instead it will now only do update for VGA in the top temporal layer frames. Also this makes it easier to test/enable this feature for lower layer temporal frames. Change-Id: Ia897afbc6fe5c84c5693e310bcaa6a87ce017be5
-
- 14 Nov, 2017 - 2 commits
-
-
Scott LaVarnway authored
Change-Id: Ic10ba580fd5da7d6ff7fa0f33db72fb0c1a97801
-
James Bankoski authored
-
- 13 Nov, 2017 - 7 commits
-
-
Jerome Jiang authored
-
Jerome Jiang authored
VPX_ENCODER_ABI_VERSION was bumped up in 93e83f. Change-Id: Id5707f9f9db56fa96549bc8f54e1cfa04e7fa4cd
-
Jim Bankoski authored
Change-Id: I92e4dba2d1682a0d77ad9a214ec4312b1cf4d42e
-
paulwilkins authored
For new VP9 only content type adjust the rate distortion and ARF filter based on the relative spatial variance of the source and reconstruction. In regards to the RD loop the method favors modes where the reconstruction variance is similar to the source variance. However it is currently only applied to regions where the source variance is quite low. For very low variance blocks it applies a further bias against intra coding and large prediction block sizes (the later in particular limit the usefulness of the loop filter). The final part of this change is to lower the strength of the ARF filter for blocks where the source has very low spatial variance, to encourage some low amplitude texture or noise to pass through the filter. This change improves the retention of film grain and fine noise / texture in spatially flat regions, but as expected causes a significant drop in PSNR on many clips. This is to be expected because similar but misaligned noise or texture will give a lower PSNR than a flat noise free reconstruction. However, it is worth noting that most clips show a strong gain in FAST SSIM. The features are enabled on the vpxenc command line by setting --tune-content=film. VPX_ENCODER_ABI_VERSION bumped for this change and cvbr. Change-Id: I26a4e4edfa3dc5cacead82fa701fe7a9118ccd0a
-
paulwilkins authored
Removed three parameters that are no longer needed in calls to calc_arf_boost() and associated minor changes. No impact on encode results. Change-Id: Ieaf31d0d2e1990b99cf69647170145a1bbfbb9fb
-
Paul Wilkins authored
-
Paul Wilkins authored
-
- 10 Nov, 2017 - 5 commits
-
-
Scott LaVarnway authored
SSE2 instrinsic vs AVX2 intrinsic speed gains: blocksize 16: ~1.33 blocksize 64: ~1.51 blocksize 256: ~3.03 blocksize 1024: ~3.71 Change-Id: I79b28cba82d21f9dd765e79881aa16d24fd0cb58
-
Scott LaVarnway authored
-
Marco Paniconi authored
-
Marco authored
For choose_partitioning (speed >= 6): avoid computation of minmax variance for non-reference frames in SVC. Existing condition only avoided this for speed >= 8. Combine that existing logic with non-reference condition. Small speedup (~0.5-1%) for 3 layer SVC, neutral change on avgPSNR/SSIM metrics. Change-Id: I3e9f3a1af0647b15e475cf170d9402908d672ee5
-
James Zern authored
-
- 09 Nov, 2017 - 9 commits
-
-
Jerome Jiang authored
Release frame buffers for non-ref when the decoder is destroyed. Enable the non ref test. BUG=b/68819248 Change-Id: Id87ef3b0a62318f9812e927cd957c05c859047fa
-
Jerome Jiang authored
-
Jerome Jiang authored
For SVC with 3 spatial layers: Add feature to copy/upscale partition from middle spatial layer to the upper/highest resolution, when superblock sad is not high. Enabled for speed >= 7 and only for non-reference frames. Speedup ~3-4%, small loss in avgPNSR/SSIM of ~1%. Change-Id: I7f0a2716c0fde28bade0f86159d11b7e31d6ab8d
-
Scott LaVarnway authored
Change-Id: I7364a157de39eb7137b599808474b8d46d19d376
-
Johann Koenig authored
-
Scott LaVarnway authored
SSE2 asm vs AVX2 intrinsics speed gains: blocksize 16: ~1.00 blocksize 64: ~1.17 blocksize 256: ~1.67 blocksize 1024: ~1.81 Change-Id: I2a86db239cf57e3ff617890ccb2d236aba83ad5e
-
paulwilkins authored
For a chosen interval "i" the existing arf boost calculation examined frames +/- (i-1) frames from the current location in the second pass. This change checks to make sure that the forward search does not extend beyond the next key frame in the event that the distance to the next key frame is < (i - 1). Small metrics gains on all our test sets but these are localized to a few clips (e.g. midres set psnr-hvs sintel -2.59% but overall average was only -0.185%) Change-Id: I26fc9ce582b6d58fa1113a238395e12ad3123cf6
-
Jerome Jiang authored
-
Jerome Jiang authored
The new test will run a SVC bitstream which has non ref frames. It checks the number of buffer acquired and released to make sure all external frame buffers are released. Add a new test bitstream: vp90-2-22-svc_1280x720_1.webm which has 400 frames in total, and 1 spatial layer and 2 temporal layers. There is one non ref frame every other frame. Disabled for now. Will be enabled with the fix. BUG=b/68819248 Change-Id: I0515336fd9809a9e1fceba90e4dce53dabaf53a5
-
- 08 Nov, 2017 - 2 commits
-
-
Johann Koenig authored
-
paulwilkins authored
Added command line control of Corpus VBR. The new corpus vbr mode is a variant of standard VBR (end-usage=0) where the complexity distribution mid point is passed in rather than calculated for a specific clip or chunk. The new variant is enabled by setting a new command line parameter --corpus-complexity to a zero value. Omitting this parameter or setting it to 0 will cause the codec to use standard vbr mode. The correct value for a given corpus needs to be derived experimentally using a training set such that the average rate for the corpus is close to the target value. For example our using our low res test set with upper and lower vbr limits of 50%-150% and a corpus complexity value of 650 gives a similar average data rate across the set to using standard vbr. However, with the corpus mode easier clips will be allocated fewer bits and harder clips more bits rather than having the same rate target for all. Change-Id: I03f0fc8c6fb0ee32dc03720fea6a3f1949118589
-
- 06 Nov, 2017 - 1 commit
-
-
Marco authored
For nonrd_pickmode: if early_term is set there should be no need to include UV in rdcost (when color_sensitivity is set). Neutral change on RTC and RTC_derf metrics, for speed >= 5. No change for ytlive metrics. Very small speed gain (~0.5%) on some clips with strong color content. Change-Id: Ifc00928ecd935fc71e94935ceef0ae7481249f07
-
- 03 Nov, 2017 - 3 commits
-
-
Kyle Siefring authored
The added AVX-512 support requires the subset of AVX-512 added in Skylake-X. Change-Id: I39666b00d10bf96d06c709823663eb09b89265b7
-
Marco authored
Allow for compound prediction mode in nonrd_pickmode for ZEROMV. For real-time encoding, 1 pass with non-zero lag-in-frames. Added speed feature to control the feature. Enabled for speed >=6 for now, under VBR mode. avgPSNR/SSIM metrics positive on ytlive set, for speed 6: some clips up by ~3-5%, some clips neutral gain, average gain across clips is ~1%. Small/negligible decrease in speed. Change-Id: I7a60c7596e69b9a928410c5ee2f9141eecd8613d
-
Johann authored
Even though frame_size is calculated in uint64_t, it winds up in an int size value. This was exposed with the msan test because the memset is called with (int)frame_size, leading to a segfault. Change-Id: I7fd930360dca274adb8f3e43e5e6785204808861
-
- 01 Nov, 2017 - 2 commits
-
-
Jerome Jiang authored
-
Jerome Jiang authored
Remove the memory deallocation on the early exits. Change-Id: I00b4a814ae6705105ecab89644d055ca3311d9f4
-
- 31 Oct, 2017 - 2 commits
-
-
Jerome Jiang authored
-
Jerome Jiang authored
Move vt2 to heap. Reduce the stack usage from ~87K to ~44K. BUG=b/68362457 Change-Id: I8f5f93712934d59a8cc4564378172d409a736a2e
-
- 30 Oct, 2017 - 1 commit
-
-
Jerome Jiang authored
-