vp9-svc: Fix to initialize downsampling filters.
For 3 spatial layers with 1/2 downsampling, the downsampling filter for the middle layer was not set for the very first frame, so it was defaulting to the subsample filter (no averaging/phase = 0). Its not set due to the two stage scaling that is done for 1/4 on base layer, during which the intermediate 1/2 result is saved for the middle layer. Fix for now is to set the default downsampling filter to Bilinear (averaging/non-zero phase) for all layers on init (vp9_init_layer_context):. Change-Id: Ic7407810b34c621e7e7420682508d45478bdffcf
This commit is contained in:
		@@ -45,8 +45,8 @@ void vp9_init_layer_context(VP9_COMP *const cpi) {
 | 
			
		||||
    svc->ext_lst_fb_idx[sl] = 0;
 | 
			
		||||
    svc->ext_gld_fb_idx[sl] = 1;
 | 
			
		||||
    svc->ext_alt_fb_idx[sl] = 2;
 | 
			
		||||
    svc->downsample_filter_type[sl] = EIGHTTAP;
 | 
			
		||||
    svc->downsample_filter_phase[sl] = 0;  // Set to 8 for averaging filter.
 | 
			
		||||
    svc->downsample_filter_type[sl] = BILINEAR;
 | 
			
		||||
    svc->downsample_filter_phase[sl] = 8;  // Set to 8 for averaging filter.
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  if (cpi->oxcf.error_resilient_mode == 0 && cpi->oxcf.pass == 2) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user