- 02 Dec, 2017 1 commit
-
-
Hui Su authored
BUG=b/65412009 Change-Id: I9e1478dcbd2ef9e97f5f8fb5a1c733b5f5cdf396
-
- 27 Nov, 2017 2 commits
-
-
Johann authored
Change-Id: I9f95f47bc7ecbb7980f21cbc3a91f699624141af
-
Marco authored
For the case when the number of temporal layers > 1, the buffer levels (starting/optimal_buffer_level, and maximum_buffer_size) were not scaled properly. In vp9_update_layer_context_change_config(): when setting the layer-buffer levels, fix is to scale the layer-target_bandwidth by the target_bandwidth (which is the full stream bandwidth) instead of the spatial_layer_target. This is needed because prior to the call vp9_update_layer_context_change_config(), set_rc_buffer_sizes() is called which sets the buffer levels based on target bandwidth (which is the full bandwidth for the SVC stream). This fix properly sets the layer-buffer levels based on the layer-bandwidth, and leads to better rate targeting. Small/neutral change in avgPSNR/SSIM metrics on RTC set. Change-Id: Ic0f4f7f3487c37b9a9adb4781ae5edfed7140a57
-
- 21 Nov, 2017 4 commits
-
-
Peter Collingbourne authored
-
Jerome Jiang authored
-
Vlad Tsyrklevich authored
Control Flow Integrity [1] indirect call checking verifies that function pointers only call valid functions with a matching type signature. This change eliminates function pointer casts to make libvpx CFI-safe. [1] https://www.chromium.org/developers/testing/control-flow-integrity Change-Id: I7e08522d195a43c88cda06fa20414426c8c4372c
-
Jerome Jiang authored
Clean up some prints. Change-Id: I199350e34a8b6fbff9601fcbd11ec68d24da5073
-
- 20 Nov, 2017 2 commits
-
-
Kyle Siefring authored
-
Jerome Jiang authored
-
- 17 Nov, 2017 8 commits
-
-
Marco authored
For reference frames: enable scale partition for superblocks with low source sad or if bsize on lower-resoln is at least 32x32. Keep feature disabled for base temporal layer. Small regression in avgPNSR/SSIM metrics, ~0.5-1%. Speedup ~2-3% on mac for SVC (3 spatial/3 temporal layers) at speed 7. Change-Id: I5987eb7763845b680059128b538bb5188be0cca5
-
Jerome Jiang authored
Change-Id: I4cb878600038066513ab73f3658990d1245ff2fb
-
Kyle Siefring authored
Change-Id: If8b91aaa883c01107f0ea3468139fa24cfb301d2
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Jerome Jiang authored
-
- 16 Nov, 2017 2 commits
-
-
paulwilkins authored
When allow_partition_search_skip is set the two pass code can optionally skip the partition search in the rd loop if the image appears static (based on selection of 0,0 motion). Unfortunately 0,0 motion does not necessarily mean that there are no meaningful changes or that motion or intra modes will not be selected in the second pass. Disabling "allow_partition_search_skip" may hurt the encode speed a little for a small number of clips but can have a big impact on compression. The most notable example of this in our test sets is "bridge_close_cif" where this change gives a gains of 18%, 12% and 16% in opsnr, ssim and psnr-hvs. Change-Id: I765e288b5c0cd82bce00a148e7653a21e9203024
-
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 5 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
Removal of parameters to and code in calc_frame_boost() that is no longer required. No change to results from previous patch. Change-Id: Ic92da35613fdc247d22fddf24d09679fc5329017
-
paulwilkins authored
The decay accumulator clause covers similar ground to the new clause that tests the accumulated second reference error so it has been removed to reduce complexity. Change-Id: I4ec1cce32d72bd4ee463ad7def2831a68447d525
-
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 2 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
-