SHARE
TWEET

Untitled

a guest Dec 9th, 2019 108 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #if BIT_DEPTH == 12                                                                                                                                                                                                            
  2. static inline void idct4SparseColPut(pixel *dest, ptrdiff_t line_size, const int16_t *col)                                                                                                                                      
  3. {                                                                                                                                                                                                                              
  4.     float C1 = 0.6532814824;                                                                                                                                                                                                    
  5.     float C2 = 0.2705980501;                                                                                                                                                                                                    
  6.     float C3 = 0.5;                                                                                                                                                                                                            
  7.     int c0, c1, c2, c3, a0, a1, a2, a3;                                                                                                                                                                                        
  8.                                                                                                                                                                                                                                
  9.     a0 = col[8*0];                                                                                                                                                                                                              
  10.     a1 = col[8*1];                                                                                                                                                                                                              
  11.     a2 = col[8*2];                                                                                                                                                                                                              
  12.     a3 = col[8*3];                                                                                                                                                                                                              
  13.     c0 = (a0 + a2)*C3;                                                                                                                                                                                                          
  14.     c2 = (a0 - a2)*C3;                                                                                                                                                                                                          
  15.     c1 = a1 * C1 + a3 * C2;                                                                                                                                                                                                    
  16.     c3 = a1 * C2 - a3 * C1;                                                                                                                                                                                                    
  17.     dest[0] = av_clip_pixel(c0 + c1);                                                                                                                                                                                          
  18.     dest += line_size;                                                                                                                                                                                                          
  19.     dest[0] = av_clip_pixel(c2 + c3);                                                                                                                                                                                          
  20.     dest += line_size;                                                                                                                                                                                                          
  21.     dest[0] = av_clip_pixel(c2 - c3);                                                                                                                                                                                          
  22.     dest += line_size;                                                                                                                                                                                                          
  23.     dest[0] = av_clip_pixel(c0 - c1);                                                                                                                                                                                          
  24. }                                                                                                                                                                                                                              
  25.                                                                                                                                                                                                                                
  26. void FUNC6(ff_simple_idct84_put)(uint8_t *dest_, ptrdiff_t line_size, int16_t *block_)                                                                                                                                          
  27. {                                                                                                                                                                                                                              
  28.     idctin *block = (idctin *)block_;                                                                                                                                                                                          
  29.     pixel *dest = (pixel *)dest_;                                                                                                                                                                                              
  30.     int i;                                                                                                                                                                                                                      
  31.                                                                                                                                                                                                                                
  32.     line_size /= sizeof(pixel);                                                                                                                                                                                                
  33.                                                                                                                                                                                                                                
  34.     for (i = 0; i < 4; i++) {                                                                                                                                                                                                  
  35.         FUNC6(idctRowCondDC)(block + i*8, 0);                                                                                                                                                                                  
  36.     }                                                                                                                                                                                                                          
  37.                                                                                                                                                                                                                                
  38.     for (i = 0; i < 8; i++)                                                                                                                                                                                                    
  39.         idct4SparseColPut(dest + i, line_size, block + i);                                                                                                                                                                      
  40. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top