| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -416,17 +416,22 @@ static void calc_transform_coeffs_cpl(AC3DecodeContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    bin = s->start_freq[CPL_CH]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    for (band = 0; band < s->num_cpl_bands; band++) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        int band_start = bin; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        int band_end = bin + s->cpl_band_sizes[band]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        for (; bin < band_end; bin++) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            for (ch = 1; ch <= s->fbw_channels; ch++) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                if (s->channel_in_cpl[ch]) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        for (ch = 1; ch <= s->fbw_channels; ch++) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            if (s->channel_in_cpl[ch]) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                int64_t cpl_coord = s->cpl_coords[ch][band]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                for (bin = band_start; bin < band_end; bin++) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    s->fixed_coeffs[ch][bin] = ((int64_t)s->fixed_coeffs[CPL_CH][bin] * | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                                                (int64_t)s->cpl_coords[ch][band]) >> 23; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    if (ch == 2 && s->phase_flags[band]) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        s->fixed_coeffs[ch][bin] = -s->fixed_coeffs[ch][bin]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                                                cpl_coord) >> 23; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                if (ch == 2 && s->phase_flags[band]) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    for (bin = band_start; bin < band_end; bin++) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        s->fixed_coeffs[2][bin] = -s->fixed_coeffs[2][bin]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        bin = band_end; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
	
		
			
				| 
				
					
				
				
				
				 | 
			
			 | 
			
  |