diff options
author | Marco <marpan@google.com> | 2018-01-05 09:33:27 -0800 |
---|---|---|
committer | Marco <marpan@google.com> | 2018-01-05 10:17:08 -0800 |
commit | 321f295632b1a66ac4de576f2f9fc99e150ac953 (patch) | |
tree | 34717e3383cee0a689462b8878b117dc604ed284 /vp9 | |
parent | 8a4336ed2edea09b67f49828df1f8c526a85a7a6 (diff) | |
download | libvpx-321f295632b1a66ac4de576f2f9fc99e150ac953.tar libvpx-321f295632b1a66ac4de576f2f9fc99e150ac953.tar.gz libvpx-321f295632b1a66ac4de576f2f9fc99e150ac953.tar.bz2 libvpx-321f295632b1a66ac4de576f2f9fc99e150ac953.zip |
vp9-svc: Use eightap_smooth for downsampling at low resol.
Switch from bilinear to eighttap_smooth for frame-level
downsampling at low resolutions (<= 320x240).
avgPSNR/SSIM metrics increase from ~0.5-2% (all clips positive gain),
for 2 and 3 spatial layer SVC, with 3 temporal layers.
Small/negligible increase in encoding time (< 1%).
Change-Id: I758472fc4fddd51d87f13c9d1a1cd4986ef5d41f
Diffstat (limited to 'vp9')
-rw-r--r-- | vp9/encoder/vp9_svc_layercontext.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_svc_layercontext.c b/vp9/encoder/vp9_svc_layercontext.c index 2636bd9a5..4f137ecc3 100644 --- a/vp9/encoder/vp9_svc_layercontext.c +++ b/vp9/encoder/vp9_svc_layercontext.c @@ -661,6 +661,10 @@ int vp9_one_pass_cbr_svc_start_layer(VP9_COMP *const cpi) { // averaging filter), use bilinear for now. if (width * height <= 640 * 480) { cpi->svc.downsample_filter_type[cpi->svc.spatial_layer_id] = BILINEAR; + // Use Eightap_smooth for low resolutions. + if (width * height <= 320 * 240) + cpi->svc.downsample_filter_type[cpi->svc.spatial_layer_id] = + EIGHTTAP_SMOOTH; cpi->svc.downsample_filter_phase[cpi->svc.spatial_layer_id] = 8; } |