History

Drop DCTELEM typedef

It does not help as an abstraction and adds dsputil dependencies.

Diego Biurrun committed 13 years ago

Commit 88bd7fd1 parent 2e4bb99163 files · +835 −812Browse files

Unified · Split

163 files
  1. doc/optimization.txt +1 −1
  2. libavcodec/4xm.c +5 −5
  3. libavcodec/alpha/dsputil_alpha.c +6 −6
  4. libavcodec/alpha/dsputil_alpha.h +10 −10
  5. libavcodec/alpha/dsputil_alpha_asm.S +2 −2
  6. libavcodec/alpha/motion_est_alpha.c +2 −2
  7. libavcodec/alpha/mpegvideo_alpha.c +4 −4
  8. libavcodec/alpha/simple_idct_alpha.c +6 −6
  9. libavcodec/arm/dsputil_init_arm.c +9 −9
  10. libavcodec/arm/dsputil_init_armv5te.c +3 −3
  11. libavcodec/arm/dsputil_init_armv6.c +6 −6
  12. libavcodec/arm/dsputil_init_neon.c +8 −8
  13. libavcodec/arm/h264dsp_init_arm.c +8 −8
  14. libavcodec/arm/jrevdct_arm.S +1 −1
  15. libavcodec/arm/mpegvideo_arm.c +2 −2
  16. libavcodec/arm/mpegvideo_armv5te.c +4 −4
  17. libavcodec/arm/rv34dsp_init_arm.c +3 −3
  18. libavcodec/arm/rv34dsp_neon.S +3 −3
  19. libavcodec/arm/simple_idct_armv6.S +3 −3
  20. libavcodec/arm/simple_idct_neon.S +3 −3
  21. libavcodec/arm/vp3dsp_init_arm.c +3 −3
  22. libavcodec/arm/vp8.h +1 −1
  23. libavcodec/arm/vp8dsp_armv6.S +6 −6
  24. libavcodec/arm/vp8dsp_init_armv6.c +6 −6
  25. libavcodec/arm/vp8dsp_init_neon.c +5 −5
  26. libavcodec/asv.h +1 −1
  27. libavcodec/asvdec.c +4 −4
  28. libavcodec/asvenc.c +4 −4
  29. libavcodec/bfin/config_bfin.h +1 −1
  30. libavcodec/bfin/dsputil_bfin.c +3 −3
  31. libavcodec/bfin/dsputil_bfin.h +11 −10
  32. libavcodec/bfin/fdct_bfin.S +4 −4
  33. libavcodec/bfin/idct_bfin.S +2 −2
  34. libavcodec/bfin/mpegvideo_bfin.c +1 −1
  35. libavcodec/bfin/pixels_bfin.S +4 −4
  36. libavcodec/bfin/vp3_bfin.c +2 −2
  37. libavcodec/bfin/vp3_idct_bfin.S +2 −2
  38. libavcodec/bink.c +3 −3
  39. libavcodec/cavs.c +1 −1
  40. libavcodec/cavs.h +1 −1
  41. libavcodec/cavsdec.c +4 −4
  42. libavcodec/cavsdsp.c +2 −2
  43. libavcodec/cavsdsp.h +1 −1
  44. libavcodec/dct-test.c +16 −15
  45. libavcodec/dnxhddec.c +7 −7
  46. libavcodec/dnxhdenc.c +10 −10
  47. libavcodec/dnxhdenc.h +2 −2
  48. libavcodec/dsputil.c +17 −17
  49. libavcodec/dsputil.h +45 −46
  50. libavcodec/dsputil_template.c +7 −7
  51. libavcodec/dv.c +2 −2
  52. libavcodec/dvdata.h +3 −3
  53. libavcodec/dvdec.c +4 −4
  54. libavcodec/eaidct.c +3 −3
  55. libavcodec/eaidct.h +1 −2
  56. libavcodec/eamad.c +3 −3
  57. libavcodec/eatgq.c +3 −3
  58. libavcodec/eatqi.c +3 −3
  59. libavcodec/faandct.c +3 −3
  60. libavcodec/faandct.h +3 −3
  61. libavcodec/faanidct.c +4 −4
  62. libavcodec/faanidct.h +3 −4
  63. libavcodec/h261dec.c +2 −2
  64. libavcodec/h261enc.c +4 −4
  65. libavcodec/h263.c +1 −1
  66. libavcodec/h263.h +4 −4
  67. libavcodec/h264.c +5 −5
  68. libavcodec/h264.h +3 −4
  69. libavcodec/h264_cabac.c +28 −8
  70. libavcodec/h264_cavlc.c +3 −3
  71. libavcodec/h264_mb_template.c +1 −1
  72. libavcodec/h264dsp.h +11 −13
  73. libavcodec/h264idct_template.c +12 −12
  74. libavcodec/h264pred.h +6 −6
  75. libavcodec/h264pred_template.c +10 −10
  76. libavcodec/ituh263dec.c +3 −3
  77. libavcodec/ituh263enc.c +2 −2
  78. libavcodec/jfdctfst.c +9 −9
  79. libavcodec/jfdctint_template.c +14 −14
  80. libavcodec/jrevdct.c +19 −19
  81. libavcodec/mdec.c +4 −4
  82. libavcodec/mimic.c +2 −2
  83. libavcodec/mjpegdec.c +6 −6
  84. libavcodec/mjpegdec.h +2 −2
  85. libavcodec/mjpegenc.c +2 −2
  86. libavcodec/mjpegenc.h +3 −2
  87. libavcodec/mpeg12.c +10 −10
  88. libavcodec/mpeg12.h +1 −1
  89. libavcodec/mpeg12enc.c +4 −4
  90. libavcodec/mpeg4video.h +2 −2
  91. libavcodec/mpeg4videodec.c +4 −4
  92. libavcodec/mpeg4videoenc.c +8 −8
  93. libavcodec/mpegvideo.c +22 −22
  94. libavcodec/mpegvideo.h +25 −25
  95. libavcodec/mpegvideo_enc.c +17 −17
  96. libavcodec/mpegvideo_xvmc.c +1 −1
  97. libavcodec/msmpeg4.c +3 −3
  98. libavcodec/msmpeg4.h +3 −4
  99. libavcodec/msmpeg4enc.c +2 −2
  100. libavcodec/ppc/dsputil_altivec.c +3 −3
  101. libavcodec/ppc/dsputil_ppc.c +7 −7
  102. libavcodec/ppc/h264_altivec.c +9 −9
  103. libavcodec/ppc/mpegvideo_altivec.c +1 −1
  104. libavcodec/ppc/vc1dsp_altivec.c +2 −2
  105. libavcodec/ppc/vp3dsp_altivec.c +2 −2
  106. libavcodec/proresdec.c +6 −5
  107. libavcodec/proresdsp.c +4 −3
  108. libavcodec/proresdsp.h +3 −3
  109. libavcodec/proresenc.c +9 −8
  110. libavcodec/rtjpeg.c +3 −3
  111. libavcodec/rtjpeg.h +1 −1
  112. libavcodec/rv34.c +10 −10
  113. libavcodec/rv34dsp.c +6 −6
  114. libavcodec/rv34dsp.h +2 −2
  115. libavcodec/sh4/dsputil_sh4.c +4 −4
  116. libavcodec/sh4/dsputil_sh4.h +1 −1
  117. libavcodec/sh4/idct_sh4.c +1 −1
  118. libavcodec/simple_idct.c +9 −9
  119. libavcodec/simple_idct.h +11 −12
  120. libavcodec/simple_idct_template.c +7 −7
  121. libavcodec/sparc/dsputil_vis.h +3 −4
  122. libavcodec/sparc/simple_idct_vis.c +3 −3
  123. libavcodec/svq3.c +3 −3
  124. libavcodec/vc1.h +1 −1
  125. libavcodec/vc1dec.c +5 −5
  126. libavcodec/vc1dsp.c +14 −14
  127. libavcodec/vc1dsp.h +10 −10
  128. libavcodec/vp3.c +4 −4
  129. libavcodec/vp3dsp.c +8 −3
  130. libavcodec/vp3dsp.h +3 −4
  131. libavcodec/vp56.h +3 −3
  132. libavcodec/vp8.c +2 −2
  133. libavcodec/vp8.h +2 −2
  134. libavcodec/vp8dsp.c +7 −7
  135. libavcodec/vp8dsp.h +8 −7
  136. libavcodec/wmv2.c +2 −2
  137. libavcodec/wmv2.h +1 −1
  138. libavcodec/wmv2dec.c +2 −2
  139. libavcodec/wmv2dsp.c +3 −2
  140. libavcodec/wmv2dsp.h +2 −3
  141. libavcodec/wmv2enc.c +1 −1
  142. libavcodec/x86/dnxhdenc.c +1 −1
  143. libavcodec/x86/dsputil_mmx.c +8 −8
  144. libavcodec/x86/dsputil_mmx.h +3 −3
  145. libavcodec/x86/dsputilenc.asm +2 −2
  146. libavcodec/x86/dsputilenc_mmx.c +4 −4
  147. libavcodec/x86/h264_idct.asm +13 −13
  148. libavcodec/x86/h264_intrapred_init.c +1 −0
  149. libavcodec/x86/h264dsp_init.c +4 −4
  150. libavcodec/x86/idct_mmx_xvid.c +4 −4
  151. libavcodec/x86/idct_xvid.h +4 −6
  152. libavcodec/x86/mpegvideo.c +8 −8
  153. libavcodec/x86/mpegvideoenc_template.c +1 −1
  154. libavcodec/x86/proresdsp.asm +1 −1
  155. libavcodec/x86/proresdsp_init.c +4 −3
  156. libavcodec/x86/rv34dsp.asm +1 −1
  157. libavcodec/x86/rv34dsp_init.c +3 −3
  158. libavcodec/x86/simple_idct.c +2 −2
  159. libavcodec/x86/vc1dsp_mmx.c +4 −4
  160. libavcodec/x86/vp3dsp_init.c +6 −5
  161. libavcodec/x86/vp8dsp.asm +5 −5
  162. libavcodec/x86/vp8dsp_init.c +9 −9
  163. tools/patcheck +1 −1
doc/optimization.txt+1−1
@@ -148,7 +148,7 @@ Alignment: · 147 unmodified lines
148148 Some instructions on some architectures have strict alignment restrictions,
149149 for example most SSE/SSE2 instructions on x86.
150150 The minimum guaranteed alignment is written in the .h files, for example:
151− void (*put_pixels_clamped)(const DCTELEM *block/*align 16*/, UINT8 *pixels/*align 8*/, int line_size);
151+ void (*put_pixels_clamped)(const int16_t *block/*align 16*/, UINT8 *pixels/*align 8*/, int line_size);
152152
153153
154154 General Tips:
libavcodec/4xm.c+5−5
@@ -139,7 +139,7 @@ typedef struct FourXContext { · 138 unmodified lines
139139 int mv[256];
140140 VLC pre_vlc;
141141 int last_dc;
142− DECLARE_ALIGNED(16, DCTELEM, block)[6][64];
142+ DECLARE_ALIGNED(16, int16_t, block)[6][64];
143143 void *bitstream_buffer;
144144 unsigned int bitstream_buffer_size;
145145 int version;
@@ -154,7 +154,7 @@ typedef struct FourXContext { · 8 unmodified lines
154154
155155 #define MULTIPLY(var, const) (((var) * (const)) >> 16)
156156
157−static void idct(DCTELEM block[64])
157+static void idct(int16_t block[64])
158158 {
159159 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
160160 int tmp10, tmp11, tmp12, tmp13;
@@ -451,7 +451,7 @@ static int decode_p_frame(FourXContext *f, const uint8_t *buf, int length) · 290 unmodified lines
451451 * decode block and dequantize.
452452 * Note this is almost identical to MJPEG.
453453 */
454−static int decode_i_block(FourXContext *f, DCTELEM *block)
454+static int decode_i_block(FourXContext *f, int16_t *block)
455455 {
456456 int code, i, j, level, val;
457457
@@ -496,7 +496,7 @@ static int decode_i_block(FourXContext *f, DCTELEM *block) · 38 unmodified lines
496496
497497 static inline void idct_put(FourXContext *f, int x, int y)
498498 {
499− DCTELEM (*block)[64] = f->block;
499+ int16_t (*block)[64] = f->block;
500500 int stride = f->current_picture->linesize[0] >> 1;
501501 int i;
502502 uint16_t *dst = ((uint16_t*)f->current_picture->data[0]) + y * stride + x;
@@ -517,7 +517,7 @@ static inline void idct_put(FourXContext *f, int x, int y) · 14 unmodified lines
517517 * cr = (-1b - 4g + 5r) / 14 */
518518 for (y = 0; y < 8; y++) {
519519 for (x = 0; x < 8; x++) {
520− DCTELEM *temp = block[(x >> 2) + 2 * (y >> 2)] +
520+ int16_t *temp = block[(x >> 2) + 2 * (y >> 2)] +
521521 2 * (x & 3) + 2 * 8 * (y & 3); // FIXME optimize
522522 int cb = block[4][x + 8 * y];
523523 int cr = block[5][x + 8 * y];
libavcodec/alpha/dsputil_alpha.c+6−6
@@ -23,15 +23,15 @@ · 22 unmodified lines
2323 #include "dsputil_alpha.h"
2424 #include "asm.h"
2525
26−void (*put_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels,
26+void (*put_pixels_clamped_axp_p)(const int16_t *block, uint8_t *pixels,
2727 int line_size);
28−void (*add_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels,
28+void (*add_pixels_clamped_axp_p)(const int16_t *block, uint8_t *pixels,
2929 int line_size);
3030
3131 #if 0
3232 /* These functions were the base for the optimized assembler routines,
3333 and remain here for documentation purposes. */
34−static void put_pixels_clamped_mvi(const DCTELEM *block, uint8_t *pixels,
34+static void put_pixels_clamped_mvi(const int16_t *block, uint8_t *pixels,
3535 int line_size)
3636 {
3737 int i = 8;
@@ -55,7 +55,7 @@ static void put_pixels_clamped_mvi(const DCTELEM *block, uint8_t *pixels, · 17 unmodified lines
5555 } while (--i);
5656 }
5757
58−void add_pixels_clamped_mvi(const DCTELEM *block, uint8_t *pixels,
58+void add_pixels_clamped_mvi(const int16_t *block, uint8_t *pixels,
5959 int line_size)
6060 {
6161 int h = 8;
@@ -100,9 +100,9 @@ void add_pixels_clamped_mvi(const DCTELEM *block, uint8_t *pixels, · 38 unmodified lines
100100 }
101101 #endif
102102
103−static void clear_blocks_axp(DCTELEM *blocks) {
103+static void clear_blocks_axp(int16_t *blocks) {
104104 uint64_t *p = (uint64_t *) blocks;
105− int n = sizeof(DCTELEM) * 6 * 64;
105+ int n = sizeof(int16_t) * 6 * 64;
106106
107107 do {
108108 p[0] = 0;
libavcodec/alpha/dsputil_alpha.h+10−10
@@ -19,26 +19,26 @@ · 18 unmodified lines
1919 #ifndef AVCODEC_ALPHA_DSPUTIL_ALPHA_H
2020 #define AVCODEC_ALPHA_DSPUTIL_ALPHA_H
2121
22−#include "libavcodec/dsputil.h"
22+#include <stdint.h>
2323
24−void ff_simple_idct_axp(DCTELEM *block);
25−void ff_simple_idct_put_axp(uint8_t *dest, int line_size, DCTELEM *block);
26−void ff_simple_idct_add_axp(uint8_t *dest, int line_size, DCTELEM *block);
24+void ff_simple_idct_axp(int16_t *block);
25+void ff_simple_idct_put_axp(uint8_t *dest, int line_size, int16_t *block);
26+void ff_simple_idct_add_axp(uint8_t *dest, int line_size, int16_t *block);
2727
2828 void put_pixels_axp_asm(uint8_t *block, const uint8_t *pixels,
2929 int line_size, int h);
30−void put_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels,
30+void put_pixels_clamped_mvi_asm(const int16_t *block, uint8_t *pixels,
3131 int line_size);
32−void add_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels,
32+void add_pixels_clamped_mvi_asm(const int16_t *block, uint8_t *pixels,
3333 int line_size);
34−extern void (*put_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels,
34+extern void (*put_pixels_clamped_axp_p)(const int16_t *block, uint8_t *pixels,
3535 int line_size);
36−extern void (*add_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels,
36+extern void (*add_pixels_clamped_axp_p)(const int16_t *block, uint8_t *pixels,
3737 int line_size);
3838
39−void get_pixels_mvi(DCTELEM *restrict block,
39+void get_pixels_mvi(int16_t *restrict block,
4040 const uint8_t *restrict pixels, int line_size);
41−void diff_pixels_mvi(DCTELEM *block, const uint8_t *s1, const uint8_t *s2,
41+void diff_pixels_mvi(int16_t *block, const uint8_t *s1, const uint8_t *s2,
4242 int stride);
4343 int pix_abs8x8_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h);
4444 int pix_abs16x16_mvi_asm(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h);
libavcodec/alpha/dsputil_alpha_asm.S+2−2
@@ -135,7 +135,7 @@ $aligned: · 134 unmodified lines
135135 .end put_pixels_axp_asm
136136
137137 /************************************************************************
138− * void put_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels,
138+ * void put_pixels_clamped_mvi_asm(const int16_t *block, uint8_t *pixels,
139139 * int line_size)
140140 */
141141 .align 6
@@ -185,7 +185,7 @@ put_pixels_clamped_mvi_asm: · 43 unmodified lines
185185 .end put_pixels_clamped_mvi_asm
186186
187187 /************************************************************************
188− * void add_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels,
188+ * void add_pixels_clamped_mvi_asm(const int16_t *block, uint8_t *pixels,
189189 * int line_size)
190190 */
191191 .align 6
libavcodec/alpha/motion_est_alpha.c+2−2
@@ -23,7 +23,7 @@ · 22 unmodified lines
2323 #include "dsputil_alpha.h"
2424 #include "asm.h"
2525
26−void get_pixels_mvi(DCTELEM *restrict block,
26+void get_pixels_mvi(int16_t *restrict block,
2727 const uint8_t *restrict pixels, int line_size)
2828 {
2929 int h = 8;
@@ -40,7 +40,7 @@ void get_pixels_mvi(DCTELEM *restrict block, · 10 unmodified lines
4040 } while (--h);
4141 }
4242
43−void diff_pixels_mvi(DCTELEM *block, const uint8_t *s1, const uint8_t *s2,
43+void diff_pixels_mvi(int16_t *block, const uint8_t *s1, const uint8_t *s2,
4444 int stride) {
4545 int h = 8;
4646 uint64_t mask = 0x4040;
libavcodec/alpha/mpegvideo_alpha.c+4−4
@@ -23,7 +23,7 @@ · 22 unmodified lines
2323 #include "libavcodec/mpegvideo.h"
2424 #include "asm.h"
2525
26−static void dct_unquantize_h263_axp(DCTELEM *block, int n_coeffs,
26+static void dct_unquantize_h263_axp(int16_t *block, int n_coeffs,
2727 uint64_t qscale, uint64_t qadd)
2828 {
2929 uint64_t qmul = qscale << 1;
@@ -69,12 +69,12 @@ static void dct_unquantize_h263_axp(DCTELEM *block, int n_coeffs, · 39 unmodified lines
6969 }
7070 }
7171
72−static void dct_unquantize_h263_intra_axp(MpegEncContext *s, DCTELEM *block,
72+static void dct_unquantize_h263_intra_axp(MpegEncContext *s, int16_t *block,
7373 int n, int qscale)
7474 {
7575 int n_coeffs;
7676 uint64_t qadd;
77− DCTELEM block0 = block[0];
77+ int16_t block0 = block[0];
7878
7979 if (!s->h263_aic) {
8080 if (n < 4)
@@ -96,7 +96,7 @@ static void dct_unquantize_h263_intra_axp(MpegEncContext *s, DCTELEM *block, · 15 unmodified lines
9696 block[0] = block0;
9797 }
9898
99−static void dct_unquantize_h263_inter_axp(MpegEncContext *s, DCTELEM *block,
99+static void dct_unquantize_h263_inter_axp(MpegEncContext *s, int16_t *block,
100100 int n, int qscale)
101101 {
102102 int n_coeffs = s->inter_scantable.raster_end[s->block_last_index[n]];
libavcodec/alpha/simple_idct_alpha.c+6−6
@@ -44,7 +44,7 @@ · 43 unmodified lines
4444 #define COL_SHIFT 20
4545
4646 /* 0: all entries 0, 1: only first entry nonzero, 2: otherwise */
47−static inline int idct_row(DCTELEM *row)
47+static inline int idct_row(int16_t *row)
4848 {
4949 int a0, a1, a2, a3, b0, b1, b2, b3, t;
5050 uint64_t l, r, t2;
@@ -152,7 +152,7 @@ static inline int idct_row(DCTELEM *row) · 101 unmodified lines
152152 return 2;
153153 }
154154
155−static inline void idct_col(DCTELEM *col)
155+static inline void idct_col(int16_t *col)
156156 {
157157 int a0, a1, a2, a3, b0, b1, b2, b3;
158158
@@ -229,7 +229,7 @@ static inline void idct_col(DCTELEM *col) · 70 unmodified lines
229229
230230 /* If all rows but the first one are zero after row transformation,
231231 all rows will be identical after column transformation. */
232−static inline void idct_col2(DCTELEM *col)
232+static inline void idct_col2(int16_t *col)
233233 {
234234 int i;
235235 uint64_t l, r;
@@ -251,7 +251,7 @@ static inline void idct_col2(DCTELEM *col) · 15 unmodified lines
251251 stq(l, col + 14 * 4); stq(r, col + 15 * 4);
252252 }
253253
254−void ff_simple_idct_axp(DCTELEM *block)
254+void ff_simple_idct_axp(int16_t *block)
255255 {
256256
257257 int i;
@@ -291,13 +291,13 @@ void ff_simple_idct_axp(DCTELEM *block) · 33 unmodified lines
291291 }
292292 }
293293
294−void ff_simple_idct_put_axp(uint8_t *dest, int line_size, DCTELEM *block)
294+void ff_simple_idct_put_axp(uint8_t *dest, int line_size, int16_t *block)
295295 {
296296 ff_simple_idct_axp(block);
297297 put_pixels_clamped_axp_p(block, dest, line_size);
298298 }
299299
300−void ff_simple_idct_add_axp(uint8_t *dest, int line_size, DCTELEM *block)
300+void ff_simple_idct_add_axp(uint8_t *dest, int line_size, int16_t *block)
301301 {
302302 ff_simple_idct_axp(block);
303303 add_pixels_clamped_axp_p(block, dest, line_size);
libavcodec/arm/dsputil_init_arm.c+9−9
@@ -23,12 +23,12 @@ · 22 unmodified lines
2323 #include "libavcodec/dsputil.h"
2424 #include "dsputil_arm.h"
2525
26−void ff_j_rev_dct_arm(DCTELEM *data);
27−void ff_simple_idct_arm(DCTELEM *data);
26+void ff_j_rev_dct_arm(int16_t *data);
27+void ff_simple_idct_arm(int16_t *data);
2828
2929 /* XXX: local hack */
30−static void (*ff_put_pixels_clamped)(const DCTELEM *block, uint8_t *pixels, int line_size);
31−static void (*ff_add_pixels_clamped)(const DCTELEM *block, uint8_t *pixels, int line_size);
30+static void (*ff_put_pixels_clamped)(const int16_t *block, uint8_t *pixels, int line_size);
31+static void (*ff_add_pixels_clamped)(const int16_t *block, uint8_t *pixels, int line_size);
3232
3333 void ff_put_pixels8_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h);
3434 void ff_put_pixels8_x2_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h);
@@ -48,27 +48,27 @@ CALL_2X_PIXELS(ff_put_no_rnd_pixels16_x2_arm, ff_put_no_rnd_pixels8_x2_arm, 8) · 13 unmodified lines
4848 CALL_2X_PIXELS(ff_put_no_rnd_pixels16_y2_arm, ff_put_no_rnd_pixels8_y2_arm, 8)
4949 CALL_2X_PIXELS(ff_put_no_rnd_pixels16_xy2_arm, ff_put_no_rnd_pixels8_xy2_arm,8)
5050
51−void ff_add_pixels_clamped_arm(const DCTELEM *block, uint8_t *dest,
51+void ff_add_pixels_clamped_arm(const int16_t *block, uint8_t *dest,
5252 int line_size);
5353
5454 /* XXX: those functions should be suppressed ASAP when all IDCTs are
5555 converted */
56−static void j_rev_dct_arm_put(uint8_t *dest, int line_size, DCTELEM *block)
56+static void j_rev_dct_arm_put(uint8_t *dest, int line_size, int16_t *block)
5757 {
5858 ff_j_rev_dct_arm (block);
5959 ff_put_pixels_clamped(block, dest, line_size);
6060 }
61−static void j_rev_dct_arm_add(uint8_t *dest, int line_size, DCTELEM *block)
61+static void j_rev_dct_arm_add(uint8_t *dest, int line_size, int16_t *block)
6262 {
6363 ff_j_rev_dct_arm (block);
6464 ff_add_pixels_clamped(block, dest, line_size);
6565 }
66−static void simple_idct_arm_put(uint8_t *dest, int line_size, DCTELEM *block)
66+static void simple_idct_arm_put(uint8_t *dest, int line_size, int16_t *block)
6767 {
6868 ff_simple_idct_arm (block);
6969 ff_put_pixels_clamped(block, dest, line_size);
7070 }
71−static void simple_idct_arm_add(uint8_t *dest, int line_size, DCTELEM *block)
71+static void simple_idct_arm_add(uint8_t *dest, int line_size, int16_t *block)
7272 {
7373 ff_simple_idct_arm (block);
7474 ff_add_pixels_clamped(block, dest, line_size);
libavcodec/arm/dsputil_init_armv5te.c+3−3
@@ -21,9 +21,9 @@ · 20 unmodified lines
2121 #include "libavcodec/dsputil.h"
2222 #include "dsputil_arm.h"
2323
24−void ff_simple_idct_armv5te(DCTELEM *data);
25−void ff_simple_idct_put_armv5te(uint8_t *dest, int line_size, DCTELEM *data);
26−void ff_simple_idct_add_armv5te(uint8_t *dest, int line_size, DCTELEM *data);
24+void ff_simple_idct_armv5te(int16_t *data);
25+void ff_simple_idct_put_armv5te(uint8_t *dest, int line_size, int16_t *data);
26+void ff_simple_idct_add_armv5te(uint8_t *dest, int line_size, int16_t *data);
2727
2828 av_cold void ff_dsputil_init_armv5te(DSPContext *c, AVCodecContext *avctx)
2929 {
libavcodec/arm/dsputil_init_armv6.c+6−6
@@ -24,9 +24,9 @@ · 23 unmodified lines
2424 #include "libavcodec/dsputil.h"
2525 #include "dsputil_arm.h"
2626
27−void ff_simple_idct_armv6(DCTELEM *data);
28−void ff_simple_idct_put_armv6(uint8_t *dest, int line_size, DCTELEM *data);
29−void ff_simple_idct_add_armv6(uint8_t *dest, int line_size, DCTELEM *data);
27+void ff_simple_idct_armv6(int16_t *data);
28+void ff_simple_idct_put_armv6(uint8_t *dest, int line_size, int16_t *data);
29+void ff_simple_idct_add_armv6(uint8_t *dest, int line_size, int16_t *data);
3030
3131 void ff_put_pixels16_armv6(uint8_t *, const uint8_t *, int, int);
3232 void ff_put_pixels16_x2_armv6(uint8_t *, const uint8_t *, int, int);
@@ -46,12 +46,12 @@ void ff_put_pixels8_y2_no_rnd_armv6(uint8_t *, const uint8_t *, int, int); · 13 unmodified lines
4646
4747 void ff_avg_pixels8_armv6(uint8_t *, const uint8_t *, int, int);
4848
49−void ff_add_pixels_clamped_armv6(const DCTELEM *block,
49+void ff_add_pixels_clamped_armv6(const int16_t *block,
5050 uint8_t *restrict pixels,
5151 int line_size);
5252
53−void ff_get_pixels_armv6(DCTELEM *block, const uint8_t *pixels, int stride);
54−void ff_diff_pixels_armv6(DCTELEM *block, const uint8_t *s1,
53+void ff_get_pixels_armv6(int16_t *block, const uint8_t *pixels, int stride);
54+void ff_diff_pixels_armv6(int16_t *block, const uint8_t *s1,
5555 const uint8_t *s2, int stride);
5656
5757 int ff_pix_abs16_armv6(void *s, uint8_t *blk1, uint8_t *blk2,
libavcodec/arm/dsputil_init_neon.c+8−8
@@ -25,12 +25,12 @@ · 24 unmodified lines
2525 #include "libavcodec/dsputil.h"
2626 #include "dsputil_arm.h"
2727
28−void ff_simple_idct_neon(DCTELEM *data);
29−void ff_simple_idct_put_neon(uint8_t *dest, int line_size, DCTELEM *data);
30−void ff_simple_idct_add_neon(uint8_t *dest, int line_size, DCTELEM *data);
28+void ff_simple_idct_neon(int16_t *data);
29+void ff_simple_idct_put_neon(uint8_t *dest, int line_size, int16_t *data);
30+void ff_simple_idct_add_neon(uint8_t *dest, int line_size, int16_t *data);
3131
32−void ff_clear_block_neon(DCTELEM *block);
33−void ff_clear_blocks_neon(DCTELEM *blocks);
32+void ff_clear_block_neon(int16_t *block);
33+void ff_clear_blocks_neon(int16_t *blocks);
3434
3535 void ff_put_pixels16_neon(uint8_t *, const uint8_t *, int, int);
3636 void ff_put_pixels16_x2_neon(uint8_t *, const uint8_t *, int, int);
@@ -62,9 +62,9 @@ void ff_avg_pixels8_x2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); · 25 unmodified lines
6262 void ff_avg_pixels8_y2_no_rnd_neon(uint8_t *, const uint8_t *, int, int);
6363 void ff_avg_pixels8_xy2_no_rnd_neon(uint8_t *, const uint8_t *, int, int);
6464
65−void ff_add_pixels_clamped_neon(const DCTELEM *, uint8_t *, int);
66−void ff_put_pixels_clamped_neon(const DCTELEM *, uint8_t *, int);
67−void ff_put_signed_pixels_clamped_neon(const DCTELEM *, uint8_t *, int);
65+void ff_add_pixels_clamped_neon(const int16_t *, uint8_t *, int);
66+void ff_put_pixels_clamped_neon(const int16_t *, uint8_t *, int);
67+void ff_put_signed_pixels_clamped_neon(const int16_t *, uint8_t *, int);
6868
6969 void ff_put_h264_qpel16_mc00_neon(uint8_t *, uint8_t *, int);
7070 void ff_put_h264_qpel16_mc10_neon(uint8_t *, uint8_t *, int);
libavcodec/arm/h264dsp_init_arm.c+8−8
@@ -50,22 +50,22 @@ void ff_biweight_h264_pixels_4_neon(uint8_t *dst, uint8_t *src, int stride, · 49 unmodified lines
5050 int height, int log2_den, int weightd,
5151 int weights, int offset);
5252
53−void ff_h264_idct_add_neon(uint8_t *dst, DCTELEM *block, int stride);
54−void ff_h264_idct_dc_add_neon(uint8_t *dst, DCTELEM *block, int stride);
53+void ff_h264_idct_add_neon(uint8_t *dst, int16_t *block, int stride);
54+void ff_h264_idct_dc_add_neon(uint8_t *dst, int16_t *block, int stride);
5555 void ff_h264_idct_add16_neon(uint8_t *dst, const int *block_offset,
56− DCTELEM *block, int stride,
56+ int16_t *block, int stride,
5757 const uint8_t nnzc[6*8]);
5858 void ff_h264_idct_add16intra_neon(uint8_t *dst, const int *block_offset,
59− DCTELEM *block, int stride,
59+ int16_t *block, int stride,
6060 const uint8_t nnzc[6*8]);
6161 void ff_h264_idct_add8_neon(uint8_t **dest, const int *block_offset,
62− DCTELEM *block, int stride,
62+ int16_t *block, int stride,
6363 const uint8_t nnzc[6*8]);
6464
65−void ff_h264_idct8_add_neon(uint8_t *dst, DCTELEM *block, int stride);
66−void ff_h264_idct8_dc_add_neon(uint8_t *dst, DCTELEM *block, int stride);
65+void ff_h264_idct8_add_neon(uint8_t *dst, int16_t *block, int stride);
66+void ff_h264_idct8_dc_add_neon(uint8_t *dst, int16_t *block, int stride);
6767 void ff_h264_idct8_add4_neon(uint8_t *dst, const int *block_offset,
68− DCTELEM *block, int stride,
68+ int16_t *block, int stride,
6969 const uint8_t nnzc[6*8]);
7070
7171 static void ff_h264dsp_init_neon(H264DSPContext *c, const int bit_depth, const int chroma_format_idc)
libavcodec/arm/jrevdct_arm.S+1−1
@@ -66,7 +66,7 @@ row_loop: · 65 unmodified lines
6666 ldrsh r2, [lr, # 2] @ r2 = 'd2'
6767
6868 @ Optimization for row that have all items except the first set to 0
69− @ (this works as the DCTELEMS are always 4-byte aligned)
69+ @ (this works as the int16_t are always 4-byte aligned)
7070 ldr r5, [lr, # 0]
7171 ldr r6, [lr, # 4]
7272 ldr r3, [lr, # 8]
libavcodec/arm/mpegvideo_arm.c+2−2
@@ -34,9 +34,9 @@ CHK_OFFS(MpegEncContext, inter_scantable.raster_end, INTER_SCANTAB_RASTER_END); · 33 unmodified lines
3434 CHK_OFFS(MpegEncContext, h263_aic, H263_AIC);
3535 #endif
3636
37−void ff_dct_unquantize_h263_inter_neon(MpegEncContext *s, DCTELEM *block,
37+void ff_dct_unquantize_h263_inter_neon(MpegEncContext *s, int16_t *block,
3838 int n, int qscale);
39−void ff_dct_unquantize_h263_intra_neon(MpegEncContext *s, DCTELEM *block,
39+void ff_dct_unquantize_h263_intra_neon(MpegEncContext *s, int16_t *block,
4040 int n, int qscale);
4141
4242 void ff_MPV_common_init_arm(MpegEncContext *s)
libavcodec/arm/mpegvideo_armv5te.c+4−4
@@ -24,7 +24,7 @@ · 23 unmodified lines
2424 #include "libavcodec/mpegvideo.h"
2525 #include "mpegvideo_arm.h"
2626
27−void ff_dct_unquantize_h263_armv5te(DCTELEM *block, int qmul, int qadd, int count);
27+void ff_dct_unquantize_h263_armv5te(int16_t *block, int qmul, int qadd, int count);
2828
2929 #ifdef ENABLE_ARM_TESTS
3030 /**
@@ -32,7 +32,7 @@ void ff_dct_unquantize_h263_armv5te(DCTELEM *block, int qmul, int qadd, int coun · 1 unmodified line
3232 * have optimized implementations for each architecture. Is also used as a reference
3333 * implementation in regression tests
3434 */
35−static inline void dct_unquantize_h263_helper_c(DCTELEM *block, int qmul, int qadd, int count)
35+static inline void dct_unquantize_h263_helper_c(int16_t *block, int qmul, int qadd, int count)
3636 {
3737 int i, level;
3838 for (i = 0; i < count; i++) {
@@ -50,7 +50,7 @@ static inline void dct_unquantize_h263_helper_c(DCTELEM *block, int qmul, int qa · 11 unmodified lines
5050 #endif
5151
5252 static void dct_unquantize_h263_intra_armv5te(MpegEncContext *s,
53− DCTELEM *block, int n, int qscale)
53+ int16_t *block, int n, int qscale)
5454 {
5555 int level, qmul, qadd;
5656 int nCoeffs;
@@ -79,7 +79,7 @@ static void dct_unquantize_h263_intra_armv5te(MpegEncContext *s, · 22 unmodified lines
7979 }
8080
8181 static void dct_unquantize_h263_inter_armv5te(MpegEncContext *s,
82− DCTELEM *block, int n, int qscale)
82+ int16_t *block, int n, int qscale)
8383 {
8484 int qmul, qadd;
8585 int nCoeffs;
libavcodec/arm/rv34dsp_init_arm.c+3−3
@@ -24,11 +24,11 @@ · 23 unmodified lines
2424 #include "libavcodec/rv34dsp.h"
2525 #include "libavutil/arm/cpu.h"
2626
27−void ff_rv34_inv_transform_noround_neon(DCTELEM *block);
27+void ff_rv34_inv_transform_noround_neon(int16_t *block);
2828
29−void ff_rv34_inv_transform_noround_dc_neon(DCTELEM *block);
29+void ff_rv34_inv_transform_noround_dc_neon(int16_t *block);
3030
31−void ff_rv34_idct_add_neon(uint8_t *dst, ptrdiff_t stride, DCTELEM *block);
31+void ff_rv34_idct_add_neon(uint8_t *dst, ptrdiff_t stride, int16_t *block);
3232 void ff_rv34_idct_dc_add_neon(uint8_t *dst, ptrdiff_t stride, int dc);
3333
3434 void ff_rv34dsp_init_arm(RV34DSPContext *c, DSPContext* dsp)
libavcodec/arm/rv34dsp_neon.S+3−3
@@ -67,7 +67,7 @@ · 66 unmodified lines
6767 vsub.s32 q15, q14, q9 @ z0 - z3
6868 .endm
6969
70−/* void rv34_idct_add_c(uint8_t *dst, int stride, DCTELEM *block) */
70+/* void rv34_idct_add_c(uint8_t *dst, int stride, int16_t *block) */
7171 function ff_rv34_idct_add_neon, export=1
7272 mov r3, r0
7373 rv34_inv_transform r2
@@ -97,7 +97,7 @@ function ff_rv34_idct_add_neon, export=1 · 23 unmodified lines
9797 bx lr
9898 endfunc
9999
100−/* void rv34_inv_transform_noround_neon(DCTELEM *block); */
100+/* void rv34_inv_transform_noround_neon(int16_t *block); */
101101 function ff_rv34_inv_transform_noround_neon, export=1
102102 rv34_inv_transform r0
103103 vshl.s32 q11, q2, #1
@@ -142,7 +142,7 @@ function ff_rv34_idct_dc_add_neon, export=1 · 38 unmodified lines
142142 bx lr
143143 endfunc
144144
145−/* void rv34_inv_transform_dc_noround_c(DCTELEM *block) */
145+/* void rv34_inv_transform_dc_noround_c(int16_t *block) */
146146 function ff_rv34_inv_transform_noround_dc_neon, export=1
147147 vld1.16 {d28[]}, [r0,:16] @ block[0]
148148 vmov.i16 d4, #251
libavcodec/arm/simple_idct_armv6.S+3−3
@@ -375,7 +375,7 @@ endfunc · 374 unmodified lines
375375 sub r0, r0, #(16*7)
376376 .endm
377377
378−/* void ff_simple_idct_armv6(DCTELEM *data); */
378+/* void ff_simple_idct_armv6(int16_t *data); */
379379 function ff_simple_idct_armv6, export=1
380380 push {r4-r11, lr}
381381 sub sp, sp, #128
@@ -390,7 +390,7 @@ function ff_simple_idct_armv6, export=1 · 8 unmodified lines
390390 pop {r4-r11, pc}
391391 endfunc
392392
393−/* ff_simple_idct_add_armv6(uint8_t *dest, int line_size, DCTELEM *data); */
393+/* ff_simple_idct_add_armv6(uint8_t *dest, int line_size, int16_t *data); */
394394 function ff_simple_idct_add_armv6, export=1
395395 push {r0, r1, r4-r11, lr}
396396 sub sp, sp, #128
@@ -407,7 +407,7 @@ function ff_simple_idct_add_armv6, export=1 · 10 unmodified lines
407407 pop {r4-r11, pc}
408408 endfunc
409409
410−/* ff_simple_idct_put_armv6(uint8_t *dest, int line_size, DCTELEM *data); */
410+/* ff_simple_idct_put_armv6(uint8_t *dest, int line_size, int16_t *data); */
411411 function ff_simple_idct_put_armv6, export=1
412412 push {r0, r1, r4-r11, lr}
413413 sub sp, sp, #128
libavcodec/arm/simple_idct_neon.S+3−3
@@ -261,7 +261,7 @@ endconst · 260 unmodified lines
261261 pop {r4-r7, pc}
262262 .endm
263263
264−/* void ff_simple_idct_put_neon(uint8_t *dst, int line_size, DCTELEM *data); */
264+/* void ff_simple_idct_put_neon(uint8_t *dst, int line_size, int16_t *data); */
265265 function ff_simple_idct_put_neon, export=1
266266 idct_start r2
267267
@@ -316,7 +316,7 @@ function idct_col4_add8_neon · 48 unmodified lines
316316 bx lr
317317 endfunc
318318
319−/* void ff_simple_idct_add_neon(uint8_t *dst, int line_size, DCTELEM *data); */
319+/* void ff_simple_idct_add_neon(uint8_t *dst, int line_size, int16_t *data); */
320320 function ff_simple_idct_add_neon, export=1
321321 idct_start r2
322322
@@ -355,7 +355,7 @@ function idct_col4_st16_neon · 32 unmodified lines
355355 bx lr
356356 endfunc
357357
358−/* void ff_simple_idct_neon(DCTELEM *data); */
358+/* void ff_simple_idct_neon(int16_t *data); */
359359 function ff_simple_idct_neon, export=1
360360 idct_start r0
361361
libavcodec/arm/vp3dsp_init_arm.c+3−3
@@ -24,9 +24,9 @@ · 23 unmodified lines
2424 #include "libavcodec/dsputil.h"
2525 #include "libavcodec/vp3dsp.h"
2626
27−void ff_vp3_idct_put_neon(uint8_t *dest, int line_size, DCTELEM *data);
28−void ff_vp3_idct_add_neon(uint8_t *dest, int line_size, DCTELEM *data);
29−void ff_vp3_idct_dc_add_neon(uint8_t *dest, int line_size, const DCTELEM *data);
27+void ff_vp3_idct_put_neon(uint8_t *dest, int line_size, int16_t *data);
28+void ff_vp3_idct_add_neon(uint8_t *dest, int line_size, int16_t *data);
29+void ff_vp3_idct_dc_add_neon(uint8_t *dest, int line_size, const int16_t *data);
3030
3131 void ff_vp3_v_loop_filter_neon(uint8_t *, int, int *);
3232 void ff_vp3_h_loop_filter_neon(uint8_t *, int, int *);
libavcodec/arm/vp8.h+1−1
@@ -23,7 +23,7 @@ · 22 unmodified lines
2323
2424 #if HAVE_ARMV6_EXTERNAL
2525 #define decode_block_coeffs_internal ff_decode_block_coeffs_armv6
26−int ff_decode_block_coeffs_armv6(VP56RangeCoder *rc, DCTELEM block[16],
26+int ff_decode_block_coeffs_armv6(VP56RangeCoder *rc, int16_t block[16],
2727 uint8_t probs[8][3][NUM_DCT_TOKENS-1],
2828 int i, uint8_t *token_prob, int16_t qmul[2]);
2929 #endif
libavcodec/arm/vp8dsp_armv6.S+6−6
@@ -56,7 +56,7 @@ · 55 unmodified lines
5656
5757 @ idct
5858
59−@ void vp8_luma_dc_wht(DCTELEM block[4][4][16], DCTELEM dc[16])
59+@ void vp8_luma_dc_wht(int16_t block[4][4][16], int16_t dc[16])
6060 function ff_vp8_luma_dc_wht_armv6, export=1
6161 push {r4-r10, lr}
6262
@@ -179,7 +179,7 @@ function ff_vp8_luma_dc_wht_armv6, export=1 · 116 unmodified lines
179179 pop {r4-r10, pc}
180180 endfunc
181181
182−@ void vp8_luma_dc_wht_dc(DCTELEM block[4][4][16], DCTELEM dc[16])
182+@ void vp8_luma_dc_wht_dc(int16_t block[4][4][16], int16_t dc[16])
183183 function ff_vp8_luma_dc_wht_dc_armv6, export=1
184184 ldrsh r2, [r1]
185185 mov r3, #0
@@ -192,7 +192,7 @@ function ff_vp8_luma_dc_wht_dc_armv6, export=1 · 6 unmodified lines
192192 bx lr
193193 endfunc
194194
195−@ void vp8_idct_add(uint8_t *dst, DCTELEM block[16], int stride)
195+@ void vp8_idct_add(uint8_t *dst, int16_t block[16], int stride)
196196 function ff_vp8_idct_add_armv6, export=1
197197 push {r4-r12, lr}
198198 sub sp, sp, #32
@@ -314,7 +314,7 @@ function ff_vp8_idct_add_armv6, export=1 · 115 unmodified lines
314314 pop {r4-r12, pc}
315315 endfunc
316316
317−@ void vp8_idct_dc_add(uint8_t *dst, DCTELEM block[16], int stride)
317+@ void vp8_idct_dc_add(uint8_t *dst, int16_t block[16], int stride)
318318 function ff_vp8_idct_dc_add_armv6, export=1
319319 push {r4-r6, lr}
320320 add r6, r0, r2, lsl #1
@@ -355,7 +355,7 @@ function ff_vp8_idct_dc_add_armv6, export=1 · 34 unmodified lines
355355 pop {r4-r6, pc}
356356 endfunc
357357
358−@ void vp8_idct_dc_add4uv(uint8_t *dst, DCTELEM block[4][16], int stride)
358+@ void vp8_idct_dc_add4uv(uint8_t *dst, int16_t block[4][16], int stride)
359359 function ff_vp8_idct_dc_add4uv_armv6, export=1
360360 push {r4, lr}
361361
@@ -371,7 +371,7 @@ function ff_vp8_idct_dc_add4uv_armv6, export=1 · 9 unmodified lines
371371 pop {r4, pc}
372372 endfunc
373373
374−@ void vp8_idct_dc_add4y(uint8_t *dst, DCTELEM block[4][16], int stride)
374+@ void vp8_idct_dc_add4y(uint8_t *dst, int16_t block[4][16], int stride)
375375 function ff_vp8_idct_dc_add4y_armv6, export=1
376376 push {r4, lr}
377377
libavcodec/arm/vp8dsp_init_armv6.c+6−6
@@ -22,13 +22,13 @@ · 21 unmodified lines
2222 #include "libavcodec/vp8dsp.h"
2323 #include "vp8dsp.h"
2424
25−void ff_vp8_luma_dc_wht_armv6(DCTELEM block[4][4][16], DCTELEM dc[16]);
26−void ff_vp8_luma_dc_wht_dc_armv6(DCTELEM block[4][4][16], DCTELEM dc[16]);
25+void ff_vp8_luma_dc_wht_armv6(int16_t block[4][4][16], int16_t dc[16]);
26+void ff_vp8_luma_dc_wht_dc_armv6(int16_t block[4][4][16], int16_t dc[16]);
2727
28−void ff_vp8_idct_add_armv6(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
29−void ff_vp8_idct_dc_add_armv6(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
30−void ff_vp8_idct_dc_add4y_armv6(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride);
31−void ff_vp8_idct_dc_add4uv_armv6(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride);
28+void ff_vp8_idct_add_armv6(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
29+void ff_vp8_idct_dc_add_armv6(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
30+void ff_vp8_idct_dc_add4y_armv6(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride);
31+void ff_vp8_idct_dc_add4uv_armv6(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride);
3232
3333 VP8_LF(armv6);
3434
libavcodec/arm/vp8dsp_init_neon.c+5−5
@@ -22,12 +22,12 @@ · 21 unmodified lines
2222 #include "libavcodec/vp8dsp.h"
2323 #include "vp8dsp.h"
2424
25−void ff_vp8_luma_dc_wht_neon(DCTELEM block[4][4][16], DCTELEM dc[16]);
25+void ff_vp8_luma_dc_wht_neon(int16_t block[4][4][16], int16_t dc[16]);
2626
27−void ff_vp8_idct_add_neon(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
28−void ff_vp8_idct_dc_add_neon(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
29−void ff_vp8_idct_dc_add4y_neon(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride);
30−void ff_vp8_idct_dc_add4uv_neon(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride);
27+void ff_vp8_idct_add_neon(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
28+void ff_vp8_idct_dc_add_neon(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
29+void ff_vp8_idct_dc_add4y_neon(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride);
30+void ff_vp8_idct_dc_add4uv_neon(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride);
3131
3232 VP8_LF(neon);
3333
libavcodec/asv.h+1−1
@@ -48,7 +48,7 @@ typedef struct ASV1Context{ · 47 unmodified lines
4848 int mb_height;
4949 int mb_width2;
5050 int mb_height2;
51− DECLARE_ALIGNED(16, DCTELEM, block)[6][64];
51+ DECLARE_ALIGNED(16, int16_t, block)[6][64];
5252 uint16_t intra_matrix[64];
5353 int q_intra_matrix[64];
5454 uint8_t *bitstream_buffer;
libavcodec/asvdec.c+4−4
@@ -97,7 +97,7 @@ static inline int asv2_get_level(GetBitContext *gb) · 96 unmodified lines
9797 return code - 31;
9898 }
9999
100−static inline int asv1_decode_block(ASV1Context *a, DCTELEM block[64])
100+static inline int asv1_decode_block(ASV1Context *a, int16_t block[64])
101101 {
102102 int i;
103103
@@ -128,7 +128,7 @@ static inline int asv1_decode_block(ASV1Context *a, DCTELEM block[64]) · 24 unmodified lines
128128 return 0;
129129 }
130130
131−static inline int asv2_decode_block(ASV1Context *a, DCTELEM block[64])
131+static inline int asv2_decode_block(ASV1Context *a, int16_t block[64])
132132 {
133133 int i, count, ccp;
134134
@@ -164,7 +164,7 @@ static inline int asv2_decode_block(ASV1Context *a, DCTELEM block[64]) · 29 unmodified lines
164164 return 0;
165165 }
166166
167−static inline int decode_mb(ASV1Context *a, DCTELEM block[6][64])
167+static inline int decode_mb(ASV1Context *a, int16_t block[6][64])
168168 {
169169 int i;
170170
@@ -186,7 +186,7 @@ static inline int decode_mb(ASV1Context *a, DCTELEM block[6][64]) · 15 unmodified lines
186186
187187 static inline void idct_put(ASV1Context *a, int mb_x, int mb_y)
188188 {
189− DCTELEM (*block)[64] = a->block;
189+ int16_t (*block)[64] = a->block;
190190 int linesize = a->picture.linesize[0];
191191
192192 uint8_t *dest_y = a->picture.data[0] + (mb_y * 16* linesize ) + mb_x * 16;
libavcodec/asvenc.c+4−4
@@ -55,7 +55,7 @@ static inline void asv2_put_level(PutBitContext *pb, int level){ · 54 unmodified lines
5555 }
5656 }
5757
58−static inline void asv1_encode_block(ASV1Context *a, DCTELEM block[64]){
58+static inline void asv1_encode_block(ASV1Context *a, int16_t block[64]){
5959 int i;
6060 int nc_count=0;
6161
@@ -88,7 +88,7 @@ static inline void asv1_encode_block(ASV1Context *a, DCTELEM block[64]){ · 26 unmodified lines
8888 put_bits(&a->pb, ff_asv_ccp_tab[16][1], ff_asv_ccp_tab[16][0]);
8989 }
9090
91−static inline void asv2_encode_block(ASV1Context *a, DCTELEM block[64]){
91+static inline void asv2_encode_block(ASV1Context *a, int16_t block[64]){
9292 int i;
9393 int count=0;
9494
@@ -129,7 +129,7 @@ static inline void asv2_encode_block(ASV1Context *a, DCTELEM block[64]){ · 34 unmodified lines
129129
130130 #define MAX_MB_SIZE (30*16*16*3/2/8)
131131
132−static inline int encode_mb(ASV1Context *a, DCTELEM block[6][64]){
132+static inline int encode_mb(ASV1Context *a, int16_t block[6][64]){
133133 int i;
134134
135135 if (a->pb.buf_end - a->pb.buf - (put_bits_count(&a->pb)>>3) < MAX_MB_SIZE) {
@@ -148,7 +148,7 @@ static inline int encode_mb(ASV1Context *a, DCTELEM block[6][64]){ · 12 unmodified lines
148148 }
149149
150150 static inline void dct_get(ASV1Context *a, int mb_x, int mb_y){
151− DCTELEM (*block)[64]= a->block;
151+ int16_t (*block)[64]= a->block;
152152 int linesize= a->picture.linesize[0];
153153 int i;
154154
libavcodec/bfin/config_bfin.h+1−1
@@ -21,7 +21,7 @@ · 20 unmodified lines
2121 low level assembler interface wrapper
2222
2323 DEFUN(put_pixels_clamped,mL1,
24− (DCTELEM *block, uint8_t *dest, int line_size)):
24+ (int16_t *block, uint8_t *dest, int line_size)):
2525
2626 body
2727
libavcodec/bfin/dsputil_bfin.c+3−3
@@ -27,20 +27,20 @@ · 26 unmodified lines
2727
2828 int off;
2929
30−static void bfin_idct_add (uint8_t *dest, int line_size, DCTELEM *block)
30+static void bfin_idct_add (uint8_t *dest, int line_size, int16_t *block)
3131 {
3232 ff_bfin_idct (block);
3333 ff_bfin_add_pixels_clamped (block, dest, line_size);
3434 }
3535
36−static void bfin_idct_put (uint8_t *dest, int line_size, DCTELEM *block)
36+static void bfin_idct_put (uint8_t *dest, int line_size, int16_t *block)
3737 {
3838 ff_bfin_idct (block);
3939 ff_bfin_put_pixels_clamped (block, dest, line_size);
4040 }
4141
4242
43−static void bfin_clear_blocks (DCTELEM *blocks)
43+static void bfin_clear_blocks (int16_t *blocks)
4444 {
4545 // This is just a simple memset.
4646 //
libavcodec/bfin/dsputil_bfin.h+11−10
@@ -24,8 +24,9 @@ · 23 unmodified lines
2424 #ifndef AVCODEC_BFIN_DSPUTIL_BFIN_H
2525 #define AVCODEC_BFIN_DSPUTIL_BFIN_H
2626
27+#include <stdint.h>
28+
2729 #include "config.h"
28−#include "libavcodec/dsputil.h"
2930
3031 #if defined(__FDPIC__) && CONFIG_SRAM
3132 #define attribute_l1_text __attribute__ ((l1_text))
@@ -35,15 +36,15 @@ · 3 unmodified lines
3536 #define attribute_l1_data_b
3637 #endif
3738
38−void ff_bfin_idct (DCTELEM *block) attribute_l1_text;
39−void ff_bfin_fdct (DCTELEM *block) attribute_l1_text;
40−void ff_bfin_vp3_idct (DCTELEM *block);
41−void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, DCTELEM *block);
42−void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, DCTELEM *block);
43−void ff_bfin_add_pixels_clamped (const DCTELEM *block, uint8_t *dest, int line_size) attribute_l1_text;
44−void ff_bfin_put_pixels_clamped (const DCTELEM *block, uint8_t *dest, int line_size) attribute_l1_text;
45−void ff_bfin_diff_pixels (DCTELEM *block, const uint8_t *s1, const uint8_t *s2, int stride) attribute_l1_text;
46−void ff_bfin_get_pixels (DCTELEM *restrict block, const uint8_t *pixels, int line_size) attribute_l1_text;
39+void ff_bfin_idct (int16_t *block) attribute_l1_text;
40+void ff_bfin_fdct (int16_t *block) attribute_l1_text;
41+void ff_bfin_vp3_idct (int16_t *block);
42+void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, int16_t *block);
43+void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, int16_t *block);
44+void ff_bfin_add_pixels_clamped (const int16_t *block, uint8_t *dest, int line_size) attribute_l1_text;
45+void ff_bfin_put_pixels_clamped (const int16_t *block, uint8_t *dest, int line_size) attribute_l1_text;
46+void ff_bfin_diff_pixels (int16_t *block, const uint8_t *s1, const uint8_t *s2, int stride) attribute_l1_text;
47+void ff_bfin_get_pixels (int16_t *restrict block, const uint8_t *pixels, int line_size) attribute_l1_text;
4748 int ff_bfin_pix_norm1 (uint8_t * pix, int line_size) attribute_l1_text;
4849 int ff_bfin_z_sad8x8 (uint8_t *blk1, uint8_t *blk2, int dsz, int line_size, int h) attribute_l1_text;
4950 int ff_bfin_z_sad16x16 (uint8_t *blk1, uint8_t *blk2, int dsz, int line_size, int h) attribute_l1_text;
libavcodec/bfin/fdct_bfin.S+4−4
@@ -20,7 +20,7 @@ · 19 unmodified lines
2020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2121 */
2222 /*
23− void ff_bfin_fdct (DCTELEM *buf);
23+ void ff_bfin_fdct (int16_t *buf);
2424
2525 This implementation works only for 8x8 input. The range of input
2626 must be -256 to 255 i.e. 8bit input represented in a 16bit data
@@ -61,9 +61,9 @@ Notation · 34 unmodified lines
6161 Other registers used:
6262 I0, I1, I2, I3, B0, B2, B3, M0, M1, L3 registers and LC0.
6363
64− Input - r0 - pointer to start of DCTELEM *block
64+ Input - r0 - pointer to start of int16_t *block
6565
66− Output - The DCT output coefficients in the DCTELEM *block
66+ Output - The DCT output coefficients in the int16_t *block
6767
6868 Register constraint:
6969 This code is called from jpeg_encode.
@@ -145,7 +145,7 @@ vtmp: .space 128 · 75 unmodified lines
145145
146146 .text
147147 DEFUN(fdct,mL1,
148− (DCTELEM *block)):
148+ (int16_t *block)):
149149 [--SP] = (R7:4, P5:3); // Push the registers onto the stack.
150150
151151 b0 = r0;
libavcodec/bfin/idct_bfin.S+2−2
@@ -22,7 +22,7 @@ · 21 unmodified lines
2222 /*
2323 This blackfin DSP code implements an 8x8 inverse type II DCT.
2424
25−Prototype : void ff_bfin_idct(DCTELEM *in)
25+Prototype : void ff_bfin_idct(int16_t *in)
2626
2727 Registers Used : A0, A1, R0-R7, I0-I3, B0, B2, B3, M0-M2, L0-L3, P0-P5, LC0.
2828
@@ -90,7 +90,7 @@ vtmp: .space 256 · 61 unmodified lines
9090
9191 .text
9292 DEFUN(idct,mL1,
93− (DCTELEM *block)):
93+ (int16_t *block)):
9494
9595 /********************** Function Prologue *********************************/
9696 link 16;
libavcodec/bfin/mpegvideo_bfin.c+1−1
@@ -26,7 +26,7 @@ · 25 unmodified lines
2626 #include "dsputil_bfin.h"
2727
2828 static int dct_quantize_bfin (MpegEncContext *s,
29− DCTELEM *block, int n,
29+ int16_t *block, int n,
3030 int qscale, int *overflow)
3131 {
3232 int last_non_zero, q, start_i;
libavcodec/bfin/pixels_bfin.S+4−4
@@ -21,7 +21,7 @@ · 20 unmodified lines
2121 #include "config_bfin.h"
2222
2323 DEFUN(put_pixels_clamped,mL1,
24− (DCTELEM *block, uint8_t *dest, int line_size)):
24+ (int16_t *block, uint8_t *dest, int line_size)):
2525 [--SP] = (R7:4);
2626 R4 = 0;
2727 R5.l = 0x00ff;
@@ -51,7 +51,7 @@ ppc$1: R2 = Max(R0, R4) (V) || [I1++M1] = R6; · 23 unmodified lines
5151 DEFUN_END(put_pixels_clamped)
5252
5353 DEFUN(add_pixels_clamped,mL1,
54− (DCTELEM *block, uint8_t *dest, int line_size)):
54+ (int16_t *block, uint8_t *dest, int line_size)):
5555 [-- SP] = (R7:4);
5656 R4 = 0;
5757 I0 = 0;
@@ -442,7 +442,7 @@ LE$8OT: DISALGNEXCPT || R2 =[I1++] || [I3++M2] = R5; · 384 unmodified lines
442442 rts;
443443
444444 DEFUN(diff_pixels,mL1,
445− (DCTELEM *block, uint8_t *s1, uint8_t *s2, int stride)):
445+ (int16_t *block, uint8_t *s1, uint8_t *s2, int stride)):
446446 link 0;
447447 [--sp] = (r7:4);
448448 p0=8;
@@ -518,7 +518,7 @@ DEFUN_END(pix_sum) · 69 unmodified lines
518518
519519
520520 DEFUN(get_pixels,mL1,
521− (DCTELEM *restrict block, const uint8_t *pixels, int line_size)):
521+ (int16_t *restrict block, const uint8_t *pixels, int line_size)):
522522 [--sp] = (r7:4);
523523 i3=r0; // dest
524524 i0=r1; // src0
libavcodec/bfin/vp3_bfin.c+2−2
@@ -23,7 +23,7 @@ · 22 unmodified lines
2323 #include "dsputil_bfin.h"
2424
2525 /* Intra iDCT offset 128 */
26−void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, DCTELEM *block)
26+void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, int16_t *block)
2727 {
2828 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP + 128;
2929 int i,j;
@@ -36,7 +36,7 @@ void ff_bfin_vp3_idct_put (uint8_t *dest, int line_size, DCTELEM *block) · 6 unmodified lines
3636 }
3737
3838 /* Inter iDCT */
39−void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, DCTELEM *block)
39+void ff_bfin_vp3_idct_add (uint8_t *dest, int line_size, int16_t *block)
4040 {
4141 ff_bfin_vp3_idct (block);
4242 ff_bfin_add_pixels_clamped (block, dest, line_size);
libavcodec/bfin/vp3_idct_bfin.S+2−2
@@ -22,7 +22,7 @@ · 21 unmodified lines
2222 /*
2323 This blackfin DSP code implements an 8x8 inverse type II DCT.
2424
25−Prototype : void ff_bfin_vp3_idct(DCTELEM *in)
25+Prototype : void ff_bfin_vp3_idct(int16_t *in)
2626
2727 Registers Used : A0, A1, R0-R7, I0-I3, B0, B2, B3, M0-M2, L0-L3, P0-P5, LC0.
2828
@@ -63,7 +63,7 @@ vtmp: .space 256 · 34 unmodified lines
6363
6464 .text
6565 DEFUN(vp3_idct,mL1,
66− (DCTELEM *block)):
66+ (int16_t *block)):
6767
6868 /********************** Function Prologue *********************************/
6969 link 16;
libavcodec/bink.c+3−3
@@ -696,7 +696,7 @@ static int read_dct_coeffs(GetBitContext *gb, int32_t block[64], const uint8_t * · 695 unmodified lines
696696 * @param masks_count number of masks to decode
697697 * @return 0 on success, negative value in other cases
698698 */
699−static int read_residue(GetBitContext *gb, DCTELEM block[64], int masks_count)
699+static int read_residue(GetBitContext *gb, int16_t block[64], int masks_count)
700700 {
701701 int coef_list[128];
702702 int mode_list[128];
@@ -800,7 +800,7 @@ static int binkb_decode_plane(BinkContext *c, GetBitContext *gb, int plane_idx, · 97 unmodified lines
800800 int v, col[2];
801801 const uint8_t *scan;
802802 int xoff, yoff;
803− LOCAL_ALIGNED_16(DCTELEM, block, [64]);
803+ LOCAL_ALIGNED_16(int16_t, block, [64]);
804804 LOCAL_ALIGNED_16(int32_t, dctblock, [64]);
805805 int coordmap[64];
806806 int ybias = is_key ? -15 : 0;
@@ -946,7 +946,7 @@ static int bink_decode_plane(BinkContext *c, GetBitContext *gb, int plane_idx, · 139 unmodified lines
946946 int v, col[2];
947947 const uint8_t *scan;
948948 int xoff, yoff;
949− LOCAL_ALIGNED_16(DCTELEM, block, [64]);
949+ LOCAL_ALIGNED_16(int16_t, block, [64]);
950950 LOCAL_ALIGNED_16(uint8_t, ublock, [64]);
951951 LOCAL_ALIGNED_16(int32_t, dctblock, [64]);
952952 int coordmap[64];
libavcodec/cavs.c+1−1
@@ -713,7 +713,7 @@ void ff_cavs_init_top_lines(AVSContext *h) { · 712 unmodified lines
713713 /* alloc space for co-located MVs and types */
714714 h->col_mv = av_malloc( h->mb_width*h->mb_height*4*sizeof(cavs_vector));
715715 h->col_type_base = av_malloc(h->mb_width*h->mb_height);
716− h->block = av_mallocz(64*sizeof(DCTELEM));
716+ h->block = av_mallocz(64*sizeof(int16_t));
717717 }
718718
719719 av_cold int ff_cavs_init(AVCodecContext *avctx) {
libavcodec/cavs.h+1−1
@@ -234,7 +234,7 @@ typedef struct AVSContext { · 233 unmodified lines
234234 uint8_t *edge_emu_buffer;
235235
236236 int got_keyframe;
237− DCTELEM *block;
237+ int16_t *block;
238238 } AVSContext;
239239
240240 extern const uint8_t ff_cavs_partition_flags[30];
libavcodec/cavsdec.c+4−4
@@ -516,8 +516,8 @@ static inline int get_ue_code(GetBitContext *gb, int order) · 515 unmodified lines
516516 return get_ue_golomb(gb);
517517 }
518518
519−static inline int dequant(AVSContext *h, DCTELEM *level_buf, uint8_t *run_buf,
520− DCTELEM *dst, int mul, int shift, int coeff_num)
519+static inline int dequant(AVSContext *h, int16_t *level_buf, uint8_t *run_buf,
520+ int16_t *dst, int mul, int shift, int coeff_num)
521521 {
522522 int round = 1 << (shift - 1);
523523 int pos = -1;
@@ -551,9 +551,9 @@ static int decode_residual_block(AVSContext *h, GetBitContext *gb, · 27 unmodified lines
551551 int qp, uint8_t *dst, int stride)
552552 {
553553 int i, level_code, esc_code, level, run, mask;
554− DCTELEM level_buf[65];
554+ int16_t level_buf[65];
555555 uint8_t run_buf[65];
556− DCTELEM *block = h->block;
556+ int16_t *block = h->block;
557557
558558 for (i = 0;i < 65; i++) {
559559 level_code = get_ue_code(gb, r->golomb_order);
libavcodec/cavsdsp.c+2−2
@@ -183,9 +183,9 @@ static void cavs_filter_ch_c(uint8_t *d, int stride, int alpha, int beta, int tc · 182 unmodified lines
183183 *
184184 ****************************************************************************/
185185
186−static void cavs_idct8_add_c(uint8_t *dst, DCTELEM *block, int stride) {
186+static void cavs_idct8_add_c(uint8_t *dst, int16_t *block, int stride) {
187187 int i;
188− DCTELEM (*src)[8] = (DCTELEM(*)[8])block;
188+ int16_t (*src)[8] = (int16_t(*)[8])block;
189189 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
190190
191191 src[0][0] += 8;
libavcodec/cavsdsp.h+1−1
@@ -32,7 +32,7 @@ typedef struct CAVSDSPContext { · 31 unmodified lines
3232 void (*cavs_filter_lh)(uint8_t *pix, int stride, int alpha, int beta, int tc, int bs1, int bs2);
3333 void (*cavs_filter_cv)(uint8_t *pix, int stride, int alpha, int beta, int tc, int bs1, int bs2);
3434 void (*cavs_filter_ch)(uint8_t *pix, int stride, int alpha, int beta, int tc, int bs1, int bs2);
35− void (*cavs_idct8_add)(uint8_t *dst, DCTELEM *block, int stride);
35+ void (*cavs_idct8_add)(uint8_t *dst, int16_t *block, int stride);
3636 int idct_perm;
3737 } CAVSDSPContext;
3838
libavcodec/dct-test.c+16−15
@@ -39,6 +39,7 @@ · 38 unmodified lines
3939 #include "libavutil/lfg.h"
4040 #include "libavutil/time.h"
4141
42+#include "dsputil.h"
4243 #include "simple_idct.h"
4344 #include "aandcttab.h"
4445 #include "faandct.h"
@@ -49,24 +50,24 @@ · 4 unmodified lines
4950 #undef printf
5051
5152 // BFIN
52−void ff_bfin_idct(DCTELEM *block);
53−void ff_bfin_fdct(DCTELEM *block);
53+void ff_bfin_idct(int16_t *block);
54+void ff_bfin_fdct(int16_t *block);
5455
5556 // ALTIVEC
56−void ff_fdct_altivec(DCTELEM *block);
57+void ff_fdct_altivec(int16_t *block);
5758
5859 // ARM
59−void ff_j_rev_dct_arm(DCTELEM *data);
60−void ff_simple_idct_arm(DCTELEM *data);
61−void ff_simple_idct_armv5te(DCTELEM *data);
62−void ff_simple_idct_armv6(DCTELEM *data);
63−void ff_simple_idct_neon(DCTELEM *data);
60+void ff_j_rev_dct_arm(int16_t *data);
61+void ff_simple_idct_arm(int16_t *data);
62+void ff_simple_idct_armv5te(int16_t *data);
63+void ff_simple_idct_armv6(int16_t *data);
64+void ff_simple_idct_neon(int16_t *data);
6465
65−void ff_simple_idct_axp(DCTELEM *data);
66+void ff_simple_idct_axp(int16_t *data);
6667
6768 struct algo {
6869 const char *name;
69− void (*func)(DCTELEM *block);
70+ void (*func)(int16_t *block);
7071 enum formattag { NO_PERM, MMX_PERM, MMX_SIMPLE_PERM, SCALE_PERM,
7172 SSE2_PERM, PARTTRANS_PERM } format;
7273 int mm_support;
@@ -166,10 +167,10 @@ static void idct_mmx_init(void) · 93 unmodified lines
166167 }
167168 }
168169
169−DECLARE_ALIGNED(16, static DCTELEM, block)[64];
170−DECLARE_ALIGNED(8, static DCTELEM, block1)[64];
170+DECLARE_ALIGNED(16, static int16_t, block)[64];
171+DECLARE_ALIGNED(8, static int16_t, block1)[64];
171172
172−static void init_block(DCTELEM block[64], int test, int is_idct, AVLFG *prng)
173+static void init_block(int16_t block[64], int test, int is_idct, AVLFG *prng)
173174 {
174175 int i, j;
175176
@@ -197,7 +198,7 @@ static void init_block(DCTELEM block[64], int test, int is_idct, AVLFG *prng) · 21 unmodified lines
197198 }
198199 }
199200
200−static void permute(DCTELEM dst[64], const DCTELEM src[64], int perm)
201+static void permute(int16_t dst[64], const int16_t src[64], int perm)
201202 {
202203 int i;
203204
@@ -221,7 +222,7 @@ static void permute(DCTELEM dst[64], const DCTELEM src[64], int perm) · 17 unmodified lines
221222
222223 static int dct_error(const struct algo *dct, int test, int is_idct, int speed)
223224 {
224− void (*ref)(DCTELEM *block) = is_idct ? ff_ref_idct : ff_ref_fdct;
225+ void (*ref)(int16_t *block) = is_idct ? ff_ref_idct : ff_ref_fdct;
225226 int it, i, scale;
226227 int err_inf, v;
227228 int64_t err2, ti, ti1, it1, err_sum = 0;
libavcodec/dnxhddec.c+7−7
@@ -44,19 +44,19 @@ typedef struct DNXHDContext { · 43 unmodified lines
4444 VLC ac_vlc, dc_vlc, run_vlc;
4545 int last_dc[3];
4646 DSPContext dsp;
47− DECLARE_ALIGNED(16, DCTELEM, blocks)[8][64];
47+ DECLARE_ALIGNED(16, int16_t, blocks)[8][64];
4848 ScanTable scantable;
4949 const CIDEntry *cid_table;
5050 int bit_depth; // 8, 10 or 0 if not initialized at all.
51− void (*decode_dct_block)(struct DNXHDContext *ctx, DCTELEM *block,
51+ void (*decode_dct_block)(struct DNXHDContext *ctx, int16_t *block,
5252 int n, int qscale);
5353 } DNXHDContext;
5454
5555 #define DNXHD_VLC_BITS 9
5656 #define DNXHD_DC_VLC_BITS 7
5757
58−static void dnxhd_decode_dct_block_8(DNXHDContext *ctx, DCTELEM *block, int n, int qscale);
59−static void dnxhd_decode_dct_block_10(DNXHDContext *ctx, DCTELEM *block, int n, int qscale);
58+static void dnxhd_decode_dct_block_8(DNXHDContext *ctx, int16_t *block, int n, int qscale);
59+static void dnxhd_decode_dct_block_10(DNXHDContext *ctx, int16_t *block, int n, int qscale);
6060
6161 static av_cold int dnxhd_decode_init(AVCodecContext *avctx)
6262 {
@@ -180,7 +180,7 @@ static int dnxhd_decode_header(DNXHDContext *ctx, const uint8_t *buf, int buf_si · 117 unmodified lines
180180 }
181181
182182 static av_always_inline void dnxhd_decode_dct_block(DNXHDContext *ctx,
183− DCTELEM *block, int n,
183+ int16_t *block, int n,
184184 int qscale,
185185 int index_bits,
186186 int level_bias,
@@ -250,13 +250,13 @@ static av_always_inline void dnxhd_decode_dct_block(DNXHDContext *ctx, · 63 unmodified lines
250250 CLOSE_READER(bs, &ctx->gb);
251251 }
252252
253−static void dnxhd_decode_dct_block_8(DNXHDContext *ctx, DCTELEM *block,
253+static void dnxhd_decode_dct_block_8(DNXHDContext *ctx, int16_t *block,
254254 int n, int qscale)
255255 {
256256 dnxhd_decode_dct_block(ctx, block, n, qscale, 4, 32, 6);
257257 }
258258
259−static void dnxhd_decode_dct_block_10(DNXHDContext *ctx, DCTELEM *block,
259+static void dnxhd_decode_dct_block_10(DNXHDContext *ctx, int16_t *block,
260260 int n, int qscale)
261261 {
262262 dnxhd_decode_dct_block(ctx, block, n, qscale, 6, 8, 4);
libavcodec/dnxhdenc.c+10−10
@@ -44,7 +44,7 @@ static const AVClass class = { "dnxhd", av_default_item_name, options, LIBAVUTIL · 43 unmodified lines
4444
4545 #define LAMBDA_FRAC_BITS 10
4646
47−static void dnxhd_8bit_get_pixels_8x4_sym(DCTELEM *restrict block, const uint8_t *pixels, int line_size)
47+static void dnxhd_8bit_get_pixels_8x4_sym(int16_t *restrict block, const uint8_t *pixels, int line_size)
4848 {
4949 int i;
5050 for (i = 0; i < 4; i++) {
@@ -61,7 +61,7 @@ static void dnxhd_8bit_get_pixels_8x4_sym(DCTELEM *restrict block, const uint8_t · 10 unmodified lines
6161 memcpy(block + 24, block - 32, sizeof(*block) * 8);
6262 }
6363
64−static av_always_inline void dnxhd_10bit_get_pixels_8x4_sym(DCTELEM *restrict block, const uint8_t *pixels, int line_size)
64+static av_always_inline void dnxhd_10bit_get_pixels_8x4_sym(int16_t *restrict block, const uint8_t *pixels, int line_size)
6565 {
6666 int i;
6767
@@ -73,7 +73,7 @@ static av_always_inline void dnxhd_10bit_get_pixels_8x4_sym(DCTELEM *restrict bl · 5 unmodified lines
7373 }
7474 }
7575
76−static int dnxhd_10bit_dct_quantize(MpegEncContext *ctx, DCTELEM *block,
76+static int dnxhd_10bit_dct_quantize(MpegEncContext *ctx, int16_t *block,
7777 int n, int qscale, int *overflow)
7878 {
7979 const uint8_t *scantable= ctx->intra_scantable.scantable;
@@ -370,7 +370,7 @@ static av_always_inline void dnxhd_encode_dc(DNXHDEncContext *ctx, int diff) · 290 unmodified lines
370370 (ctx->cid_table->dc_codes[nbits]<<nbits) + (diff & ((1 << nbits) - 1)));
371371 }
372372
373−static av_always_inline void dnxhd_encode_block(DNXHDEncContext *ctx, DCTELEM *block, int last_index, int n)
373+static av_always_inline void dnxhd_encode_block(DNXHDEncContext *ctx, int16_t *block, int last_index, int n)
374374 {
375375 int last_non_zero = 0;
376376 int slevel, i, j;
@@ -393,7 +393,7 @@ static av_always_inline void dnxhd_encode_block(DNXHDEncContext *ctx, DCTELEM *b · 16 unmodified lines
393393 put_bits(&ctx->m.pb, ctx->vlc_bits[0], ctx->vlc_codes[0]); // EOB
394394 }
395395
396−static av_always_inline void dnxhd_unquantize_c(DNXHDEncContext *ctx, DCTELEM *block, int n, int qscale, int last_index)
396+static av_always_inline void dnxhd_unquantize_c(DNXHDEncContext *ctx, int16_t *block, int n, int qscale, int last_index)
397397 {
398398 const uint8_t *weight_matrix;
399399 int level;
@@ -434,7 +434,7 @@ static av_always_inline void dnxhd_unquantize_c(DNXHDEncContext *ctx, DCTELEM *b · 34 unmodified lines
434434 }
435435 }
436436
437−static av_always_inline int dnxhd_ssd_block(DCTELEM *qblock, DCTELEM *block)
437+static av_always_inline int dnxhd_ssd_block(int16_t *qblock, int16_t *block)
438438 {
439439 int score = 0;
440440 int i;
@@ -443,7 +443,7 @@ static av_always_inline int dnxhd_ssd_block(DCTELEM *qblock, DCTELEM *block) · 2 unmodified lines
443443 return score;
444444 }
445445
446−static av_always_inline int dnxhd_calc_ac_bits(DNXHDEncContext *ctx, DCTELEM *block, int last_index)
446+static av_always_inline int dnxhd_calc_ac_bits(DNXHDEncContext *ctx, int16_t *block, int last_index)
447447 {
448448 int last_non_zero = 0;
449449 int bits = 0;
@@ -512,7 +512,7 @@ static int dnxhd_calc_bits_thread(AVCodecContext *avctx, void *arg, int jobnr, i · 62 unmodified lines
512512 DNXHDEncContext *ctx = avctx->priv_data;
513513 int mb_y = jobnr, mb_x;
514514 int qscale = ctx->qscale;
515− LOCAL_ALIGNED_16(DCTELEM, block, [64]);
515+ LOCAL_ALIGNED_16(int16_t, block, [64]);
516516 ctx = ctx->thread[threadnr];
517517
518518 ctx->m.last_dc[0] =
@@ -529,7 +529,7 @@ static int dnxhd_calc_bits_thread(AVCodecContext *avctx, void *arg, int jobnr, i · 10 unmodified lines
529529 dnxhd_get_blocks(ctx, mb_x, mb_y);
530530
531531 for (i = 0; i < 8; i++) {
532− DCTELEM *src_block = ctx->blocks[i];
532+ int16_t *src_block = ctx->blocks[i];
533533 int overflow, nbits, diff, last_index;
534534 int n = dnxhd_switch_matrix(ctx, i);
535535
@@ -578,7 +578,7 @@ static int dnxhd_encode_thread(AVCodecContext *avctx, void *arg, int jobnr, int · 42 unmodified lines
578578 dnxhd_get_blocks(ctx, mb_x, mb_y);
579579
580580 for (i = 0; i < 8; i++) {
581− DCTELEM *block = ctx->blocks[i];
581+ int16_t *block = ctx->blocks[i];
582582 int overflow, n = dnxhd_switch_matrix(ctx, i);
583583 int last_index = ctx->m.dct_quantize(&ctx->m, block, i,
584584 qscale, &overflow);
libavcodec/dnxhdenc.h+2−2
@@ -64,7 +64,7 @@ typedef struct DNXHDEncContext { · 63 unmodified lines
6464 int nitris_compat;
6565 unsigned min_padding;
6666
67− DECLARE_ALIGNED(16, DCTELEM, blocks)[8][64];
67+ DECLARE_ALIGNED(16, int16_t, blocks)[8][64];
6868
6969 int (*qmatrix_c) [64];
7070 int (*qmatrix_l) [64];
@@ -92,7 +92,7 @@ typedef struct DNXHDEncContext { · 21 unmodified lines
9292 RCCMPEntry *mb_cmp;
9393 RCEntry (*mb_rc)[8160];
9494
95− void (*get_pixels_8x4_sym)(DCTELEM * /*align 16*/, const uint8_t *, int);
95+ void (*get_pixels_8x4_sym)(int16_t * /*align 16*/, const uint8_t *, int);
9696 } DNXHDEncContext;
9797
9898 void ff_dnxhdenc_init_x86(DNXHDEncContext *ctx);
libavcodec/dsputil.c+17−17
@@ -336,7 +336,7 @@ static int sse16_c(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) · 335 unmodified lines
336336 return s;
337337 }
338338
339−static void diff_pixels_c(DCTELEM *restrict block, const uint8_t *s1,
339+static void diff_pixels_c(int16_t *restrict block, const uint8_t *s1,
340340 const uint8_t *s2, int stride){
341341 int i;
342342
@@ -357,7 +357,7 @@ static void diff_pixels_c(DCTELEM *restrict block, const uint8_t *s1, · 14 unmodified lines
357357 }
358358
359359
360−static void put_pixels_clamped_c(const DCTELEM *block, uint8_t *restrict pixels,
360+static void put_pixels_clamped_c(const int16_t *block, uint8_t *restrict pixels,
361361 int line_size)
362362 {
363363 int i;
@@ -378,7 +378,7 @@ static void put_pixels_clamped_c(const DCTELEM *block, uint8_t *restrict pixels, · 14 unmodified lines
378378 }
379379 }
380380
381−static void put_signed_pixels_clamped_c(const DCTELEM *block,
381+static void put_signed_pixels_clamped_c(const int16_t *block,
382382 uint8_t *restrict pixels,
383383 int line_size)
384384 {
@@ -399,7 +399,7 @@ static void put_signed_pixels_clamped_c(const DCTELEM *block, · 14 unmodified lines
399399 }
400400 }
401401
402−static void add_pixels_clamped_c(const DCTELEM *block, uint8_t *restrict pixels,
402+static void add_pixels_clamped_c(const int16_t *block, uint8_t *restrict pixels,
403403 int line_size)
404404 {
405405 int i;
@@ -419,7 +419,7 @@ static void add_pixels_clamped_c(const DCTELEM *block, uint8_t *restrict pixels, · 13 unmodified lines
419419 }
420420 }
421421
422−static int sum_abs_dctelem_c(DCTELEM *block)
422+static int sum_abs_dctelem_c(int16_t *block)
423423 {
424424 int sum=0, i;
425425 for(i=0; i<64; i++)
@@ -1712,10 +1712,10 @@ static void add_8x8basis_c(int16_t rem[64], int16_t basis[64], int scale){ · 1286 unmodified lines
17121712 * @param scantable the used scantable, this is only used to speed the permutation up, the block is not
17131713 * (inverse) permutated to scantable order!
17141714 */
1715−void ff_block_permute(DCTELEM *block, uint8_t *permutation, const uint8_t *scantable, int last)
1715+void ff_block_permute(int16_t *block, uint8_t *permutation, const uint8_t *scantable, int last)
17161716 {
17171717 int i;
1718− DCTELEM temp[64];
1718+ int16_t temp[64];
17191719
17201720 if(last<=0) return;
17211721 //if(permutation[1]==1) return; //FIXME it is ok but not clean and might fail for some permutations
@@ -2030,7 +2030,7 @@ static int hadamard8_intra8x8_c(/*MpegEncContext*/ void *s, uint8_t *src, uint8_ · 308 unmodified lines
20302030
20312031 static int dct_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
20322032 MpegEncContext * const s= (MpegEncContext *)c;
2033− LOCAL_ALIGNED_16(DCTELEM, temp, [64]);
2033+ LOCAL_ALIGNED_16(int16_t, temp, [64]);
20342034
20352035 assert(h==8);
20362036
@@ -2069,7 +2069,7 @@ static int dct_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2 · 32 unmodified lines
20692069
20702070 static int dct264_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
20712071 MpegEncContext * const s= (MpegEncContext *)c;
2072− DCTELEM dct[8][8];
2072+ int16_t dct[8][8];
20732073 int i;
20742074 int sum=0;
20752075
@@ -2094,7 +2094,7 @@ static int dct264_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *s · 18 unmodified lines
20942094
20952095 static int dct_max8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
20962096 MpegEncContext * const s= (MpegEncContext *)c;
2097− LOCAL_ALIGNED_16(DCTELEM, temp, [64]);
2097+ LOCAL_ALIGNED_16(int16_t, temp, [64]);
20982098 int sum=0, i;
20992099
21002100 assert(h==8);
@@ -2110,8 +2110,8 @@ static int dct_max8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2 · 9 unmodified lines
21102110
21112111 static int quant_psnr8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
21122112 MpegEncContext * const s= (MpegEncContext *)c;
2113− LOCAL_ALIGNED_16(DCTELEM, temp, [64*2]);
2114− DCTELEM * const bak = temp+64;
2113+ LOCAL_ALIGNED_16(int16_t, temp, [64*2]);
2114+ int16_t * const bak = temp+64;
21152115 int sum=0, i;
21162116
21172117 assert(h==8);
@@ -2119,7 +2119,7 @@ static int quant_psnr8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *s · 1 unmodified line
21192119
21202120 s->dsp.diff_pixels(temp, src1, src2, stride);
21212121
2122− memcpy(bak, temp, 64*sizeof(DCTELEM));
2122+ memcpy(bak, temp, 64*sizeof(int16_t));
21232123
21242124 s->block_last_index[0/*FIXME*/]= s->fast_dct_quantize(s, temp, 0/*FIXME*/, s->qscale, &i);
21252125 s->dct_unquantize_inter(s, temp, 0, s->qscale);
@@ -2134,7 +2134,7 @@ static int quant_psnr8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *s · 8 unmodified lines
21342134 static int rd8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
21352135 MpegEncContext * const s= (MpegEncContext *)c;
21362136 const uint8_t *scantable= s->intra_scantable.permutated;
2137− LOCAL_ALIGNED_16(DCTELEM, temp, [64]);
2137+ LOCAL_ALIGNED_16(int16_t, temp, [64]);
21382138 LOCAL_ALIGNED_16(uint8_t, lsrc1, [64]);
21392139 LOCAL_ALIGNED_16(uint8_t, lsrc2, [64]);
21402140 int i, last, run, bits, level, distortion, start_i;
@@ -2210,7 +2210,7 @@ static int rd8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int · 69 unmodified lines
22102210 static int bit8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
22112211 MpegEncContext * const s= (MpegEncContext *)c;
22122212 const uint8_t *scantable= s->intra_scantable.permutated;
2213− LOCAL_ALIGNED_16(DCTELEM, temp, [64]);
2213+ LOCAL_ALIGNED_16(int16_t, temp, [64]);
22142214 int i, last, run, bits, level, start_i;
22152215 const int esc_length= s->ac_esc_length;
22162216 uint8_t * length;
@@ -2447,12 +2447,12 @@ static void vector_clip_int32_c(int32_t *dst, const int32_t *src, int32_t min, · 230 unmodified lines
24472447 } while (len > 0);
24482448 }
24492449
2450−static void ff_jref_idct_put(uint8_t *dest, int line_size, DCTELEM *block)
2450+static void ff_jref_idct_put(uint8_t *dest, int line_size, int16_t *block)
24512451 {
24522452 ff_j_rev_dct (block);
24532453 put_pixels_clamped_c(block, dest, line_size);
24542454 }
2455−static void ff_jref_idct_add(uint8_t *dest, int line_size, DCTELEM *block)
2455+static void ff_jref_idct_add(uint8_t *dest, int line_size, int16_t *block)
24562456 {
24572457 ff_j_rev_dct (block);
24582458 add_pixels_clamped_c(block, dest, line_size);
libavcodec/dsputil.h+45−46
@@ -36,41 +36,40 @@ · 35 unmodified lines
3636
3737 //#define DEBUG
3838 /* dct code */
39−typedef short DCTELEM;
4039
41−void ff_fdct_ifast (DCTELEM *data);
42−void ff_fdct_ifast248 (DCTELEM *data);
43−void ff_jpeg_fdct_islow_8(DCTELEM *data);
44−void ff_jpeg_fdct_islow_10(DCTELEM *data);
45−void ff_fdct248_islow_8(DCTELEM *data);
46−void ff_fdct248_islow_10(DCTELEM *data);
40+void ff_fdct_ifast(int16_t *data);
41+void ff_fdct_ifast248(int16_t *data);
42+void ff_jpeg_fdct_islow_8(int16_t *data);
43+void ff_jpeg_fdct_islow_10(int16_t *data);
44+void ff_fdct248_islow_8(int16_t *data);
45+void ff_fdct248_islow_10(int16_t *data);
4746
48−void ff_j_rev_dct (DCTELEM *data);
47+void ff_j_rev_dct(int16_t *data);
4948
50−void ff_fdct_mmx(DCTELEM *block);
51−void ff_fdct_mmxext(DCTELEM *block);
52−void ff_fdct_sse2(DCTELEM *block);
49+void ff_fdct_mmx(int16_t *block);
50+void ff_fdct_mmxext(int16_t *block);
51+void ff_fdct_sse2(int16_t *block);
5352
5453 #define H264_IDCT(depth) \
55−void ff_h264_idct8_add_ ## depth ## _c(uint8_t *dst, DCTELEM *block, int stride);\
56−void ff_h264_idct_add_ ## depth ## _c(uint8_t *dst, DCTELEM *block, int stride);\
57−void ff_h264_idct8_dc_add_ ## depth ## _c(uint8_t *dst, DCTELEM *block, int stride);\
58−void ff_h264_idct_dc_add_ ## depth ## _c(uint8_t *dst, DCTELEM *block, int stride);\
59−void ff_h264_idct_add16_ ## depth ## _c(uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6*8]);\
60−void ff_h264_idct_add16intra_ ## depth ## _c(uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6*8]);\
61−void ff_h264_idct8_add4_ ## depth ## _c(uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6*8]);\
62−void ff_h264_idct_add8_422_ ## depth ## _c(uint8_t **dest, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6*8]);\
63−void ff_h264_idct_add8_ ## depth ## _c(uint8_t **dest, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6*8]);\
64−void ff_h264_luma_dc_dequant_idct_ ## depth ## _c(DCTELEM *output, DCTELEM *input, int qmul);\
65−void ff_h264_chroma422_dc_dequant_idct_ ## depth ## _c(DCTELEM *block, int qmul);\
66−void ff_h264_chroma_dc_dequant_idct_ ## depth ## _c(DCTELEM *block, int qmul);
54+void ff_h264_idct8_add_ ## depth ## _c(uint8_t *dst, int16_t *block, int stride);\
55+void ff_h264_idct_add_ ## depth ## _c(uint8_t *dst, int16_t *block, int stride);\
56+void ff_h264_idct8_dc_add_ ## depth ## _c(uint8_t *dst, int16_t *block, int stride);\
57+void ff_h264_idct_dc_add_ ## depth ## _c(uint8_t *dst, int16_t *block, int stride);\
58+void ff_h264_idct_add16_ ## depth ## _c(uint8_t *dst, const int *blockoffset, int16_t *block, int stride, const uint8_t nnzc[6*8]);\
59+void ff_h264_idct_add16intra_ ## depth ## _c(uint8_t *dst, const int *blockoffset, int16_t *block, int stride, const uint8_t nnzc[6*8]);\
60+void ff_h264_idct8_add4_ ## depth ## _c(uint8_t *dst, const int *blockoffset, int16_t *block, int stride, const uint8_t nnzc[6*8]);\
61+void ff_h264_idct_add8_422_ ## depth ## _c(uint8_t **dest, const int *blockoffset, int16_t *block, int stride, const uint8_t nnzc[6*8]);\
62+void ff_h264_idct_add8_ ## depth ## _c(uint8_t **dest, const int *blockoffset, int16_t *block, int stride, const uint8_t nnzc[6*8]);\
63+void ff_h264_luma_dc_dequant_idct_ ## depth ## _c(int16_t *output, int16_t *input, int qmul);\
64+void ff_h264_chroma422_dc_dequant_idct_ ## depth ## _c(int16_t *block, int qmul);\
65+void ff_h264_chroma_dc_dequant_idct_ ## depth ## _c(int16_t *block, int qmul);
6766
6867 H264_IDCT( 8)
6968 H264_IDCT( 9)
7069 H264_IDCT(10)
7170
72−void ff_svq3_luma_dc_dequant_idct_c(DCTELEM *output, DCTELEM *input, int qp);
73−void ff_svq3_add_idct_c(uint8_t *dst, DCTELEM *block, int stride, int qp, int dc);
71+void ff_svq3_luma_dc_dequant_idct_c(int16_t *output, int16_t *input, int qp);
72+void ff_svq3_add_idct_c(uint8_t *dst, int16_t *block, int stride, int qp, int dc);
7473
7574 /* encoding scans */
7675 extern const uint8_t ff_alternate_horizontal_scan[64];
@@ -128,11 +127,11 @@ could be reached easily ... · 51 unmodified lines
128127 */
129128
130129 /*
131−void get_pixels_c(DCTELEM *block, const uint8_t *pixels, int line_size);
132−void diff_pixels_c(DCTELEM *block, const uint8_t *s1, const uint8_t *s2, int stride);
133−void put_pixels_clamped_c(const DCTELEM *block, uint8_t *pixels, int line_size);
134−void add_pixels_clamped_c(const DCTELEM *block, uint8_t *pixels, int line_size);
135−void clear_blocks_c(DCTELEM *blocks);
130+void get_pixels_c(int16_t *block, const uint8_t *pixels, int line_size);
131+void diff_pixels_c(int16_t *block, const uint8_t *s1, const uint8_t *s2, int stride);
132+void put_pixels_clamped_c(const int16_t *block, uint8_t *pixels, int line_size);
133+void add_pixels_clamped_c(const int16_t *block, uint8_t *pixels, int line_size);
134+void clear_blocks_c(int16_t *blocks);
136135 */
137136
138137 /* add and put pixel (decoding) */
@@ -197,14 +196,14 @@ typedef struct DSPContext { · 58 unmodified lines
197196 int dct_bits;
198197
199198 /* pixel ops : interface with DCT */
200− void (*get_pixels)(DCTELEM *block/*align 16*/, const uint8_t *pixels/*align 8*/, int line_size);
201− void (*diff_pixels)(DCTELEM *block/*align 16*/, const uint8_t *s1/*align 8*/, const uint8_t *s2/*align 8*/, int stride);
202− void (*put_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
203− void (*put_signed_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
204− void (*add_pixels_clamped)(const DCTELEM *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
205− void (*add_pixels8)(uint8_t *pixels, DCTELEM *block, int line_size);
206− void (*add_pixels4)(uint8_t *pixels, DCTELEM *block, int line_size);
207− int (*sum_abs_dctelem)(DCTELEM *block/*align 16*/);
199+ void (*get_pixels)(int16_t *block/*align 16*/, const uint8_t *pixels/*align 8*/, int line_size);
200+ void (*diff_pixels)(int16_t *block/*align 16*/, const uint8_t *s1/*align 8*/, const uint8_t *s2/*align 8*/, int stride);
201+ void (*put_pixels_clamped)(const int16_t *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
202+ void (*put_signed_pixels_clamped)(const int16_t *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
203+ void (*add_pixels_clamped)(const int16_t *block/*align 16*/, uint8_t *pixels/*align 8*/, int line_size);
204+ void (*add_pixels8)(uint8_t *pixels, int16_t *block, int line_size);
205+ void (*add_pixels4)(uint8_t *pixels, int16_t *block, int line_size);
206+ int (*sum_abs_dctelem)(int16_t *block/*align 16*/);
208207 /**
209208 * translational global motion compensation.
210209 */
@@ -214,8 +213,8 @@ typedef struct DSPContext { · 3 unmodified lines
214213 */
215214 void (*gmc )(uint8_t *dst/*align 8*/, uint8_t *src/*align 1*/, int stride, int h, int ox, int oy,
216215 int dxx, int dxy, int dyx, int dyy, int shift, int r, int width, int height);
217− void (*clear_block)(DCTELEM *block/*align 16*/);
218− void (*clear_blocks)(DCTELEM *blocks/*align 16*/);
216+ void (*clear_block)(int16_t *block/*align 16*/);
217+ void (*clear_blocks)(int16_t *blocks/*align 16*/);
219218 int (*pix_sum)(uint8_t * pix, int line_size);
220219 int (*pix_norm1)(uint8_t * pix, int line_size);
221220 // 16x16 8x8 4x4 2x2 16x8 8x4 4x2 8x16 4x8 2x4
@@ -344,24 +343,24 @@ typedef struct DSPContext { · 122 unmodified lines
344343 void (*vector_clipf)(float *dst /* align 16 */, const float *src /* align 16 */, float min, float max, int len /* align 16 */);
345344
346345 /* (I)DCT */
347− void (*fdct)(DCTELEM *block/* align 16*/);
348− void (*fdct248)(DCTELEM *block/* align 16*/);
346+ void (*fdct)(int16_t *block/* align 16*/);
347+ void (*fdct248)(int16_t *block/* align 16*/);
349348
350349 /* IDCT really*/
351− void (*idct)(DCTELEM *block/* align 16*/);
350+ void (*idct)(int16_t *block/* align 16*/);
352351
353352 /**
354353 * block -> idct -> clip to unsigned 8 bit -> dest.
355354 * (-1392, 0, 0, ...) -> idct -> (-174, -174, ...) -> put -> (0, 0, ...)
356355 * @param line_size size in bytes of a horizontal line of dest
357356 */
358− void (*idct_put)(uint8_t *dest/*align 8*/, int line_size, DCTELEM *block/*align 16*/);
357+ void (*idct_put)(uint8_t *dest/*align 8*/, int line_size, int16_t *block/*align 16*/);
359358
360359 /**
361360 * block -> idct -> add dest -> clip to unsigned 8 bit -> dest.
362361 * @param line_size size in bytes of a horizontal line of dest
363362 */
364− void (*idct_add)(uint8_t *dest/*align 8*/, int line_size, DCTELEM *block/*align 16*/);
363+ void (*idct_add)(uint8_t *dest/*align 8*/, int line_size, int16_t *block/*align 16*/);
365364
366365 /**
367366 * idct input permutation.
@@ -451,7 +450,7 @@ int ff_check_alignment(void); · 83 unmodified lines
451450 * permute block according to permuatation.
452451 * @param last last non zero element in scantable order
453452 */
454−void ff_block_permute(DCTELEM *block, uint8_t *permutation, const uint8_t *scantable, int last);
453+void ff_block_permute(int16_t *block, uint8_t *permutation, const uint8_t *scantable, int last);
455454
456455 void ff_set_cmp(DSPContext* c, me_cmp_func *cmp, int type);
457456
libavcodec/dsputil_template.c+7−7
@@ -114,7 +114,7 @@ static void FUNCC(draw_edges)(uint8_t *_buf, int _wrap, int width, int height, i · 113 unmodified lines
114114 }
115115
116116 #define DCTELEM_FUNCS(dctcoef, suffix) \
117−static void FUNCC(get_pixels ## suffix)(DCTELEM *restrict _block, \
117+static void FUNCC(get_pixels ## suffix)(int16_t *restrict _block, \
118118 const uint8_t *_pixels, \
119119 int line_size) \
120120 { \
@@ -138,7 +138,7 @@ static void FUNCC(get_pixels ## suffix)(DCTELEM *restrict _block, \ · 17 unmodified lines
138138 } \
139139 \
140140 static void FUNCC(add_pixels8 ## suffix)(uint8_t *restrict _pixels, \
141− DCTELEM *_block, \
141+ int16_t *_block, \
142142 int line_size) \
143143 { \
144144 int i; \
@@ -161,7 +161,7 @@ static void FUNCC(add_pixels8 ## suffix)(uint8_t *restrict _pixels, \ · 16 unmodified lines
161161 } \
162162 \
163163 static void FUNCC(add_pixels4 ## suffix)(uint8_t *restrict _pixels, \
164− DCTELEM *_block, \
164+ int16_t *_block, \
165165 int line_size) \
166166 { \
167167 int i; \
@@ -179,20 +179,20 @@ static void FUNCC(add_pixels4 ## suffix)(uint8_t *restrict _pixels, \ · 11 unmodified lines
179179 } \
180180 } \
181181 \
182−static void FUNCC(clear_block ## suffix)(DCTELEM *block) \
182+static void FUNCC(clear_block ## suffix)(int16_t *block) \
183183 { \
184184 memset(block, 0, sizeof(dctcoef)*64); \
185185 } \
186186 \
187187 /** \
188− * memset(blocks, 0, sizeof(DCTELEM)*6*64) \
188+ * memset(blocks, 0, sizeof(int16_t)*6*64) \
189189 */ \
190−static void FUNCC(clear_blocks ## suffix)(DCTELEM *blocks) \
190+static void FUNCC(clear_blocks ## suffix)(int16_t *blocks) \
191191 { \
192192 memset(blocks, 0, sizeof(dctcoef)*6*64); \
193193 }
194194
195−DCTELEM_FUNCS(DCTELEM, _16)
195+DCTELEM_FUNCS(int16_t, _16)
196196 #if BIT_DEPTH > 8
197197 DCTELEM_FUNCS(dctcoef, _32)
198198 #endif
libavcodec/dv.c+2−2
@@ -406,7 +406,7 @@ typedef struct EncBlockInfo { · 405 unmodified lines
406406 int cur_ac;
407407 int cno;
408408 int dct_mode;
409− DCTELEM mb[64];
409+ int16_t mb[64];
410410 uint8_t next[64];
411411 uint8_t sign[64];
412412 uint8_t partial_bit_count;
@@ -495,7 +495,7 @@ static av_always_inline int dv_init_enc_block(EncBlockInfo* bi, uint8_t *data, i · 82 unmodified lines
495495 {
496496 const int *weight;
497497 const uint8_t* zigzag_scan;
498− LOCAL_ALIGNED_16(DCTELEM, blk, [64]);
498+ LOCAL_ALIGNED_16(int16_t, blk, [64]);
499499 int i, area;
500500 /* We offer two different methods for class number assignment: the
501501 method suggested in SMPTE 314M Table 22, and an improved
libavcodec/dvdata.h+3−3
@@ -40,9 +40,9 @@ typedef struct DVVideoContext { · 39 unmodified lines
4040
4141 uint8_t dv_zigzag[2][64];
4242
43− void (*get_pixels)(DCTELEM *block, const uint8_t *pixels, int line_size);
44− void (*fdct[2])(DCTELEM *block);
45− void (*idct_put[2])(uint8_t *dest, int line_size, DCTELEM *block);
43+ void (*get_pixels)(int16_t *block, const uint8_t *pixels, int line_size);
44+ void (*fdct[2])(int16_t *block);
45+ void (*idct_put[2])(uint8_t *dest, int line_size, int16_t *block);
4646 me_cmp_func ildct_cmp;
4747 } DVVideoContext;
4848
libavcodec/dvdec.c+4−4
@@ -48,7 +48,7 @@ typedef struct BlockInfo { · 47 unmodified lines
4848 const uint32_t *factor_table;
4949 const uint8_t *scan_table;
5050 uint8_t pos; /* position in block */
51− void (*idct_put)(uint8_t *dest, int line_size, DCTELEM *block);
51+ void (*idct_put)(uint8_t *dest, int line_size, int16_t *block);
5252 uint8_t partial_bit_count;
5353 uint32_t partial_bit_buffer;
5454 int shift_offset;
@@ -57,7 +57,7 @@ typedef struct BlockInfo { · 2 unmodified lines
5757 static const int dv_iweight_bits = 14;
5858
5959 /* decode AC coefficients */
60−static void dv_decode_ac(GetBitContext *gb, BlockInfo *mb, DCTELEM *block)
60+static void dv_decode_ac(GetBitContext *gb, BlockInfo *mb, int16_t *block)
6161 {
6262 int last_index = gb->size_in_bits;
6363 const uint8_t *scan_table = mb->scan_table;
@@ -135,14 +135,14 @@ static int dv_decode_video_segment(AVCodecContext *avctx, void *arg) · 71 unmodified lines
135135 int quant, dc, dct_mode, class1, j;
136136 int mb_index, mb_x, mb_y, last_index;
137137 int y_stride, linesize;
138− DCTELEM *block, *block1;
138+ int16_t *block, *block1;
139139 int c_offset;
140140 uint8_t *y_ptr;
141141 const uint8_t *buf_ptr;
142142 PutBitContext pb, vs_pb;
143143 GetBitContext gb;
144144 BlockInfo mb_data[5 * DV_MAX_BPM], *mb, *mb1;
145− LOCAL_ALIGNED_16(DCTELEM, sblock, [5*DV_MAX_BPM], [64]);
145+ LOCAL_ALIGNED_16(int16_t, sblock, [5*DV_MAX_BPM], [64]);
146146 LOCAL_ALIGNED_16(uint8_t, mb_bit_buffer, [ 80 + FF_INPUT_BUFFER_PADDING_SIZE]); /* allow some slack */
147147 LOCAL_ALIGNED_16(uint8_t, vs_bit_buffer, [5*80 + FF_INPUT_BUFFER_PADDING_SIZE]); /* allow some slack */
148148 const int log2_blocksize = 3;
libavcodec/eaidct.c+3−3
@@ -64,7 +64,7 @@ · 63 unmodified lines
6464 #define MUNGE_8BIT(x) av_clip_uint8((x)>>4)
6565 #define IDCT_ROW(dest,src) IDCT_TRANSFORM(dest,0,1,2,3,4,5,6,7,0,1,2,3,4,5,6,7,MUNGE_8BIT,src)
6666
67−static inline void ea_idct_col(DCTELEM *dest, const DCTELEM *src) {
67+static inline void ea_idct_col(int16_t *dest, const int16_t *src) {
6868 if ((src[8]|src[16]|src[24]|src[32]|src[40]|src[48]|src[56])==0) {
6969 dest[0] =
7070 dest[8] =
@@ -78,9 +78,9 @@ static inline void ea_idct_col(DCTELEM *dest, const DCTELEM *src) { · 7 unmodified lines
7878 IDCT_COL(dest, src);
7979 }
8080
81−void ff_ea_idct_put_c(uint8_t *dest, int linesize, DCTELEM *block) {
81+void ff_ea_idct_put_c(uint8_t *dest, int linesize, int16_t *block) {
8282 int i;
83− DCTELEM temp[64];
83+ int16_t temp[64];
8484 block[0] += 4;
8585 for (i=0; i<8; i++)
8686 ea_idct_col(&temp[i], &block[i]);
libavcodec/eaidct.h+1−2
@@ -20,8 +20,7 @@ · 19 unmodified lines
2020 #define AVCODEC_EAIDCT_H
2121
2222 #include <stdint.h>
23−#include "dsputil.h"
2423
25−void ff_ea_idct_put_c(uint8_t *dest, int linesize, DCTELEM *block);
24+void ff_ea_idct_put_c(uint8_t *dest, int linesize, int16_t *block);
2625
2726 #endif /* AVCODEC_EAIDCT_H */
libavcodec/eamad.c+3−3
@@ -51,7 +51,7 @@ typedef struct MadContext { · 50 unmodified lines
5151 GetBitContext gb;
5252 void *bitstream_buf;
5353 unsigned int bitstream_buf_size;
54− DECLARE_ALIGNED(16, DCTELEM, block)[64];
54+ DECLARE_ALIGNED(16, int16_t, block)[64];
5555 ScanTable scantable;
5656 uint16_t quant_matrix[64];
5757 int mb_x;
@@ -96,7 +96,7 @@ static inline void comp_block(MadContext *t, int mb_x, int mb_y, · 38 unmodified lines
9696 }
9797 }
9898
99−static inline void idct_put(MadContext *t, DCTELEM *block, int mb_x, int mb_y, int j)
99+static inline void idct_put(MadContext *t, int16_t *block, int mb_x, int mb_y, int j)
100100 {
101101 if (j < 4) {
102102 ff_ea_idct_put_c(
@@ -110,7 +110,7 @@ static inline void idct_put(MadContext *t, DCTELEM *block, int mb_x, int mb_y, i · 7 unmodified lines
110110 }
111111 }
112112
113−static inline void decode_block_intra(MadContext *s, DCTELEM * block)
113+static inline void decode_block_intra(MadContext *s, int16_t * block)
114114 {
115115 int level, i, j, run;
116116 RLTable *rl = &ff_rl_mpeg1;
libavcodec/eatgq.c+3−3
@@ -43,7 +43,7 @@ typedef struct TgqContext { · 42 unmodified lines
4343 int width,height;
4444 ScanTable scantable;
4545 int qtable[64];
46− DECLARE_ALIGNED(16, DCTELEM, block)[6][64];
46+ DECLARE_ALIGNED(16, int16_t, block)[6][64];
4747 GetByteContext gb;
4848 } TgqContext;
4949
@@ -58,7 +58,7 @@ static av_cold int tgq_decode_init(AVCodecContext *avctx){ · 8 unmodified lines
5858 return 0;
5959 }
6060
61−static void tgq_decode_block(TgqContext *s, DCTELEM block[64], GetBitContext *gb){
61+static void tgq_decode_block(TgqContext *s, int16_t block[64], GetBitContext *gb){
6262 uint8_t *perm = s->scantable.permutated;
6363 int i,j,value;
6464 block[0] = get_sbits(gb,8) * s->qtable[0];
@@ -103,7 +103,7 @@ static void tgq_decode_block(TgqContext *s, DCTELEM block[64], GetBitContext *gb · 38 unmodified lines
103103 block[0] += 128<<4;
104104 }
105105
106−static void tgq_idct_put_mb(TgqContext *s, DCTELEM (*block)[64], int mb_x, int mb_y){
106+static void tgq_idct_put_mb(TgqContext *s, int16_t (*block)[64], int mb_x, int mb_y){
107107 int linesize= s->frame.linesize[0];
108108 uint8_t *dest_y = s->frame.data[0] + (mb_y * 16* linesize ) + mb_x * 16;
109109 uint8_t *dest_cb = s->frame.data[1] + (mb_y * 8 * s->frame.linesize[1]) + mb_x * 8;
libavcodec/eatqi.c+3−3
@@ -40,7 +40,7 @@ typedef struct TqiContext { · 39 unmodified lines
4040 AVFrame frame;
4141 void *bitstream_buf;
4242 unsigned int bitstream_buf_size;
43− DECLARE_ALIGNED(16, DCTELEM, block)[6][64];
43+ DECLARE_ALIGNED(16, int16_t, block)[6][64];
4444 } TqiContext;
4545
4646 static av_cold int tqi_decode_init(AVCodecContext *avctx)
@@ -58,7 +58,7 @@ static av_cold int tqi_decode_init(AVCodecContext *avctx) · 11 unmodified lines
5858 return 0;
5959 }
6060
61−static int tqi_decode_mb(MpegEncContext *s, DCTELEM (*block)[64])
61+static int tqi_decode_mb(MpegEncContext *s, int16_t (*block)[64])
6262 {
6363 int n;
6464 s->dsp.clear_blocks(block[0]);
@@ -69,7 +69,7 @@ static int tqi_decode_mb(MpegEncContext *s, DCTELEM (*block)[64]) · 4 unmodified lines
6969 return 0;
7070 }
7171
72−static inline void tqi_idct_put(TqiContext *t, DCTELEM (*block)[64])
72+static inline void tqi_idct_put(TqiContext *t, int16_t (*block)[64])
7373 {
7474 MpegEncContext *s = &t->s;
7575 int linesize= t->frame.linesize[0];
libavcodec/faandct.c+3−3
@@ -64,7 +64,7 @@ B6*B0, B6*B1, B6*B2, B6*B3, B6*B4, B6*B5, B6*B6, B6*B7, · 63 unmodified lines
6464 B7*B0, B7*B1, B7*B2, B7*B3, B7*B4, B7*B5, B7*B6, B7*B7,
6565 };
6666
67−static av_always_inline void row_fdct(FLOAT temp[64], DCTELEM * data)
67+static av_always_inline void row_fdct(FLOAT temp[64], int16_t *data)
6868 {
6969 FLOAT tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
7070 FLOAT tmp10, tmp11, tmp12, tmp13;
@@ -119,7 +119,7 @@ static av_always_inline void row_fdct(FLOAT temp[64], DCTELEM * data) · 48 unmodified lines
119119 }
120120 }
121121
122−void ff_faandct(DCTELEM * data)
122+void ff_faandct(int16_t *data)
123123 {
124124 FLOAT tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
125125 FLOAT tmp10, tmp11, tmp12, tmp13;
@@ -179,7 +179,7 @@ void ff_faandct(DCTELEM * data) · 53 unmodified lines
179179 }
180180 }
181181
182−void ff_faandct248(DCTELEM * data)
182+void ff_faandct248(int16_t *data)
183183 {
184184 FLOAT tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
185185 FLOAT tmp10, tmp11, tmp12, tmp13;
libavcodec/faandct.h+3−3
@@ -29,9 +29,9 @@ · 28 unmodified lines
2929 #ifndef AVCODEC_FAANDCT_H
3030 #define AVCODEC_FAANDCT_H
3131
32−#include "dsputil.h"
32+#include <stdint.h>
3333
34−void ff_faandct(DCTELEM * data);
35−void ff_faandct248(DCTELEM * data);
34+void ff_faandct(int16_t *data);
35+void ff_faandct248(int16_t *data);
3636
3737 #endif /* AVCODEC_FAANDCT_H */
libavcodec/faanidct.c+4−4
@@ -47,7 +47,7 @@ B6*B0/8, B6*B1/8, B6*B2/8, B6*B3/8, B6*B4/8, B6*B5/8, B6*B6/8, B6*B7/8, · 46 unmodified lines
4747 B7*B0/8, B7*B1/8, B7*B2/8, B7*B3/8, B7*B4/8, B7*B5/8, B7*B6/8, B7*B7/8,
4848 };
4949
50−static inline void p8idct(DCTELEM data[64], FLOAT temp[64], uint8_t *dest, int stride, int x, int y, int type){
50+static inline void p8idct(int16_t data[64], FLOAT temp[64], uint8_t *dest, int stride, int x, int y, int type){
5151 int i;
5252 FLOAT av_unused tmp0;
5353 FLOAT s04, d04, s17, d17, s26, d26, s53, d53;
@@ -129,7 +129,7 @@ static inline void p8idct(DCTELEM data[64], FLOAT temp[64], uint8_t *dest, int s · 75 unmodified lines
129129 }
130130 }
131131
132−void ff_faanidct(DCTELEM block[64]){
132+void ff_faanidct(int16_t block[64]){
133133 FLOAT temp[64];
134134 int i;
135135
@@ -142,7 +142,7 @@ void ff_faanidct(DCTELEM block[64]){ · 6 unmodified lines
142142 p8idct(block, temp, NULL, 0, 8, 1, 1);
143143 }
144144
145−void ff_faanidct_add(uint8_t *dest, int line_size, DCTELEM block[64]){
145+void ff_faanidct_add(uint8_t *dest, int line_size, int16_t block[64]){
146146 FLOAT temp[64];
147147 int i;
148148
@@ -155,7 +155,7 @@ void ff_faanidct_add(uint8_t *dest, int line_size, DCTELEM block[64]){ · 6 unmodified lines
155155 p8idct(NULL , temp, dest, line_size, 8, 1, 2);
156156 }
157157
158−void ff_faanidct_put(uint8_t *dest, int line_size, DCTELEM block[64]){
158+void ff_faanidct_put(uint8_t *dest, int line_size, int16_t block[64]){
159159 FLOAT temp[64];
160160 int i;
161161
libavcodec/faanidct.h+3−4
@@ -23,10 +23,9 @@ · 22 unmodified lines
2323 #define AVCODEC_FAANIDCT_H
2424
2525 #include <stdint.h>
26−#include "dsputil.h"
2726
28−void ff_faanidct(DCTELEM block[64]);
29−void ff_faanidct_add(uint8_t *dest, int line_size, DCTELEM block[64]);
30−void ff_faanidct_put(uint8_t *dest, int line_size, DCTELEM block[64]);
27+void ff_faanidct(int16_t block[64]);
28+void ff_faanidct_add(uint8_t *dest, int line_size, int16_t block[64]);
29+void ff_faanidct_put(uint8_t *dest, int line_size, int16_t block[64]);
3130
3231 #endif /* AVCODEC_FAANIDCT_H */
libavcodec/h261dec.c+2−2
@@ -47,7 +47,7 @@ static VLC h261_mtype_vlc; · 46 unmodified lines
4747 static VLC h261_mv_vlc;
4848 static VLC h261_cbp_vlc;
4949
50−static int h261_decode_block(H261Context * h, DCTELEM * block, int n, int coded);
50+static int h261_decode_block(H261Context * h, int16_t * block, int n, int coded);
5151
5252 static av_cold void h261_decode_init_vlc(H261Context *h){
5353 static int done = 0;
@@ -358,7 +358,7 @@ intra: · 304 unmodified lines
358358 * Decode a macroblock.
359359 * @return <0 if an error occurred
360360 */
361−static int h261_decode_block(H261Context * h, DCTELEM * block,
361+static int h261_decode_block(H261Context * h, int16_t * block,
362362 int n, int coded)
363363 {
364364 MpegEncContext * const s = &h->s;
libavcodec/h261enc.c+4−4
@@ -34,7 +34,7 @@ · 33 unmodified lines
3434
3535 extern uint8_t ff_h261_rl_table_store[2][2*MAX_RUN + MAX_LEVEL + 3];
3636
37−static void h261_encode_block(H261Context * h, DCTELEM * block,
37+static void h261_encode_block(H261Context * h, int16_t * block,
3838 int n);
3939
4040 int ff_h261_get_picture_format(int width, int height){
@@ -143,7 +143,7 @@ static void h261_encode_motion(H261Context * h, int val){ · 102 unmodified lines
143143 }
144144
145145 static inline int get_cbp(MpegEncContext * s,
146− DCTELEM block[6][64])
146+ int16_t block[6][64])
147147 {
148148 int i, cbp;
149149 cbp= 0;
@@ -154,7 +154,7 @@ static inline int get_cbp(MpegEncContext * s, · 4 unmodified lines
154154 return cbp;
155155 }
156156 void ff_h261_encode_mb(MpegEncContext * s,
157− DCTELEM block[6][64],
157+ int16_t block[6][64],
158158 int motion_x, int motion_y)
159159 {
160160 H261Context * h = (H261Context *)s;
@@ -255,7 +255,7 @@ void ff_h261_encode_init(MpegEncContext *s){ · 94 unmodified lines
255255 * @param block the 8x8 block
256256 * @param n block index (0-3 are luma, 4-5 are chroma)
257257 */
258−static void h261_encode_block(H261Context * h, DCTELEM * block, int n){
258+static void h261_encode_block(H261Context * h, int16_t * block, int n){
259259 MpegEncContext * const s = &h->s;
260260 int level, run, i, j, last_index, last_non_zero, sign, slevel, code;
261261 RLTable *rl;
libavcodec/h263.c+1−1
@@ -226,7 +226,7 @@ void ff_h263_loop_filter(MpegEncContext * s){ · 225 unmodified lines
226226 }
227227 }
228228
229−void ff_h263_pred_acdc(MpegEncContext * s, DCTELEM *block, int n)
229+void ff_h263_pred_acdc(MpegEncContext * s, int16_t *block, int n)
230230 {
231231 int x, y, wrap, a, c, pred_dc, scale, i;
232232 int16_t *dc_val, *ac_val, *ac_val1;
libavcodec/h263.h+4−4
@@ -73,7 +73,7 @@ int ff_h263_decode_frame(AVCodecContext *avctx, · 72 unmodified lines
7373 AVPacket *avpkt);
7474 int ff_h263_decode_end(AVCodecContext *avctx);
7575 void ff_h263_encode_mb(MpegEncContext *s,
76− DCTELEM block[6][64],
76+ int16_t block[6][64],
7777 int motion_x, int motion_y);
7878 void ff_h263_encode_picture_header(MpegEncContext *s, int picture_number);
7979 void ff_h263_encode_gob_header(MpegEncContext * s, int mb_line);
@@ -89,7 +89,7 @@ int ff_h263_decode_mba(MpegEncContext *s); · 9 unmodified lines
8989 void ff_h263_encode_mba(MpegEncContext *s);
9090 void ff_init_qscale_tab(MpegEncContext *s);
9191 int ff_h263_pred_dc(MpegEncContext * s, int n, int16_t **dc_val_ptr);
92−void ff_h263_pred_acdc(MpegEncContext * s, DCTELEM *block, int n);
92+void ff_h263_pred_acdc(MpegEncContext * s, int16_t *block, int n);
9393
9494
9595 /**
@@ -99,7 +99,7 @@ void ff_h263_show_pict_info(MpegEncContext *s); · 3 unmodified lines
9999
100100 int ff_intel_h263_decode_picture_header(MpegEncContext *s);
101101 int ff_h263_decode_mb(MpegEncContext *s,
102− DCTELEM block[6][64]);
102+ int16_t block[6][64]);
103103
104104 /**
105105 * Return the value of the 3bit "source format" syntax element.
@@ -144,7 +144,7 @@ static inline void ff_h263_encode_motion_vector(MpegEncContext * s, int x, int y · 38 unmodified lines
144144 }
145145
146146 static inline int get_p_cbp(MpegEncContext * s,
147− DCTELEM block[6][64],
147+ int16_t block[6][64],
148148 int motion_x, int motion_y){
149149 int cbp, i;
150150
libavcodec/h264.c+5−5
@@ -1750,7 +1750,7 @@ static av_always_inline void xchg_mb_border(H264Context *h, uint8_t *src_y, · 1749 unmodified lines
17501750 }
17511751 }
17521752
1753−static av_always_inline int dctcoef_get(DCTELEM *mb, int high_bit_depth,
1753+static av_always_inline int dctcoef_get(int16_t *mb, int high_bit_depth,
17541754 int index)
17551755 {
17561756 if (high_bit_depth) {
@@ -1759,7 +1759,7 @@ static av_always_inline int dctcoef_get(DCTELEM *mb, int high_bit_depth, · 2 unmodified lines
17591759 return AV_RN16A(mb + index);
17601760 }
17611761
1762−static av_always_inline void dctcoef_set(DCTELEM *mb, int high_bit_depth,
1762+static av_always_inline void dctcoef_set(int16_t *mb, int high_bit_depth,
17631763 int index, int value)
17641764 {
17651765 if (high_bit_depth) {
@@ -1778,8 +1778,8 @@ static av_always_inline void hl_decode_mb_predict_luma(H264Context *h, · 12 unmodified lines
17781778 uint8_t *dest_y, int p)
17791779 {
17801780 MpegEncContext *const s = &h->s;
1781− void (*idct_add)(uint8_t *dst, DCTELEM *block, int stride);
1782− void (*idct_dc_add)(uint8_t *dst, DCTELEM *block, int stride);
1781+ void (*idct_add)(uint8_t *dst, int16_t *block, int stride);
1782+ void (*idct_dc_add)(uint8_t *dst, int16_t *block, int stride);
17831783 int i;
17841784 int qscale = p == 0 ? s->qscale : h->chroma_qp[p - 1];
17851785 block_offset += 16 * p;
@@ -1895,7 +1895,7 @@ static av_always_inline void hl_decode_mb_idct_luma(H264Context *h, int mb_type, · 109 unmodified lines
18951895 uint8_t *dest_y, int p)
18961896 {
18971897 MpegEncContext *const s = &h->s;
1898− void (*idct_add)(uint8_t *dst, DCTELEM *block, int stride);
1898+ void (*idct_add)(uint8_t *dst, int16_t *block, int stride);
18991899 int i;
19001900 block_offset += 16 * p;
19011901 if (!IS_INTRA4x4(mb_type)) {
libavcodec/h264.h+3−4
@@ -29,7 +29,6 @@ · 28 unmodified lines
2929 #define AVCODEC_H264_H
3030
3131 #include "libavutil/intreadwrite.h"
32−#include "dsputil.h"
3332 #include "cabac.h"
3433 #include "mpegvideo.h"
3534 #include "h264dsp.h"
@@ -386,9 +385,9 @@ typedef struct H264Context { · 350 unmodified lines
386385 GetBitContext *intra_gb_ptr;
387386 GetBitContext *inter_gb_ptr;
388387
389− DECLARE_ALIGNED(16, DCTELEM, mb)[16 * 48 * 2]; ///< as a dct coeffecient is int32_t in high depth, we need to reserve twice the space.
390− DECLARE_ALIGNED(16, DCTELEM, mb_luma_dc)[3][16 * 2];
391− DCTELEM mb_padding[256 * 2]; ///< as mb is addressed by scantable[i] and scantable is uint8_t we can either check that i is not too large or ensure that there is some unused stuff after mb
388+ DECLARE_ALIGNED(16, int16_t, mb)[16 * 48 * 2]; ///< as a dct coeffecient is int32_t in high depth, we need to reserve twice the space.
389+ DECLARE_ALIGNED(16, int16_t, mb_luma_dc)[3][16 * 2];
390+ int16_t mb_padding[256 * 2]; ///< as mb is addressed by scantable[i] and scantable is uint8_t we can either check that i is not too large or ensure that there is some unused stuff after mb
392391
393392 /**
394393 * Cabac
libavcodec/h264_cabac.c+28−8
@@ -1561,7 +1561,7 @@ static av_always_inline int get_cabac_cbf_ctx( H264Context *h, int cat, int idx, · 1560 unmodified lines
15611561 }
15621562
15631563 static av_always_inline void
1564−decode_cabac_residual_internal(H264Context *h, DCTELEM *block,
1564+decode_cabac_residual_internal(H264Context *h, int16_t *block,
15651565 int cat, int n, const uint8_t *scantable,
15661566 const uint32_t *qmul, int max_coeff,
15671567 int is_dc, int chroma422)
@@ -1745,18 +1745,27 @@ decode_cabac_residual_internal(H264Context *h, DCTELEM *block, · 177 unmodified lines
17451745
17461746 }
17471747
1748−static void decode_cabac_residual_dc_internal( H264Context *h, DCTELEM *block, int cat, int n, const uint8_t *scantable, int max_coeff ) {
1748+static void decode_cabac_residual_dc_internal(H264Context *h, int16_t *block,
1749+ int cat, int n,
1750+ const uint8_t *scantable,
1751+ int max_coeff)
1752+{
17491753 decode_cabac_residual_internal(h, block, cat, n, scantable, NULL, max_coeff, 1, 0);
17501754 }
17511755
1752−static void decode_cabac_residual_dc_internal_422(H264Context *h, DCTELEM *block,
1756+static void decode_cabac_residual_dc_internal_422(H264Context *h, int16_t *block,
17531757 int cat, int n, const uint8_t *scantable,
17541758 int max_coeff)
17551759 {
17561760 decode_cabac_residual_internal(h, block, cat, n, scantable, NULL, max_coeff, 1, 1);
17571761 }
17581762
1759−static void decode_cabac_residual_nondc_internal( H264Context *h, DCTELEM *block, int cat, int n, const uint8_t *scantable, const uint32_t *qmul, int max_coeff ) {
1763+static void decode_cabac_residual_nondc_internal(H264Context *h, int16_t *block,
1764+ int cat, int n,
1765+ const uint8_t *scantable,
1766+ const uint32_t *qmul,
1767+ int max_coeff)
1768+{
17601769 decode_cabac_residual_internal(h, block, cat, n, scantable, qmul, max_coeff, 0, 0);
17611770 }
17621771
@@ -1772,7 +1781,12 @@ static void decode_cabac_residual_nondc_internal( H264Context *h, DCTELEM *block · 9 unmodified lines
17721781 * because it allows improved constant propagation into get_cabac_cbf_ctx,
17731782 * as well as because most blocks have zero CBFs. */
17741783
1775−static av_always_inline void decode_cabac_residual_dc( H264Context *h, DCTELEM *block, int cat, int n, const uint8_t *scantable, int max_coeff ) {
1784+static av_always_inline void decode_cabac_residual_dc(H264Context *h,
1785+ int16_t *block,
1786+ int cat, int n,
1787+ const uint8_t *scantable,
1788+ int max_coeff)
1789+{
17761790 /* read coded block flag */
17771791 if( get_cabac( &h->cabac, &h->cabac_state[get_cabac_cbf_ctx( h, cat, n, max_coeff, 1 ) ] ) == 0 ) {
17781792 h->non_zero_count_cache[scan8[n]] = 0;
@@ -1782,7 +1796,7 @@ static av_always_inline void decode_cabac_residual_dc( H264Context *h, DCTELEM * · 3 unmodified lines
17821796 }
17831797
17841798 static av_always_inline void
1785−decode_cabac_residual_dc_422(H264Context *h, DCTELEM *block,
1799+decode_cabac_residual_dc_422(H264Context *h, int16_t *block,
17861800 int cat, int n, const uint8_t *scantable,
17871801 int max_coeff)
17881802 {
@@ -1794,7 +1808,13 @@ decode_cabac_residual_dc_422(H264Context *h, DCTELEM *block, · 5 unmodified lines
17941808 decode_cabac_residual_dc_internal_422(h, block, cat, n, scantable, max_coeff);
17951809 }
17961810
1797−static av_always_inline void decode_cabac_residual_nondc( H264Context *h, DCTELEM *block, int cat, int n, const uint8_t *scantable, const uint32_t *qmul, int max_coeff ) {
1811+static av_always_inline void decode_cabac_residual_nondc(H264Context *h,
1812+ int16_t *block,
1813+ int cat, int n,
1814+ const uint8_t *scantable,
1815+ const uint32_t *qmul,
1816+ int max_coeff)
1817+{
17981818 /* read coded block flag */
17991819 if( (cat != 5 || CHROMA444) && get_cabac( &h->cabac, &h->cabac_state[get_cabac_cbf_ctx( h, cat, n, max_coeff, 0 ) ] ) == 0 ) {
18001820 if( max_coeff == 64 ) {
@@ -2354,7 +2374,7 @@ decode_intra_mb: · 553 unmodified lines
23542374 if( cbp&0x20 ) {
23552375 int c, i, i8x8;
23562376 for( c = 0; c < 2; c++ ) {
2357− DCTELEM *mb = h->mb + (16*(16 + 16*c) << pixel_shift);
2377+ int16_t *mb = h->mb + (16*(16 + 16*c) << pixel_shift);
23582378 qmul = h->dequant4_coeff[c+1+(IS_INTRA( mb_type ) ? 0:3)][h->chroma_qp[c]];
23592379 for (i8x8 = 0; i8x8 < 2; i8x8++) {
23602380 for (i = 0; i < 4; i++) {
libavcodec/h264_cavlc.c+3−3
@@ -442,7 +442,7 @@ static inline int get_level_prefix(GetBitContext *gb){ · 441 unmodified lines
442442 * @param max_coeff number of coefficients in the block
443443 * @return <0 if an error occurred
444444 */
445−static int decode_residual(H264Context *h, GetBitContext *gb, DCTELEM *block, int n, const uint8_t *scantable, const uint32_t *qmul, int max_coeff){
445+static int decode_residual(H264Context *h, GetBitContext *gb, int16_t *block, int n, const uint8_t *scantable, const uint32_t *qmul, int max_coeff){
446446 MpegEncContext * const s = &h->s;
447447 static const int coeff_token_table_index[17]= {0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3};
448448 int level[16];
@@ -662,7 +662,7 @@ static av_always_inline int decode_luma_residual(H264Context *h, GetBitContext * · 213 unmodified lines
662662 for(i8x8=0; i8x8<4; i8x8++){
663663 if(cbp & (1<<i8x8)){
664664 if(IS_8x8DCT(mb_type)){
665− DCTELEM *buf = &h->mb[64*i8x8+256*p << pixel_shift];
665+ int16_t *buf = &h->mb[64*i8x8+256*p << pixel_shift];
666666 uint8_t *nnz;
667667 for(i4x4=0; i4x4<4; i4x4++){
668668 const int index= i4x4 + 4*i8x8 + p*16;
@@ -1134,7 +1134,7 @@ decode_intra_mb: · 465 unmodified lines
11341134 if(cbp&0x20){
11351135 for(chroma_idx=0; chroma_idx<2; chroma_idx++){
11361136 const uint32_t *qmul = h->dequant4_coeff[chroma_idx+1+(IS_INTRA( mb_type ) ? 0:3)][h->chroma_qp[chroma_idx]];
1137− DCTELEM *mb = h->mb + (16*(16 + 16*chroma_idx) << pixel_shift);
1137+ int16_t *mb = h->mb + (16*(16 + 16*chroma_idx) << pixel_shift);
11381138 for (i8x8 = 0; i8x8 < 2; i8x8++) {
11391139 for (i4x4 = 0; i4x4 < 4; i4x4++) {
11401140 const int index = 16 + 16*chroma_idx + 8*i8x8 + i4x4;
libavcodec/h264_mb_template.c+1−1
@@ -52,7 +52,7 @@ static av_noinline void FUNC(hl_decode_mb)(H264Context *h) · 51 unmodified lines
5252 const int transform_bypass = !SIMPLE && (s->qscale == 0 && h->sps.transform_bypass);
5353 /* is_h264 should always be true if SVQ3 is disabled. */
5454 const int is_h264 = !CONFIG_SVQ3_DECODER || SIMPLE || s->codec_id == AV_CODEC_ID_H264;
55− void (*idct_add)(uint8_t *dst, DCTELEM *block, int stride);
55+ void (*idct_add)(uint8_t *dst, int16_t *block, int stride);
5656 const int block_h = 16 >> s->chroma_y_shift;
5757 const int chroma422 = CHROMA422;
5858
libavcodec/h264dsp.h+11−13
@@ -29,8 +29,6 @@ · 28 unmodified lines
2929
3030 #include <stdint.h>
3131
32−#include "dsputil.h"
33−
3432 typedef void (*h264_weight_func)(uint8_t *block, int stride, int height,
3533 int log2_denom, int weight, int offset);
3634 typedef void (*h264_biweight_func)(uint8_t *dst, uint8_t *src,
@@ -80,29 +78,29 @@ typedef struct H264DSPContext { · 43 unmodified lines
8078
8179 /* IDCT */
8280 void (*h264_idct_add)(uint8_t *dst /*align 4*/,
83− DCTELEM *block /*align 16*/, int stride);
81+ int16_t *block /*align 16*/, int stride);
8482 void (*h264_idct8_add)(uint8_t *dst /*align 8*/,
85− DCTELEM *block /*align 16*/, int stride);
83+ int16_t *block /*align 16*/, int stride);
8684 void (*h264_idct_dc_add)(uint8_t *dst /*align 4*/,
87− DCTELEM *block /*align 16*/, int stride);
85+ int16_t *block /*align 16*/, int stride);
8886 void (*h264_idct8_dc_add)(uint8_t *dst /*align 8*/,
89− DCTELEM *block /*align 16*/, int stride);
87+ int16_t *block /*align 16*/, int stride);
9088
9189 void (*h264_idct_add16)(uint8_t *dst /*align 16*/, const int *blockoffset,
92− DCTELEM *block /*align 16*/, int stride,
90+ int16_t *block /*align 16*/, int stride,
9391 const uint8_t nnzc[15 * 8]);
9492 void (*h264_idct8_add4)(uint8_t *dst /*align 16*/, const int *blockoffset,
95− DCTELEM *block /*align 16*/, int stride,
93+ int16_t *block /*align 16*/, int stride,
9694 const uint8_t nnzc[15 * 8]);
9795 void (*h264_idct_add8)(uint8_t **dst /*align 16*/, const int *blockoffset,
98− DCTELEM *block /*align 16*/, int stride,
96+ int16_t *block /*align 16*/, int stride,
9997 const uint8_t nnzc[15 * 8]);
10098 void (*h264_idct_add16intra)(uint8_t *dst /*align 16*/, const int *blockoffset,
101− DCTELEM *block /*align 16*/,
99+ int16_t *block /*align 16*/,
102100 int stride, const uint8_t nnzc[15 * 8]);
103− void (*h264_luma_dc_dequant_idct)(DCTELEM *output,
104− DCTELEM *input /*align 16*/, int qmul);
105− void (*h264_chroma_dc_dequant_idct)(DCTELEM *block, int qmul);
101+ void (*h264_luma_dc_dequant_idct)(int16_t *output,
102+ int16_t *input /*align 16*/, int qmul);
103+ void (*h264_chroma_dc_dequant_idct)(int16_t *block, int qmul);
106104 } H264DSPContext;
107105
108106 void ff_h264dsp_init(H264DSPContext *c, const int bit_depth,
libavcodec/h264idct_template.c+12−12
@@ -47,7 +47,7 @@ static const uint8_t scan8[16*3]={ · 46 unmodified lines
4747 };
4848 #endif
4949
50−void FUNCC(ff_h264_idct_add)(uint8_t *_dst, DCTELEM *_block, int stride)
50+void FUNCC(ff_h264_idct_add)(uint8_t *_dst, int16_t *_block, int stride)
5151 {
5252 int i;
5353 pixel *dst = (pixel*)_dst;
@@ -81,7 +81,7 @@ void FUNCC(ff_h264_idct_add)(uint8_t *_dst, DCTELEM *_block, int stride) · 27 unmodified lines
8181 }
8282 }
8383
84−void FUNCC(ff_h264_idct8_add)(uint8_t *_dst, DCTELEM *_block, int stride){
84+void FUNCC(ff_h264_idct8_add)(uint8_t *_dst, int16_t *_block, int stride){
8585 int i;
8686 pixel *dst = (pixel*)_dst;
8787 dctcoef *block = (dctcoef*)_block;
@@ -154,7 +154,7 @@ void FUNCC(ff_h264_idct8_add)(uint8_t *_dst, DCTELEM *_block, int stride){ · 66 unmodified lines
154154 }
155155
156156 // assumes all AC coefs are 0
157−void FUNCC(ff_h264_idct_dc_add)(uint8_t *_dst, DCTELEM *block, int stride){
157+void FUNCC(ff_h264_idct_dc_add)(uint8_t *_dst, int16_t *block, int stride){
158158 int i, j;
159159 int dc = (((dctcoef*)block)[0] + 32) >> 6;
160160 pixel *dst = (pixel*)_dst;
@@ -167,7 +167,7 @@ void FUNCC(ff_h264_idct_dc_add)(uint8_t *_dst, DCTELEM *block, int stride){ · 6 unmodified lines
167167 }
168168 }
169169
170−void FUNCC(ff_h264_idct8_dc_add)(uint8_t *_dst, DCTELEM *block, int stride){
170+void FUNCC(ff_h264_idct8_dc_add)(uint8_t *_dst, int16_t *block, int stride){
171171 int i, j;
172172 int dc = (((dctcoef*)block)[0] + 32) >> 6;
173173 pixel *dst = (pixel*)_dst;
@@ -180,7 +180,7 @@ void FUNCC(ff_h264_idct8_dc_add)(uint8_t *_dst, DCTELEM *block, int stride){ · 6 unmodified lines
180180 }
181181 }
182182
183−void FUNCC(ff_h264_idct_add16)(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
183+void FUNCC(ff_h264_idct_add16)(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
184184 int i;
185185 for(i=0; i<16; i++){
186186 int nnz = nnzc[ scan8[i] ];
@@ -191,7 +191,7 @@ void FUNCC(ff_h264_idct_add16)(uint8_t *dst, const int *block_offset, DCTELEM *b · 4 unmodified lines
191191 }
192192 }
193193
194−void FUNCC(ff_h264_idct_add16intra)(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
194+void FUNCC(ff_h264_idct_add16intra)(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
195195 int i;
196196 for(i=0; i<16; i++){
197197 if(nnzc[ scan8[i] ]) FUNCC(ff_h264_idct_add )(dst + block_offset[i], block + i*16*sizeof(pixel), stride);
@@ -199,7 +199,7 @@ void FUNCC(ff_h264_idct_add16intra)(uint8_t *dst, const int *block_offset, DCTEL · 1 unmodified line
199199 }
200200 }
201201
202−void FUNCC(ff_h264_idct8_add4)(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
202+void FUNCC(ff_h264_idct8_add4)(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
203203 int i;
204204 for(i=0; i<16; i+=4){
205205 int nnz = nnzc[ scan8[i] ];
@@ -210,7 +210,7 @@ void FUNCC(ff_h264_idct8_add4)(uint8_t *dst, const int *block_offset, DCTELEM *b · 4 unmodified lines
210210 }
211211 }
212212
213−void FUNCC(ff_h264_idct_add8)(uint8_t **dest, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
213+void FUNCC(ff_h264_idct_add8)(uint8_t **dest, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
214214 int i, j;
215215 for(j=1; j<3; j++){
216216 for(i=j*16; i<j*16+4; i++){
@@ -222,7 +222,7 @@ void FUNCC(ff_h264_idct_add8)(uint8_t **dest, const int *block_offset, DCTELEM * · 5 unmodified lines
222222 }
223223 }
224224
225−void FUNCC(ff_h264_idct_add8_422)(uint8_t **dest, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
225+void FUNCC(ff_h264_idct_add8_422)(uint8_t **dest, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
226226 int i, j;
227227
228228 for(j=1; j<3; j++){
@@ -248,7 +248,7 @@ void FUNCC(ff_h264_idct_add8_422)(uint8_t **dest, const int *block_offset, DCTEL · 19 unmodified lines
248248 * IDCT transforms the 16 dc values and dequantizes them.
249249 * @param qmul quantization parameter
250250 */
251−void FUNCC(ff_h264_luma_dc_dequant_idct)(DCTELEM *_output, DCTELEM *_input, int qmul){
251+void FUNCC(ff_h264_luma_dc_dequant_idct)(int16_t *_output, int16_t *_input, int qmul){
252252 #define stride 16
253253 int i;
254254 int temp[16];
@@ -283,7 +283,7 @@ void FUNCC(ff_h264_luma_dc_dequant_idct)(DCTELEM *_output, DCTELEM *_input, int · 28 unmodified lines
283283 #undef stride
284284 }
285285
286−void FUNCC(ff_h264_chroma422_dc_dequant_idct)(DCTELEM *_block, int qmul){
286+void FUNCC(ff_h264_chroma422_dc_dequant_idct)(int16_t *_block, int qmul){
287287 const int stride= 16*2;
288288 const int xStride= 16;
289289 int i;
@@ -310,7 +310,7 @@ void FUNCC(ff_h264_chroma422_dc_dequant_idct)(DCTELEM *_block, int qmul){ · 20 unmodified lines
310310 }
311311 }
312312
313−void FUNCC(ff_h264_chroma_dc_dequant_idct)(DCTELEM *_block, int qmul){
313+void FUNCC(ff_h264_chroma_dc_dequant_idct)(int16_t *_block, int qmul){
314314 const int stride= 16*2;
315315 const int xStride= 16;
316316 int a,b,c,d,e;
libavcodec/h264pred.h+6−6
@@ -28,8 +28,8 @@ · 27 unmodified lines
2828 #ifndef AVCODEC_H264PRED_H
2929 #define AVCODEC_H264PRED_H
3030
31−#include "libavutil/common.h"
32−#include "dsputil.h"
31+#include <stddef.h>
32+#include <stdint.h>
3333
3434 /**
3535 * Prediction types
@@ -98,15 +98,15 @@ typedef struct H264PredContext { · 62 unmodified lines
9898 void(*pred16x16[4 + 3 + 2])(uint8_t *src, ptrdiff_t stride);
9999
100100 void(*pred4x4_add[2])(uint8_t *pix /*align 4*/,
101− const DCTELEM *block /*align 16*/, ptrdiff_t stride);
101+ const int16_t *block /*align 16*/, ptrdiff_t stride);
102102 void(*pred8x8l_add[2])(uint8_t *pix /*align 8*/,
103− const DCTELEM *block /*align 16*/, ptrdiff_t stride);
103+ const int16_t *block /*align 16*/, ptrdiff_t stride);
104104 void(*pred8x8_add[3])(uint8_t *pix /*align 8*/,
105105 const int *block_offset,
106− const DCTELEM *block /*align 16*/, ptrdiff_t stride);
106+ const int16_t *block /*align 16*/, ptrdiff_t stride);
107107 void(*pred16x16_add[3])(uint8_t *pix /*align 16*/,
108108 const int *block_offset,
109− const DCTELEM *block /*align 16*/, ptrdiff_t stride);
109+ const int16_t *block /*align 16*/, ptrdiff_t stride);
110110 } H264PredContext;
111111
112112 void ff_h264_pred_init(H264PredContext *h, int codec_id,
libavcodec/h264pred_template.c+10−10
@@ -1131,7 +1131,7 @@ static void FUNCC(pred8x8l_horizontal_up)(uint8_t *_src, int has_topleft, · 1130 unmodified lines
11311131 #undef PL
11321132 #undef SRC
11331133
1134−static void FUNCC(pred4x4_vertical_add)(uint8_t *_pix, const DCTELEM *_block,
1134+static void FUNCC(pred4x4_vertical_add)(uint8_t *_pix, const int16_t *_block,
11351135 ptrdiff_t stride)
11361136 {
11371137 int i;
@@ -1150,7 +1150,7 @@ static void FUNCC(pred4x4_vertical_add)(uint8_t *_pix, const DCTELEM *_block, · 12 unmodified lines
11501150 }
11511151 }
11521152
1153−static void FUNCC(pred4x4_horizontal_add)(uint8_t *_pix, const DCTELEM *_block,
1153+static void FUNCC(pred4x4_horizontal_add)(uint8_t *_pix, const int16_t *_block,
11541154 ptrdiff_t stride)
11551155 {
11561156 int i;
@@ -1168,7 +1168,7 @@ static void FUNCC(pred4x4_horizontal_add)(uint8_t *_pix, const DCTELEM *_block, · 11 unmodified lines
11681168 }
11691169 }
11701170
1171−static void FUNCC(pred8x8l_vertical_add)(uint8_t *_pix, const DCTELEM *_block,
1171+static void FUNCC(pred8x8l_vertical_add)(uint8_t *_pix, const int16_t *_block,
11721172 ptrdiff_t stride)
11731173 {
11741174 int i;
@@ -1191,7 +1191,7 @@ static void FUNCC(pred8x8l_vertical_add)(uint8_t *_pix, const DCTELEM *_block, · 16 unmodified lines
11911191 }
11921192 }
11931193
1194−static void FUNCC(pred8x8l_horizontal_add)(uint8_t *_pix, const DCTELEM *_block,
1194+static void FUNCC(pred8x8l_horizontal_add)(uint8_t *_pix, const int16_t *_block,
11951195 ptrdiff_t stride)
11961196 {
11971197 int i;
@@ -1214,7 +1214,7 @@ static void FUNCC(pred8x8l_horizontal_add)(uint8_t *_pix, const DCTELEM *_block, · 16 unmodified lines
12141214 }
12151215
12161216 static void FUNCC(pred16x16_vertical_add)(uint8_t *pix, const int *block_offset,
1217− const DCTELEM *block,
1217+ const int16_t *block,
12181218 ptrdiff_t stride)
12191219 {
12201220 int i;
@@ -1224,7 +1224,7 @@ static void FUNCC(pred16x16_vertical_add)(uint8_t *pix, const int *block_offset, · 3 unmodified lines
12241224
12251225 static void FUNCC(pred16x16_horizontal_add)(uint8_t *pix,
12261226 const int *block_offset,
1227− const DCTELEM *block,
1227+ const int16_t *block,
12281228 ptrdiff_t stride)
12291229 {
12301230 int i;
@@ -1233,7 +1233,7 @@ static void FUNCC(pred16x16_horizontal_add)(uint8_t *pix, · 2 unmodified lines
12331233 }
12341234
12351235 static void FUNCC(pred8x8_vertical_add)(uint8_t *pix, const int *block_offset,
1236− const DCTELEM *block, ptrdiff_t stride)
1236+ const int16_t *block, ptrdiff_t stride)
12371237 {
12381238 int i;
12391239 for(i=0; i<4; i++)
@@ -1241,7 +1241,7 @@ static void FUNCC(pred8x8_vertical_add)(uint8_t *pix, const int *block_offset, · 1 unmodified line
12411241 }
12421242
12431243 static void FUNCC(pred8x16_vertical_add)(uint8_t *pix, const int *block_offset,
1244− const DCTELEM *block, ptrdiff_t stride)
1244+ const int16_t *block, ptrdiff_t stride)
12451245 {
12461246 int i;
12471247 for(i=0; i<4; i++)
@@ -1251,7 +1251,7 @@ static void FUNCC(pred8x16_vertical_add)(uint8_t *pix, const int *block_offset, · 3 unmodified lines
12511251 }
12521252
12531253 static void FUNCC(pred8x8_horizontal_add)(uint8_t *pix, const int *block_offset,
1254− const DCTELEM *block,
1254+ const int16_t *block,
12551255 ptrdiff_t stride)
12561256 {
12571257 int i;
@@ -1261,7 +1261,7 @@ static void FUNCC(pred8x8_horizontal_add)(uint8_t *pix, const int *block_offset, · 3 unmodified lines
12611261
12621262 static void FUNCC(pred8x16_horizontal_add)(uint8_t *pix,
12631263 const int *block_offset,
1264− const DCTELEM *block, ptrdiff_t stride)
1264+ const int16_t *block, ptrdiff_t stride)
12651265 {
12661266 int i;
12671267 for(i=0; i<4; i++)
libavcodec/ituh263dec.c+3−3
@@ -438,7 +438,7 @@ static void h263_decode_dquant(MpegEncContext *s){ · 437 unmodified lines
438438 ff_set_qscale(s, s->qscale);
439439 }
440440
441−static int h263_decode_block(MpegEncContext * s, DCTELEM * block,
441+static int h263_decode_block(MpegEncContext * s, int16_t * block,
442442 int n, int coded)
443443 {
444444 int code, level, i, j, last, run;
@@ -563,7 +563,7 @@ not_coded: · 118 unmodified lines
563563
564564 static int h263_skip_b_part(MpegEncContext *s, int cbp)
565565 {
566− LOCAL_ALIGNED_16(DCTELEM, dblock, [64]);
566+ LOCAL_ALIGNED_16(int16_t, dblock, [64]);
567567 int i, mbi;
568568
569569 /* we have to set s->mb_intra to zero to decode B-part of PB-frame correctly
@@ -599,7 +599,7 @@ static int h263_get_modb(GetBitContext *gb, int pb_frame, int *cbpb) · 29 unmodified lines
599599 }
600600
601601 int ff_h263_decode_mb(MpegEncContext *s,
602− DCTELEM block[6][64])
602+ int16_t block[6][64])
603603 {
604604 int cbpc, cbpy, i, cbp, pred_x, pred_y, mx, my, dquant;
605605 int16_t *mot_val;
libavcodec/ituh263enc.c+2−2
@@ -306,7 +306,7 @@ static const int dquant_code[5]= {1,0,9,2,3}; · 305 unmodified lines
306306 * @param block the 8x8 block
307307 * @param n block index (0-3 are luma, 4-5 are chroma)
308308 */
309−static void h263_encode_block(MpegEncContext * s, DCTELEM * block, int n)
309+static void h263_encode_block(MpegEncContext * s, int16_t * block, int n)
310310 {
311311 int level, run, last, i, j, last_index, last_non_zero, sign, slevel, code;
312312 RLTable *rl;
@@ -455,7 +455,7 @@ static void h263p_encode_umotion(MpegEncContext * s, int val) · 142 unmodified lines
455455 }
456456
457457 void ff_h263_encode_mb(MpegEncContext * s,
458− DCTELEM block[6][64],
458+ int16_t block[6][64],
459459 int motion_x, int motion_y)
460460 {
461461 int cbpc, cbpy, i, cbp, pred_x, pred_y;
libavcodec/jfdctfst.c+9−9
@@ -136,17 +136,17 @@ · 135 unmodified lines
136136 #endif
137137
138138
139−/* Multiply a DCTELEM variable by an int32_t constant, and immediately
140− * descale to yield a DCTELEM result.
139+/* Multiply a int16_t variable by an int32_t constant, and immediately
140+ * descale to yield a int16_t result.
141141 */
142142
143−#define MULTIPLY(var,const) ((DCTELEM) DESCALE((var) * (const), CONST_BITS))
143+#define MULTIPLY(var,const) ((int16_t) DESCALE((var) * (const), CONST_BITS))
144144
145−static av_always_inline void row_fdct(DCTELEM * data){
145+static av_always_inline void row_fdct(int16_t * data){
146146 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
147147 int tmp10, tmp11, tmp12, tmp13;
148148 int z1, z2, z3, z4, z5, z11, z13;
149− DCTELEM *dataptr;
149+ int16_t *dataptr;
150150 int ctr;
151151
152152 /* Pass 1: process rows. */
@@ -205,12 +205,12 @@ static av_always_inline void row_fdct(DCTELEM * data){ · 52 unmodified lines
205205 */
206206
207207 GLOBAL(void)
208−ff_fdct_ifast (DCTELEM * data)
208+ff_fdct_ifast (int16_t * data)
209209 {
210210 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
211211 int tmp10, tmp11, tmp12, tmp13;
212212 int z1, z2, z3, z4, z5, z11, z13;
213− DCTELEM *dataptr;
213+ int16_t *dataptr;
214214 int ctr;
215215
216216 row_fdct(data);
@@ -271,12 +271,12 @@ ff_fdct_ifast (DCTELEM * data) · 54 unmodified lines
271271 */
272272
273273 GLOBAL(void)
274−ff_fdct_ifast248 (DCTELEM * data)
274+ff_fdct_ifast248 (int16_t * data)
275275 {
276276 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
277277 int tmp10, tmp11, tmp12, tmp13;
278278 int z1;
279− DCTELEM *dataptr;
279+ int16_t *dataptr;
280280 int ctr;
281281
282282 row_fdct(data);
libavcodec/jfdctint_template.c+14−14
@@ -184,12 +184,12 @@ · 183 unmodified lines
184184 #endif
185185
186186
187−static av_always_inline void FUNC(row_fdct)(DCTELEM *data)
187+static av_always_inline void FUNC(row_fdct)(int16_t *data)
188188 {
189189 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
190190 int tmp10, tmp11, tmp12, tmp13;
191191 int z1, z2, z3, z4, z5;
192− DCTELEM *dataptr;
192+ int16_t *dataptr;
193193 int ctr;
194194
195195 /* Pass 1: process rows. */
@@ -216,13 +216,13 @@ static av_always_inline void FUNC(row_fdct)(DCTELEM *data) · 20 unmodified lines
216216 tmp11 = tmp1 + tmp2;
217217 tmp12 = tmp1 - tmp2;
218218
219− dataptr[0] = (DCTELEM) ((tmp10 + tmp11) << PASS1_BITS);
220− dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS);
219+ dataptr[0] = (int16_t) ((tmp10 + tmp11) << PASS1_BITS);
220+ dataptr[4] = (int16_t) ((tmp10 - tmp11) << PASS1_BITS);
221221
222222 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100);
223− dataptr[2] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp13, FIX_0_765366865),
223+ dataptr[2] = (int16_t) DESCALE(z1 + MULTIPLY(tmp13, FIX_0_765366865),
224224 CONST_BITS-PASS1_BITS);
225− dataptr[6] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp12, - FIX_1_847759065),
225+ dataptr[6] = (int16_t) DESCALE(z1 + MULTIPLY(tmp12, - FIX_1_847759065),
226226 CONST_BITS-PASS1_BITS);
227227
228228 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
@@ -248,10 +248,10 @@ static av_always_inline void FUNC(row_fdct)(DCTELEM *data) · 19 unmodified lines
248248 z3 += z5;
249249 z4 += z5;
250250
251− dataptr[7] = (DCTELEM) DESCALE(tmp4 + z1 + z3, CONST_BITS-PASS1_BITS);
252− dataptr[5] = (DCTELEM) DESCALE(tmp5 + z2 + z4, CONST_BITS-PASS1_BITS);
253− dataptr[3] = (DCTELEM) DESCALE(tmp6 + z2 + z3, CONST_BITS-PASS1_BITS);
254− dataptr[1] = (DCTELEM) DESCALE(tmp7 + z1 + z4, CONST_BITS-PASS1_BITS);
251+ dataptr[7] = (int16_t) DESCALE(tmp4 + z1 + z3, CONST_BITS-PASS1_BITS);
252+ dataptr[5] = (int16_t) DESCALE(tmp5 + z2 + z4, CONST_BITS-PASS1_BITS);
253+ dataptr[3] = (int16_t) DESCALE(tmp6 + z2 + z3, CONST_BITS-PASS1_BITS);
254+ dataptr[1] = (int16_t) DESCALE(tmp7 + z1 + z4, CONST_BITS-PASS1_BITS);
255255
256256 dataptr += DCTSIZE; /* advance pointer to next row */
257257 }
@@ -262,12 +262,12 @@ static av_always_inline void FUNC(row_fdct)(DCTELEM *data) · 4 unmodified lines
262262 */
263263
264264 GLOBAL(void)
265−FUNC(ff_jpeg_fdct_islow)(DCTELEM *data)
265+FUNC(ff_jpeg_fdct_islow)(int16_t *data)
266266 {
267267 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
268268 int tmp10, tmp11, tmp12, tmp13;
269269 int z1, z2, z3, z4, z5;
270− DCTELEM *dataptr;
270+ int16_t *dataptr;
271271 int ctr;
272272
273273 FUNC(row_fdct)(data);
@@ -344,12 +344,12 @@ FUNC(ff_jpeg_fdct_islow)(DCTELEM *data) · 70 unmodified lines
344344 * you do even part two times.
345345 */
346346 GLOBAL(void)
347−FUNC(ff_fdct248_islow)(DCTELEM *data)
347+FUNC(ff_fdct248_islow)(int16_t *data)
348348 {
349349 int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
350350 int tmp10, tmp11, tmp12, tmp13;
351351 int z1;
352− DCTELEM *dataptr;
352+ int16_t *dataptr;
353353 int ctr;
354354
355355 FUNC(row_fdct)(data);
libavcodec/jrevdct.c+19−19
@@ -74,7 +74,7 @@ · 73 unmodified lines
7474
7575 #define RIGHT_SHIFT(x, n) ((x) >> (n))
7676
77−typedef DCTELEM DCTBLOCK[DCTSIZE2];
77+typedef int16_t DCTBLOCK[DCTSIZE2];
7878
7979 #define CONST_BITS 13
8080
@@ -213,7 +213,7 @@ void ff_j_rev_dct(DCTBLOCK data) · 132 unmodified lines
213213 int32_t tmp10, tmp11, tmp12, tmp13;
214214 int32_t z1, z2, z3, z4, z5;
215215 int32_t d0, d1, d2, d3, d4, d5, d6, d7;
216− register DCTELEM *dataptr;
216+ register int16_t *dataptr;
217217 int rowctr;
218218
219219 /* Pass 1: process rows. */
@@ -249,7 +249,7 @@ void ff_j_rev_dct(DCTBLOCK data) · 29 unmodified lines
249249 /* AC terms all zero */
250250 if (d0) {
251251 /* Compute a 32 bit value to assign. */
252− DCTELEM dcval = (DCTELEM) (d0 << PASS1_BITS);
252+ int16_t dcval = (int16_t) (d0 << PASS1_BITS);
253253 register int v = (dcval & 0xffff) | ((dcval << 16) & 0xffff0000);
254254
255255 idataptr[0] = v;
@@ -574,14 +574,14 @@ void ff_j_rev_dct(DCTBLOCK data) · 318 unmodified lines
574574 }
575575 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
576576
577− dataptr[0] = (DCTELEM) DESCALE(tmp10 + tmp3, CONST_BITS-PASS1_BITS);
578− dataptr[7] = (DCTELEM) DESCALE(tmp10 - tmp3, CONST_BITS-PASS1_BITS);
579− dataptr[1] = (DCTELEM) DESCALE(tmp11 + tmp2, CONST_BITS-PASS1_BITS);
580− dataptr[6] = (DCTELEM) DESCALE(tmp11 - tmp2, CONST_BITS-PASS1_BITS);
581− dataptr[2] = (DCTELEM) DESCALE(tmp12 + tmp1, CONST_BITS-PASS1_BITS);
582− dataptr[5] = (DCTELEM) DESCALE(tmp12 - tmp1, CONST_BITS-PASS1_BITS);
583− dataptr[3] = (DCTELEM) DESCALE(tmp13 + tmp0, CONST_BITS-PASS1_BITS);
584− dataptr[4] = (DCTELEM) DESCALE(tmp13 - tmp0, CONST_BITS-PASS1_BITS);
577+ dataptr[0] = (int16_t) DESCALE(tmp10 + tmp3, CONST_BITS-PASS1_BITS);
578+ dataptr[7] = (int16_t) DESCALE(tmp10 - tmp3, CONST_BITS-PASS1_BITS);
579+ dataptr[1] = (int16_t) DESCALE(tmp11 + tmp2, CONST_BITS-PASS1_BITS);
580+ dataptr[6] = (int16_t) DESCALE(tmp11 - tmp2, CONST_BITS-PASS1_BITS);
581+ dataptr[2] = (int16_t) DESCALE(tmp12 + tmp1, CONST_BITS-PASS1_BITS);
582+ dataptr[5] = (int16_t) DESCALE(tmp12 - tmp1, CONST_BITS-PASS1_BITS);
583+ dataptr[3] = (int16_t) DESCALE(tmp13 + tmp0, CONST_BITS-PASS1_BITS);
584+ dataptr[4] = (int16_t) DESCALE(tmp13 - tmp0, CONST_BITS-PASS1_BITS);
585585
586586 dataptr += DCTSIZE; /* advance pointer to next row */
587587 }
@@ -920,21 +920,21 @@ void ff_j_rev_dct(DCTBLOCK data) · 332 unmodified lines
920920
921921 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
922922
923− dataptr[DCTSIZE*0] = (DCTELEM) DESCALE(tmp10 + tmp3,
923+ dataptr[DCTSIZE*0] = (int16_t) DESCALE(tmp10 + tmp3,
924924 CONST_BITS+PASS1_BITS+3);
925− dataptr[DCTSIZE*7] = (DCTELEM) DESCALE(tmp10 - tmp3,
925+ dataptr[DCTSIZE*7] = (int16_t) DESCALE(tmp10 - tmp3,
926926 CONST_BITS+PASS1_BITS+3);
927− dataptr[DCTSIZE*1] = (DCTELEM) DESCALE(tmp11 + tmp2,
927+ dataptr[DCTSIZE*1] = (int16_t) DESCALE(tmp11 + tmp2,
928928 CONST_BITS+PASS1_BITS+3);
929− dataptr[DCTSIZE*6] = (DCTELEM) DESCALE(tmp11 - tmp2,
929+ dataptr[DCTSIZE*6] = (int16_t) DESCALE(tmp11 - tmp2,
930930 CONST_BITS+PASS1_BITS+3);
931− dataptr[DCTSIZE*2] = (DCTELEM) DESCALE(tmp12 + tmp1,
931+ dataptr[DCTSIZE*2] = (int16_t) DESCALE(tmp12 + tmp1,
932932 CONST_BITS+PASS1_BITS+3);
933− dataptr[DCTSIZE*5] = (DCTELEM) DESCALE(tmp12 - tmp1,
933+ dataptr[DCTSIZE*5] = (int16_t) DESCALE(tmp12 - tmp1,
934934 CONST_BITS+PASS1_BITS+3);
935− dataptr[DCTSIZE*3] = (DCTELEM) DESCALE(tmp13 + tmp0,
935+ dataptr[DCTSIZE*3] = (int16_t) DESCALE(tmp13 + tmp0,
936936 CONST_BITS+PASS1_BITS+3);
937− dataptr[DCTSIZE*4] = (DCTELEM) DESCALE(tmp13 - tmp0,
937+ dataptr[DCTSIZE*4] = (int16_t) DESCALE(tmp13 - tmp0,
938938 CONST_BITS+PASS1_BITS+3);
939939
940940 dataptr++; /* advance pointer to next column */
libavcodec/mdec.c+4−4
@@ -45,14 +45,14 @@ typedef struct MDECContext{ · 44 unmodified lines
4545 int mb_width;
4646 int mb_height;
4747 int mb_x, mb_y;
48− DECLARE_ALIGNED(16, DCTELEM, block)[6][64];
48+ DECLARE_ALIGNED(16, int16_t, block)[6][64];
4949 uint8_t *bitstream_buffer;
5050 unsigned int bitstream_buffer_size;
5151 int block_last_index[6];
5252 } MDECContext;
5353
5454 //very similar to MPEG-1
55−static inline int mdec_decode_block_intra(MDECContext *a, DCTELEM *block, int n)
55+static inline int mdec_decode_block_intra(MDECContext *a, int16_t *block, int n)
5656 {
5757 int level, diff, i, j, run;
5858 int component;
@@ -119,7 +119,7 @@ static inline int mdec_decode_block_intra(MDECContext *a, DCTELEM *block, int n) · 60 unmodified lines
119119 return 0;
120120 }
121121
122−static inline int decode_mb(MDECContext *a, DCTELEM block[6][64]){
122+static inline int decode_mb(MDECContext *a, int16_t block[6][64]){
123123 int i;
124124 const int block_index[6]= {5,4,0,1,2,3};
125125
@@ -134,7 +134,7 @@ static inline int decode_mb(MDECContext *a, DCTELEM block[6][64]){ · 8 unmodified lines
134134 }
135135
136136 static inline void idct_put(MDECContext *a, int mb_x, int mb_y){
137− DCTELEM (*block)[64]= a->block;
137+ int16_t (*block)[64]= a->block;
138138 int linesize= a->picture.linesize[0];
139139
140140 uint8_t *dest_y = a->picture.data[0] + (mb_y * 16* linesize ) + mb_x * 16;
libavcodec/mimic.c+2−2
@@ -47,7 +47,7 @@ typedef struct { · 46 unmodified lines
4747 AVFrame buf_ptrs [16];
4848 AVPicture flipped_ptrs[16];
4949
50− DECLARE_ALIGNED(16, DCTELEM, dct_block)[64];
50+ DECLARE_ALIGNED(16, int16_t, dct_block)[64];
5151
5252 GetBitContext gb;
5353 ScanTable scantable;
@@ -183,7 +183,7 @@ static const int8_t vlcdec_lookup[9][64] = { · 129 unmodified lines
183183
184184 static int vlc_decode_block(MimicContext *ctx, int num_coeffs, int qscale)
185185 {
186− DCTELEM *block = ctx->dct_block;
186+ int16_t *block = ctx->dct_block;
187187 unsigned int pos;
188188
189189 ctx->dsp.clear_block(block);
libavcodec/mjpegdec.c+6−6
@@ -408,7 +408,7 @@ static inline int mjpeg_decode_dc(MJpegDecodeContext *s, int dc_index) · 407 unmodified lines
408408 }
409409
410410 /* decode block and dequantize */
411−static int decode_block(MJpegDecodeContext *s, DCTELEM *block, int component,
411+static int decode_block(MJpegDecodeContext *s, int16_t *block, int component,
412412 int dc_index, int ac_index, int16_t *quant_matrix)
413413 {
414414 int code, i, j, level, val;
@@ -456,7 +456,7 @@ static int decode_block(MJpegDecodeContext *s, DCTELEM *block, int component, · 41 unmodified lines
456456 return 0;
457457 }
458458
459−static int decode_dc_progressive(MJpegDecodeContext *s, DCTELEM *block,
459+static int decode_dc_progressive(MJpegDecodeContext *s, int16_t *block,
460460 int component, int dc_index,
461461 int16_t *quant_matrix, int Al)
462462 {
@@ -474,7 +474,7 @@ static int decode_dc_progressive(MJpegDecodeContext *s, DCTELEM *block, · 11 unmodified lines
474474 }
475475
476476 /* decode block and dequantize - progressive JPEG version */
477−static int decode_block_progressive(MJpegDecodeContext *s, DCTELEM *block,
477+static int decode_block_progressive(MJpegDecodeContext *s, int16_t *block,
478478 uint8_t *last_nnz, int ac_index,
479479 int16_t *quant_matrix,
480480 int ss, int se, int Al, int *EOBRUN)
@@ -572,7 +572,7 @@ for (; ; i++) { \ · 91 unmodified lines
572572 }
573573
574574 /* decode block and dequantize - progressive JPEG refinement pass */
575−static int decode_block_refinement(MJpegDecodeContext *s, DCTELEM *block,
575+static int decode_block_refinement(MJpegDecodeContext *s, int16_t *block,
576576 uint8_t *last_nnz,
577577 int ac_index, int16_t *quant_matrix,
578578 int ss, int se, int Al, int *EOBRUN)
@@ -880,7 +880,7 @@ static int mjpeg_decode_scan(MJpegDecodeContext *s, int nb_components, int Ah, · 301 unmodified lines
880880 } else {
881881 int block_idx = s->block_stride[c] * (v * mb_y + y) +
882882 (h * mb_x + x);
883− DCTELEM *block = s->blocks[c][block_idx];
883+ int16_t *block = s->blocks[c][block_idx];
884884 if (Ah)
885885 block[0] += get_bits1(&s->gb) *
886886 s->quant_matrixes[s->quant_index[c]][0] << Al;
@@ -957,7 +957,7 @@ static int mjpeg_decode_scan_progressive_ac(MJpegDecodeContext *s, int ss, · 70 unmodified lines
957957 int block_offset = mb_y * linesize * 8;
958958 uint8_t *ptr = data + block_offset;
959959 int block_idx = mb_y * s->block_stride[c];
960− DCTELEM (*block)[64] = &s->blocks[c][block_idx];
960+ int16_t (*block)[64] = &s->blocks[c][block_idx];
961961 uint8_t *last_nnz = &s->last_nnz[c][block_idx];
962962 for (mb_x = 0; mb_x < s->mb_width; mb_x++, block++, last_nnz++) {
963963 const int copy_mb = mb_bitmask && !get_bits1(&mb_bitmask_gb);
libavcodec/mjpegdec.h+2−2
@@ -88,8 +88,8 @@ typedef struct MJpegDecodeContext { · 87 unmodified lines
8888 int got_picture; ///< we found a SOF and picture is valid, too.
8989 int linesize[MAX_COMPONENTS]; ///< linesize << interlaced
9090 int8_t *qscale_table;
91− DECLARE_ALIGNED(16, DCTELEM, block)[64];
92− DCTELEM (*blocks[MAX_COMPONENTS])[64]; ///< intermediate sums (progressive mode)
91+ DECLARE_ALIGNED(16, int16_t, block)[64];
92+ int16_t (*blocks[MAX_COMPONENTS])[64]; ///< intermediate sums (progressive mode)
9393 uint8_t *last_nnz[MAX_COMPONENTS];
9494 uint64_t coefs_finished[MAX_COMPONENTS]; ///< bitmask of which coefs have been completely decoded (progressive mode)
9595 ScanTable scantable;
libavcodec/mjpegenc.c+2−2
@@ -369,7 +369,7 @@ void ff_mjpeg_encode_dc(MpegEncContext *s, int val, · 368 unmodified lines
369369 }
370370 }
371371
372−static void encode_block(MpegEncContext *s, DCTELEM *block, int n)
372+static void encode_block(MpegEncContext *s, int16_t *block, int n)
373373 {
374374 int mant, nbits, code, i, j;
375375 int component, dc, run, last_index, val;
@@ -427,7 +427,7 @@ static void encode_block(MpegEncContext *s, DCTELEM *block, int n) · 51 unmodified lines
427427 put_bits(&s->pb, huff_size_ac[0], huff_code_ac[0]);
428428 }
429429
430−void ff_mjpeg_encode_mb(MpegEncContext *s, DCTELEM block[6][64])
430+void ff_mjpeg_encode_mb(MpegEncContext *s, int16_t block[6][64])
431431 {
432432 int i;
433433 for(i=0;i<5;i++) {
libavcodec/mjpegenc.h+3−2
@@ -33,7 +33,8 @@ · 32 unmodified lines
3333 #ifndef AVCODEC_MJPEGENC_H
3434 #define AVCODEC_MJPEGENC_H
3535
36−#include "dsputil.h"
36+#include <stdint.h>
37+
3738 #include "mpegvideo.h"
3839
3940 typedef struct MJpegContext {
@@ -55,6 +56,6 @@ void ff_mjpeg_encode_picture_trailer(MpegEncContext *s); · 15 unmodified lines
5556 void ff_mjpeg_encode_stuffing(PutBitContext *pbc);
5657 void ff_mjpeg_encode_dc(MpegEncContext *s, int val,
5758 uint8_t *huff_size, uint16_t *huff_code);
58−void ff_mjpeg_encode_mb(MpegEncContext *s, DCTELEM block[6][64]);
59+void ff_mjpeg_encode_mb(MpegEncContext *s, int16_t block[6][64]);
5960
6061 #endif /* AVCODEC_MJPEGENC_H */
libavcodec/mpeg12.c+10−10
@@ -80,7 +80,7 @@ static int mpeg_decode_motion(MpegEncContext *s, int fcode, int pred) · 79 unmodified lines
8080 return sign_extend(val, 5 + shift);
8181 }
8282
83−static inline int mpeg1_decode_block_intra(MpegEncContext *s, DCTELEM *block, int n)
83+static inline int mpeg1_decode_block_intra(MpegEncContext *s, int16_t *block, int n)
8484 {
8585 int level, dc, diff, i, j, run;
8686 int component;
@@ -151,12 +151,12 @@ static inline int mpeg1_decode_block_intra(MpegEncContext *s, DCTELEM *block, in · 64 unmodified lines
151151 return 0;
152152 }
153153
154−int ff_mpeg1_decode_block_intra(MpegEncContext *s, DCTELEM *block, int n)
154+int ff_mpeg1_decode_block_intra(MpegEncContext *s, int16_t *block, int n)
155155 {
156156 return mpeg1_decode_block_intra(s, block, n);
157157 }
158158
159−static inline int mpeg1_decode_block_inter(MpegEncContext *s, DCTELEM *block, int n)
159+static inline int mpeg1_decode_block_inter(MpegEncContext *s, int16_t *block, int n)
160160 {
161161 int level, i, j, run;
162162 RLTable *rl = &ff_rl_mpeg1;
@@ -231,7 +231,7 @@ end: · 68 unmodified lines
231231 return 0;
232232 }
233233
234−static inline int mpeg1_fast_decode_block_inter(MpegEncContext *s, DCTELEM *block, int n)
234+static inline int mpeg1_fast_decode_block_inter(MpegEncContext *s, int16_t *block, int n)
235235 {
236236 int level, i, j, run;
237237 RLTable *rl = &ff_rl_mpeg1;
@@ -303,7 +303,7 @@ end: · 65 unmodified lines
303303 }
304304
305305
306−static inline int mpeg2_decode_block_non_intra(MpegEncContext *s, DCTELEM *block, int n)
306+static inline int mpeg2_decode_block_non_intra(MpegEncContext *s, int16_t *block, int n)
307307 {
308308 int level, i, j, run;
309309 RLTable *rl = &ff_rl_mpeg1;
@@ -383,7 +383,7 @@ end: · 73 unmodified lines
383383 }
384384
385385 static inline int mpeg2_fast_decode_block_non_intra(MpegEncContext *s,
386− DCTELEM *block, int n)
386+ int16_t *block, int n)
387387 {
388388 int level, i, j, run;
389389 RLTable *rl = &ff_rl_mpeg1;
@@ -444,7 +444,7 @@ end: · 54 unmodified lines
444444 }
445445
446446
447−static inline int mpeg2_decode_block_intra(MpegEncContext *s, DCTELEM *block, int n)
447+static inline int mpeg2_decode_block_intra(MpegEncContext *s, int16_t *block, int n)
448448 {
449449 int level, dc, diff, i, j, run;
450450 int component;
@@ -522,7 +522,7 @@ static inline int mpeg2_decode_block_intra(MpegEncContext *s, DCTELEM *block, in · 71 unmodified lines
522522 return 0;
523523 }
524524
525−static inline int mpeg2_fast_decode_block_intra(MpegEncContext *s, DCTELEM *block, int n)
525+static inline int mpeg2_fast_decode_block_intra(MpegEncContext *s, int16_t *block, int n)
526526 {
527527 int level, dc, diff, j, run;
528528 int component;
@@ -721,7 +721,7 @@ static inline int get_qscale(MpegEncContext *s) · 192 unmodified lines
721721
722722 static void exchange_uv(MpegEncContext *s)
723723 {
724− DCTELEM (*tmp)[64];
724+ int16_t (*tmp)[64];
725725
726726 tmp = s->pblocks[4];
727727 s->pblocks[4] = s->pblocks[5];
@@ -734,7 +734,7 @@ static void exchange_uv(MpegEncContext *s) · 6 unmodified lines
734734 #define MT_16X8 2
735735 #define MT_DMV 3
736736
737−static int mpeg_decode_mb(MpegEncContext *s, DCTELEM block[12][64])
737+static int mpeg_decode_mb(MpegEncContext *s, int16_t block[12][64])
738738 {
739739 int i, j, k, cbp, val, mb_type, motion_type;
740740 const int mb_block_count = 4 + (1 << s->chroma_format);
libavcodec/mpeg12.h+1−1
@@ -71,6 +71,6 @@ static inline int decode_dc(GetBitContext *gb, int component) · 70 unmodified lines
7171 return diff;
7272 }
7373
74−extern int ff_mpeg1_decode_block_intra(MpegEncContext *s, DCTELEM *block, int n);
74+extern int ff_mpeg1_decode_block_intra(MpegEncContext *s, int16_t *block, int n);
7575
7676 #endif /* AVCODEC_MPEG12_H */
libavcodec/mpeg12enc.c+4−4
@@ -51,7 +51,7 @@ static const uint8_t svcd_scan_offset_placeholder[14] = { · 50 unmodified lines
5151 };
5252
5353 static void mpeg1_encode_block(MpegEncContext *s,
54− DCTELEM *block,
54+ int16_t *block,
5555 int component);
5656 static void mpeg1_encode_motion(MpegEncContext *s, int val, int f_or_b_code); // RAL: f_code parameter added
5757
@@ -432,7 +432,7 @@ static inline void put_mb_modes(MpegEncContext *s, int n, int bits, · 374 unmodified lines
432432 }
433433
434434 static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s,
435− DCTELEM block[6][64],
435+ int16_t block[6][64],
436436 int motion_x, int motion_y,
437437 int mb_block_count)
438438 {
@@ -656,7 +656,7 @@ static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, · 217 unmodified lines
656656 }
657657 }
658658
659−void ff_mpeg1_encode_mb(MpegEncContext *s, DCTELEM block[6][64], int motion_x, int motion_y)
659+void ff_mpeg1_encode_mb(MpegEncContext *s, int16_t block[6][64], int motion_x, int motion_y)
660660 {
661661 if (s->chroma_format == CHROMA_420) mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 6);
662662 else mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 8);
@@ -839,7 +839,7 @@ static inline void encode_dc(MpegEncContext *s, int diff, int component) · 176 unmodified lines
839839 }
840840
841841 static void mpeg1_encode_block(MpegEncContext *s,
842− DCTELEM *block,
842+ int16_t *block,
843843 int n)
844844 {
845845 int alevel, level, last_non_zero, dc, diff, i, j, run, last_index, sign;
libavcodec/mpeg4video.h+2−2
@@ -83,9 +83,9 @@ extern const uint16_t ff_mpeg4_resync_prefix[8]; · 82 unmodified lines
8383 extern const uint8_t ff_mpeg4_dc_threshold[8];
8484
8585 void ff_mpeg4_encode_mb(MpegEncContext *s,
86− DCTELEM block[6][64],
86+ int16_t block[6][64],
8787 int motion_x, int motion_y);
88−void ff_mpeg4_pred_ac(MpegEncContext * s, DCTELEM *block, int n,
88+void ff_mpeg4_pred_ac(MpegEncContext * s, int16_t *block, int n,
8989 int dir);
9090 void ff_set_mpeg4_time(MpegEncContext * s);
9191 void ff_mpeg4_encode_picture_header(MpegEncContext *s, int picture_number);
libavcodec/mpeg4videodec.c+4−4
@@ -50,7 +50,7 @@ static const int mb_type_b_map[4]= { · 49 unmodified lines
5050 * @param n block index (0-3 are luma, 4-5 are chroma)
5151 * @param dir the ac prediction direction
5252 */
53−void ff_mpeg4_pred_ac(MpegEncContext * s, DCTELEM *block, int n,
53+void ff_mpeg4_pred_ac(MpegEncContext * s, int16_t *block, int n,
5454 int dir)
5555 {
5656 int i;
@@ -841,7 +841,7 @@ int ff_mpeg4_decode_partitions(MpegEncContext *s) · 784 unmodified lines
841841 * Decode a block.
842842 * @return <0 if an error occurred
843843 */
844−static inline int mpeg4_decode_block(MpegEncContext * s, DCTELEM * block,
844+static inline int mpeg4_decode_block(MpegEncContext * s, int16_t * block,
845845 int n, int coded, int intra, int rvlc)
846846 {
847847 int level, i, last, run;
@@ -1065,7 +1065,7 @@ static inline int mpeg4_decode_block(MpegEncContext * s, DCTELEM * block, · 217 unmodified lines
10651065 * decode partition C of one MB.
10661066 * @return <0 if an error occurred
10671067 */
1068−static int mpeg4_decode_partitioned_mb(MpegEncContext *s, DCTELEM block[6][64])
1068+static int mpeg4_decode_partitioned_mb(MpegEncContext *s, int16_t block[6][64])
10691069 {
10701070 int cbp, mb_type;
10711071 const int xy= s->mb_x + s->mb_y*s->mb_stride;
@@ -1148,7 +1148,7 @@ static int mpeg4_decode_partitioned_mb(MpegEncContext *s, DCTELEM block[6][64]) · 76 unmodified lines
11481148 }
11491149
11501150 static int mpeg4_decode_mb(MpegEncContext *s,
1151− DCTELEM block[6][64])
1151+ int16_t block[6][64])
11521152 {
11531153 int cbpc, cbpy, i, cbp, pred_x, pred_y, mx, my, dquant;
11541154 int16_t *mot_val;
libavcodec/mpeg4videoenc.c+8−8
@@ -59,7 +59,7 @@ max run: 29/41 · 58 unmodified lines
5959 * Return the number of bits that encoding the 8x8 block in block would need.
6060 * @param[in] block_last_index last index in scantable order that refers to a non zero element in block.
6161 */
62−static inline int get_block_rate(MpegEncContext * s, DCTELEM block[64], int block_last_index, uint8_t scantable[64]){
62+static inline int get_block_rate(MpegEncContext * s, int16_t block[64], int block_last_index, uint8_t scantable[64]){
6363 int last=0;
6464 int j;
6565 int rate=0;
@@ -91,7 +91,7 @@ static inline int get_block_rate(MpegEncContext * s, DCTELEM block[64], int bloc · 25 unmodified lines
9191 * @param[out] st scantable for each 8x8 block
9292 * @param[in] zigzag_last_index index referring to the last non zero coefficient in zigzag order
9393 */
94−static inline void restore_ac_coeffs(MpegEncContext * s, DCTELEM block[6][64], const int dir[6], uint8_t *st[6], const int zigzag_last_index[6])
94+static inline void restore_ac_coeffs(MpegEncContext * s, int16_t block[6][64], const int dir[6], uint8_t *st[6], const int zigzag_last_index[6])
9595 {
9696 int i, n;
9797 memcpy(s->block_last_index, zigzag_last_index, sizeof(int)*6);
@@ -122,7 +122,7 @@ static inline void restore_ac_coeffs(MpegEncContext * s, DCTELEM block[6][64], c · 24 unmodified lines
122122 * @param[out] st scantable for each 8x8 block
123123 * @param[out] zigzag_last_index index referring to the last non zero coefficient in zigzag order
124124 */
125−static inline int decide_ac_pred(MpegEncContext * s, DCTELEM block[6][64], const int dir[6], uint8_t *st[6], int zigzag_last_index[6])
125+static inline int decide_ac_pred(MpegEncContext * s, int16_t block[6][64], const int dir[6], uint8_t *st[6], int zigzag_last_index[6])
126126 {
127127 int score= 0;
128128 int i, n;
@@ -294,7 +294,7 @@ static inline int mpeg4_get_dc_length(int level, int n){ · 165 unmodified lines
294294 * Encode an 8x8 block.
295295 * @param n block index (0-3 are luma, 4-5 are chroma)
296296 */
297−static inline void mpeg4_encode_block(MpegEncContext * s, DCTELEM * block, int n, int intra_dc,
297+static inline void mpeg4_encode_block(MpegEncContext * s, int16_t * block, int n, int intra_dc,
298298 uint8_t *scan_table, PutBitContext *dc_pb, PutBitContext *ac_pb)
299299 {
300300 int i, last_non_zero;
@@ -345,7 +345,7 @@ static inline void mpeg4_encode_block(MpegEncContext * s, DCTELEM * block, int n · 44 unmodified lines
345345 }
346346 }
347347
348−static int mpeg4_get_block_length(MpegEncContext * s, DCTELEM * block, int n, int intra_dc,
348+static int mpeg4_get_block_length(MpegEncContext * s, int16_t * block, int n, int intra_dc,
349349 uint8_t *scan_table)
350350 {
351351 int i, last_non_zero;
@@ -396,7 +396,7 @@ static int mpeg4_get_block_length(MpegEncContext * s, DCTELEM * block, int n, in · 44 unmodified lines
396396 return len;
397397 }
398398
399−static inline void mpeg4_encode_blocks(MpegEncContext * s, DCTELEM block[6][64], int intra_dc[6],
399+static inline void mpeg4_encode_blocks(MpegEncContext * s, int16_t block[6][64], int intra_dc[6],
400400 uint8_t **scan_table, PutBitContext *dc_pb, PutBitContext *ac_pb){
401401 int i;
402402
@@ -425,7 +425,7 @@ static inline void mpeg4_encode_blocks(MpegEncContext * s, DCTELEM block[6][64], · 22 unmodified lines
425425 }
426426 }
427427
428−static inline int get_b_cbp(MpegEncContext * s, DCTELEM block[6][64],
428+static inline int get_b_cbp(MpegEncContext * s, int16_t block[6][64],
429429 int motion_x, int motion_y, int mb_type)
430430 {
431431 int cbp = 0, i;
@@ -469,7 +469,7 @@ static inline int get_b_cbp(MpegEncContext * s, DCTELEM block[6][64], · 37 unmodified lines
469469 static const int dquant_code[5]= {1,0,9,2,3};
470470
471471 void ff_mpeg4_encode_mb(MpegEncContext * s,
472− DCTELEM block[6][64],
472+ int16_t block[6][64],
473473 int motion_x, int motion_y)
474474 {
475475 int cbpc, cbpy, pred_x, pred_y;
libavcodec/mpegvideo.c+22−22
@@ -43,19 +43,19 @@ · 42 unmodified lines
4343 //#include <assert.h>
4444
4545 static void dct_unquantize_mpeg1_intra_c(MpegEncContext *s,
46− DCTELEM *block, int n, int qscale);
46+ int16_t *block, int n, int qscale);
4747 static void dct_unquantize_mpeg1_inter_c(MpegEncContext *s,
48− DCTELEM *block, int n, int qscale);
48+ int16_t *block, int n, int qscale);
4949 static void dct_unquantize_mpeg2_intra_c(MpegEncContext *s,
50− DCTELEM *block, int n, int qscale);
50+ int16_t *block, int n, int qscale);
5151 static void dct_unquantize_mpeg2_intra_bitexact(MpegEncContext *s,
52− DCTELEM *block, int n, int qscale);
52+ int16_t *block, int n, int qscale);
5353 static void dct_unquantize_mpeg2_inter_c(MpegEncContext *s,
54− DCTELEM *block, int n, int qscale);
54+ int16_t *block, int n, int qscale);
5555 static void dct_unquantize_h263_intra_c(MpegEncContext *s,
56− DCTELEM *block, int n, int qscale);
56+ int16_t *block, int n, int qscale);
5757 static void dct_unquantize_h263_inter_c(MpegEncContext *s,
58− DCTELEM *block, int n, int qscale);
58+ int16_t *block, int n, int qscale);
5959
6060
6161 /* enable all paranoid tests for rounding, overflows, etc... */
@@ -394,7 +394,7 @@ int ff_alloc_picture(MpegEncContext *s, Picture *pic, int shared) · 332 unmodified lines
394394 }
395395 if (s->avctx->debug&FF_DEBUG_DCT_COEFF) {
396396 FF_ALLOCZ_OR_GOTO(s->avctx, pic->f.dct_coeff,
397− 64 * mb_array_size * sizeof(DCTELEM) * 6, fail)
397+ 64 * mb_array_size * sizeof(int16_t) * 6, fail)
398398 }
399399 pic->f.qstride = s->mb_stride;
400400 FF_ALLOCZ_OR_GOTO(s->avctx, pic->f.pan_scan,
@@ -471,7 +471,7 @@ static int init_duplicate_context(MpegEncContext *s, MpegEncContext *base) · 70 unmodified lines
471471 2 * 64 * sizeof(int), fail)
472472 }
473473 }
474− FF_ALLOCZ_OR_GOTO(s->avctx, s->blocks, 64 * 12 * 2 * sizeof(DCTELEM), fail)
474+ FF_ALLOCZ_OR_GOTO(s->avctx, s->blocks, 64 * 12 * 2 * sizeof(int16_t), fail)
475475 s->block = s->blocks[0];
476476
477477 for (i = 0; i < 12; i++) {
@@ -2067,7 +2067,7 @@ unhandled: · 1589 unmodified lines
20672067
20682068 /* put block[] to dest[] */
20692069 static inline void put_dct(MpegEncContext *s,
2070− DCTELEM *block, int i, uint8_t *dest, int line_size, int qscale)
2070+ int16_t *block, int i, uint8_t *dest, int line_size, int qscale)
20712071 {
20722072 s->dct_unquantize_intra(s, block, i, qscale);
20732073 s->dsp.idct_put (dest, line_size, block);
@@ -2075,7 +2075,7 @@ static inline void put_dct(MpegEncContext *s, · 1 unmodified line
20752075
20762076 /* add block[] to dest[] */
20772077 static inline void add_dct(MpegEncContext *s,
2078− DCTELEM *block, int i, uint8_t *dest, int line_size)
2078+ int16_t *block, int i, uint8_t *dest, int line_size)
20792079 {
20802080 if (s->block_last_index[i] >= 0) {
20812081 s->dsp.idct_add (dest, line_size, block);
@@ -2083,7 +2083,7 @@ static inline void add_dct(MpegEncContext *s, · 1 unmodified line
20832083 }
20842084
20852085 static inline void add_dequant_dct(MpegEncContext *s,
2086− DCTELEM *block, int i, uint8_t *dest, int line_size, int qscale)
2086+ int16_t *block, int i, uint8_t *dest, int line_size, int qscale)
20872087 {
20882088 if (s->block_last_index[i] >= 0) {
20892089 s->dct_unquantize_inter(s, block, i, qscale);
@@ -2136,7 +2136,7 @@ void ff_clean_intra_table_entries(MpegEncContext *s) · 46 unmodified lines
21362136 s->interlaced_dct : true if interlaced dct used (mpeg2)
21372137 */
21382138 static av_always_inline
2139−void MPV_decode_mb_internal(MpegEncContext *s, DCTELEM block[12][64],
2139+void MPV_decode_mb_internal(MpegEncContext *s, int16_t block[12][64],
21402140 int is_mpeg12)
21412141 {
21422142 const int mb_xy = s->mb_y * s->mb_stride + s->mb_x;
@@ -2148,7 +2148,7 @@ void MPV_decode_mb_internal(MpegEncContext *s, DCTELEM block[12][64], · 5 unmodified lines
21482148 if(s->avctx->debug&FF_DEBUG_DCT_COEFF) {
21492149 /* save DCT coefficients */
21502150 int i,j;
2151− DCTELEM *dct = &s->current_picture.f.dct_coeff[mb_xy * 64 * 6];
2151+ int16_t *dct = &s->current_picture.f.dct_coeff[mb_xy * 64 * 6];
21522152 av_log(s->avctx, AV_LOG_DEBUG, "DCT coeffs of MB at %dx%d:\n", s->mb_x, s->mb_y);
21532153 for(i=0; i<6; i++){
21542154 for(j=0; j<64; j++){
@@ -2367,7 +2367,7 @@ skip_idct: · 212 unmodified lines
23672367 }
23682368 }
23692369
2370−void ff_MPV_decode_mb(MpegEncContext *s, DCTELEM block[12][64]){
2370+void ff_MPV_decode_mb(MpegEncContext *s, int16_t block[12][64]){
23712371 #if !CONFIG_SMALL
23722372 if(s->out_format == FMT_MPEG1) {
23732373 MPV_decode_mb_internal(s, block, 1);
@@ -2506,7 +2506,7 @@ void ff_mpeg_flush(AVCodecContext *avctx){ · 132 unmodified lines
25062506 }
25072507
25082508 static void dct_unquantize_mpeg1_intra_c(MpegEncContext *s,
2509− DCTELEM *block, int n, int qscale)
2509+ int16_t *block, int n, int qscale)
25102510 {
25112511 int i, level, nCoeffs;
25122512 const uint16_t *quant_matrix;
@@ -2538,7 +2538,7 @@ static void dct_unquantize_mpeg1_intra_c(MpegEncContext *s, · 25 unmodified lines
25382538 }
25392539
25402540 static void dct_unquantize_mpeg1_inter_c(MpegEncContext *s,
2541− DCTELEM *block, int n, int qscale)
2541+ int16_t *block, int n, int qscale)
25422542 {
25432543 int i, level, nCoeffs;
25442544 const uint16_t *quant_matrix;
@@ -2567,7 +2567,7 @@ static void dct_unquantize_mpeg1_inter_c(MpegEncContext *s, · 22 unmodified lines
25672567 }
25682568
25692569 static void dct_unquantize_mpeg2_intra_c(MpegEncContext *s,
2570− DCTELEM *block, int n, int qscale)
2570+ int16_t *block, int n, int qscale)
25712571 {
25722572 int i, level, nCoeffs;
25732573 const uint16_t *quant_matrix;
@@ -2597,7 +2597,7 @@ static void dct_unquantize_mpeg2_intra_c(MpegEncContext *s, · 23 unmodified lines
25972597 }
25982598
25992599 static void dct_unquantize_mpeg2_intra_bitexact(MpegEncContext *s,
2600− DCTELEM *block, int n, int qscale)
2600+ int16_t *block, int n, int qscale)
26012601 {
26022602 int i, level, nCoeffs;
26032603 const uint16_t *quant_matrix;
@@ -2630,7 +2630,7 @@ static void dct_unquantize_mpeg2_intra_bitexact(MpegEncContext *s, · 26 unmodified lines
26302630 }
26312631
26322632 static void dct_unquantize_mpeg2_inter_c(MpegEncContext *s,
2633− DCTELEM *block, int n, int qscale)
2633+ int16_t *block, int n, int qscale)
26342634 {
26352635 int i, level, nCoeffs;
26362636 const uint16_t *quant_matrix;
@@ -2661,7 +2661,7 @@ static void dct_unquantize_mpeg2_inter_c(MpegEncContext *s, · 24 unmodified lines
26612661 }
26622662
26632663 static void dct_unquantize_h263_intra_c(MpegEncContext *s,
2664− DCTELEM *block, int n, int qscale)
2664+ int16_t *block, int n, int qscale)
26652665 {
26662666 int i, level, qmul, qadd;
26672667 int nCoeffs;
@@ -2698,7 +2698,7 @@ static void dct_unquantize_h263_intra_c(MpegEncContext *s, · 30 unmodified lines
26982698 }
26992699
27002700 static void dct_unquantize_h263_inter_c(MpegEncContext *s,
2701− DCTELEM *block, int n, int qscale)
2701+ int16_t *block, int n, int qscale)
27022702 {
27032703 int i, level, qmul, qadd;
27042704 int nCoeffs;
libavcodec/mpegvideo.h+25−25
@@ -669,39 +669,39 @@ typedef struct MpegEncContext { · 668 unmodified lines
669669
670670 uint8_t *ptr_lastgob;
671671 int swap_uv; //vcr2 codec is an MPEG-2 variant with U and V swapped
672− DCTELEM (*pblocks[12])[64];
672+ int16_t (*pblocks[12])[64];
673673
674− DCTELEM (*block)[64]; ///< points to one of the following blocks
675− DCTELEM (*blocks)[8][64]; // for HQ mode we need to keep the best block
676− int (*decode_mb)(struct MpegEncContext *s, DCTELEM block[6][64]); // used by some codecs to avoid a switch()
674+ int16_t (*block)[64]; ///< points to one of the following blocks
675+ int16_t (*blocks)[8][64]; // for HQ mode we need to keep the best block
676+ int (*decode_mb)(struct MpegEncContext *s, int16_t block[6][64]); // used by some codecs to avoid a switch()
677677 #define SLICE_OK 0
678678 #define SLICE_ERROR -1
679679 #define SLICE_END -2 ///<end marker found
680680 #define SLICE_NOEND -3 ///<no end marker or error found but mb count exceeded
681681
682682 void (*dct_unquantize_mpeg1_intra)(struct MpegEncContext *s,
683− DCTELEM *block/*align 16*/, int n, int qscale);
683+ int16_t *block/*align 16*/, int n, int qscale);
684684 void (*dct_unquantize_mpeg1_inter)(struct MpegEncContext *s,
685− DCTELEM *block/*align 16*/, int n, int qscale);
685+ int16_t *block/*align 16*/, int n, int qscale);
686686 void (*dct_unquantize_mpeg2_intra)(struct MpegEncContext *s,
687− DCTELEM *block/*align 16*/, int n, int qscale);
687+ int16_t *block/*align 16*/, int n, int qscale);
688688 void (*dct_unquantize_mpeg2_inter)(struct MpegEncContext *s,
689− DCTELEM *block/*align 16*/, int n, int qscale);
689+ int16_t *block/*align 16*/, int n, int qscale);
690690 void (*dct_unquantize_h263_intra)(struct MpegEncContext *s,
691− DCTELEM *block/*align 16*/, int n, int qscale);
691+ int16_t *block/*align 16*/, int n, int qscale);
692692 void (*dct_unquantize_h263_inter)(struct MpegEncContext *s,
693− DCTELEM *block/*align 16*/, int n, int qscale);
693+ int16_t *block/*align 16*/, int n, int qscale);
694694 void (*dct_unquantize_h261_intra)(struct MpegEncContext *s,
695− DCTELEM *block/*align 16*/, int n, int qscale);
695+ int16_t *block/*align 16*/, int n, int qscale);
696696 void (*dct_unquantize_h261_inter)(struct MpegEncContext *s,
697− DCTELEM *block/*align 16*/, int n, int qscale);
697+ int16_t *block/*align 16*/, int n, int qscale);
698698 void (*dct_unquantize_intra)(struct MpegEncContext *s, // unquantizer to use (mpeg4 can use both)
699− DCTELEM *block/*align 16*/, int n, int qscale);
699+ int16_t *block/*align 16*/, int n, int qscale);
700700 void (*dct_unquantize_inter)(struct MpegEncContext *s, // unquantizer to use (mpeg4 can use both)
701− DCTELEM *block/*align 16*/, int n, int qscale);
702− int (*dct_quantize)(struct MpegEncContext *s, DCTELEM *block/*align 16*/, int n, int qscale, int *overflow);
703− int (*fast_dct_quantize)(struct MpegEncContext *s, DCTELEM *block/*align 16*/, int n, int qscale, int *overflow);
704− void (*denoise_dct)(struct MpegEncContext *s, DCTELEM *block);
701+ int16_t *block/*align 16*/, int n, int qscale);
702+ int (*dct_quantize)(struct MpegEncContext *s, int16_t *block/*align 16*/, int n, int qscale, int *overflow);
703+ int (*fast_dct_quantize)(struct MpegEncContext *s, int16_t *block/*align 16*/, int n, int qscale, int *overflow);
704+ void (*denoise_dct)(struct MpegEncContext *s, int16_t *block);
705705
706706 int mpv_flags; ///< flags set by private options
707707 int quantizer_noise_shaping;
@@ -764,7 +764,7 @@ int ff_MPV_common_init(MpegEncContext *s); · 56 unmodified lines
764764 int ff_mpv_frame_size_alloc(MpegEncContext *s, int linesize);
765765 int ff_MPV_common_frame_size_change(MpegEncContext *s);
766766 void ff_MPV_common_end(MpegEncContext *s);
767−void ff_MPV_decode_mb(MpegEncContext *s, DCTELEM block[12][64]);
767+void ff_MPV_decode_mb(MpegEncContext *s, int16_t block[12][64]);
768768 int ff_MPV_frame_start(MpegEncContext *s, AVCodecContext *avctx);
769769 void ff_MPV_frame_end(MpegEncContext *s);
770770 int ff_MPV_encode_init(AVCodecContext *avctx);
@@ -784,7 +784,7 @@ void ff_print_debug_info(MpegEncContext *s, AVFrame *pict); · 13 unmodified lines
784784 void ff_write_quant_matrix(PutBitContext *pb, uint16_t *matrix);
785785 void ff_release_unused_pictures(MpegEncContext *s, int remove_current);
786786 int ff_find_unused_picture(MpegEncContext *s, int shared);
787−void ff_denoise_dct(MpegEncContext *s, DCTELEM *block);
787+void ff_denoise_dct(MpegEncContext *s, int16_t *block);
788788 int ff_update_duplicate_context(MpegEncContext *dst, MpegEncContext *src);
789789 int ff_MPV_lowest_referenced_row(MpegEncContext *s, int dir);
790790 void ff_MPV_report_decode_progress(MpegEncContext *s);
@@ -799,7 +799,7 @@ void ff_er_add_slice(MpegEncContext *s, int startx, int starty, int endx, int en · 8 unmodified lines
799799 int ff_dct_common_init(MpegEncContext *s);
800800 void ff_convert_matrix(DSPContext *dsp, int (*qmat)[64], uint16_t (*qmat16)[2][64],
801801 const uint16_t *quant_matrix, int bias, int qmin, int qmax, int intra);
802−int ff_dct_quantize_c(MpegEncContext *s, DCTELEM *block, int n, int qscale, int *overflow);
802+int ff_dct_quantize_c(MpegEncContext *s, int16_t *block, int n, int qscale, int *overflow);
803803
804804 void ff_init_block_index(MpegEncContext *s);
805805 void ff_copy_picture(Picture *dst, Picture *src);
@@ -874,7 +874,7 @@ extern const uint8_t * const ff_mpeg2_dc_scale_table[4]; · 68 unmodified lines
874874
875875 void ff_mpeg1_encode_picture_header(MpegEncContext *s, int picture_number);
876876 void ff_mpeg1_encode_mb(MpegEncContext *s,
877− DCTELEM block[6][64],
877+ int16_t block[6][64],
878878 int motion_x, int motion_y);
879879 void ff_mpeg1_encode_init(MpegEncContext *s);
880880 void ff_mpeg1_encode_slice_header(MpegEncContext *s);
@@ -889,7 +889,7 @@ extern const uint8_t ff_h263_loop_filter_strength[32]; · 8 unmodified lines
889889 void ff_h261_loop_filter(MpegEncContext *s);
890890 void ff_h261_reorder_mb_index(MpegEncContext* s);
891891 void ff_h261_encode_mb(MpegEncContext *s,
892− DCTELEM block[6][64],
892+ int16_t block[6][64],
893893 int motion_x, int motion_y);
894894 void ff_h261_encode_picture_header(MpegEncContext * s, int picture_number);
895895 void ff_h261_encode_init(MpegEncContext *s);
@@ -906,7 +906,7 @@ void ff_rv20_encode_picture_header(MpegEncContext *s, int picture_number); · 10 unmodified lines
906906 void ff_msmpeg4_encode_picture_header(MpegEncContext * s, int picture_number);
907907 void ff_msmpeg4_encode_ext_header(MpegEncContext * s);
908908 void ff_msmpeg4_encode_mb(MpegEncContext * s,
909− DCTELEM block[6][64],
909+ int16_t block[6][64],
910910 int motion_x, int motion_y);
911911 int ff_msmpeg4_decode_picture_header(MpegEncContext * s);
912912 int ff_msmpeg4_decode_ext_header(MpegEncContext * s, int buf_size);
@@ -914,14 +914,14 @@ int ff_msmpeg4_decode_init(AVCodecContext *avctx); · 1 unmodified line
914914 void ff_msmpeg4_encode_init(MpegEncContext *s);
915915 int ff_wmv2_decode_picture_header(MpegEncContext * s);
916916 int ff_wmv2_decode_secondary_picture_header(MpegEncContext * s);
917−void ff_wmv2_add_mb(MpegEncContext *s, DCTELEM block[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr);
917+void ff_wmv2_add_mb(MpegEncContext *s, int16_t block[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr);
918918 void ff_mspel_motion(MpegEncContext *s,
919919 uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
920920 uint8_t **ref_picture, op_pixels_func (*pix_op)[4],
921921 int motion_x, int motion_y, int h);
922922 int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number);
923923 void ff_wmv2_encode_mb(MpegEncContext * s,
924− DCTELEM block[6][64],
924+ int16_t block[6][64],
925925 int motion_x, int motion_y);
926926
927927 #endif /* AVCODEC_MPEGVIDEO_H */
libavcodec/mpegvideo_enc.c+17−17
@@ -51,10 +51,10 @@ · 50 unmodified lines
5151 //#include <assert.h>
5252
5353 static int encode_picture(MpegEncContext *s, int picture_number);
54−static int dct_quantize_refine(MpegEncContext *s, DCTELEM *block, int16_t *weight, DCTELEM *orig, int n, int qscale);
54+static int dct_quantize_refine(MpegEncContext *s, int16_t *block, int16_t *weight, int16_t *orig, int n, int qscale);
5555 static int sse_mb(MpegEncContext *s);
56−static void denoise_dct_c(MpegEncContext *s, DCTELEM *block);
57−static int dct_quantize_trellis_c(MpegEncContext *s, DCTELEM *block, int n, int qscale, int *overflow);
56+static void denoise_dct_c(MpegEncContext *s, int16_t *block);
57+static int dct_quantize_trellis_c(MpegEncContext *s, int16_t *block, int n, int qscale, int *overflow);
5858
5959 /* enable all paranoid tests for rounding, overflows, etc... */
6060 //#define PARANOID
@@ -1625,7 +1625,7 @@ static inline void dct_single_coeff_elimination(MpegEncContext *s, · 1564 unmodified lines
16251625 int score = 0;
16261626 int run = 0;
16271627 int i;
1628− DCTELEM *block = s->block[n];
1628+ int16_t *block = s->block[n];
16291629 const int last_index = s->block_last_index[n];
16301630 int skip_dc;
16311631
@@ -1665,7 +1665,7 @@ static inline void dct_single_coeff_elimination(MpegEncContext *s, · 33 unmodified lines
16651665 s->block_last_index[n] = -1;
16661666 }
16671667
1668−static inline void clip_coeffs(MpegEncContext *s, DCTELEM *block,
1668+static inline void clip_coeffs(MpegEncContext *s, int16_t *block,
16691669 int last_index)
16701670 {
16711671 int i;
@@ -1729,7 +1729,7 @@ static av_always_inline void encode_mb_internal(MpegEncContext *s, · 57 unmodified lines
17291729 int mb_block_count)
17301730 {
17311731 int16_t weight[8][64];
1732− DCTELEM orig[8][64];
1732+ int16_t orig[8][64];
17331733 const int mb_x = s->mb_x;
17341734 const int mb_y = s->mb_y;
17351735 int i;
@@ -1979,7 +1979,7 @@ static av_always_inline void encode_mb_internal(MpegEncContext *s, · 243 unmodified lines
19791979 get_visual_weight(weight[7], ptr_cr + (dct_offset >> 1),
19801980 wrap_c);
19811981 }
1982− memcpy(orig[0], s->block[0], sizeof(DCTELEM) * 64 * mb_block_count);
1982+ memcpy(orig[0], s->block[0], sizeof(int16_t) * 64 * mb_block_count);
19831983 }
19841984
19851985 /* DCT & quantize */
@@ -2716,7 +2716,7 @@ static int encode_thread(AVCodecContext *c, void *arg){ · 730 unmodified lines
27162716 if(best_s.mv_type==MV_TYPE_16X16){ //FIXME move 4mv after QPRD
27172717 const int last_qp= backup_s.qscale;
27182718 int qpi, qp, dc[6];
2719− DCTELEM ac[6][16];
2719+ int16_t ac[6][16];
27202720 const int mvdir= (best_s.mv_dir&MV_DIR_BACKWARD) ? 1 : 0;
27212721 static const int dquant_tab[4]={-1,1,-2,2};
27222722
@@ -2741,7 +2741,7 @@ static int encode_thread(AVCodecContext *c, void *arg){ · 18 unmodified lines
27412741 if(s->mb_intra && s->dc_val[0]){
27422742 for(i=0; i<6; i++){
27432743 dc[i]= s->dc_val[0][ s->block_index[i] ];
2744− memcpy(ac[i], s->ac_val[0][s->block_index[i]], sizeof(DCTELEM)*16);
2744+ memcpy(ac[i], s->ac_val[0][s->block_index[i]], sizeof(int16_t)*16);
27452745 }
27462746 }
27472747
@@ -2751,7 +2751,7 @@ static int encode_thread(AVCodecContext *c, void *arg){ · 3 unmodified lines
27512751 if(s->mb_intra && s->dc_val[0]){
27522752 for(i=0; i<6; i++){
27532753 s->dc_val[0][ s->block_index[i] ]= dc[i];
2754− memcpy(s->ac_val[0][s->block_index[i]], ac[i], sizeof(DCTELEM)*16);
2754+ memcpy(s->ac_val[0][s->block_index[i]], ac[i], sizeof(int16_t)*16);
27552755 }
27562756 }
27572757 }
@@ -3327,7 +3327,7 @@ static int encode_picture(MpegEncContext *s, int picture_number) · 569 unmodified lines
33273327 return 0;
33283328 }
33293329
3330−static void denoise_dct_c(MpegEncContext *s, DCTELEM *block){
3330+static void denoise_dct_c(MpegEncContext *s, int16_t *block){
33313331 const int intra= s->mb_intra;
33323332 int i;
33333333
@@ -3352,7 +3352,7 @@ static void denoise_dct_c(MpegEncContext *s, DCTELEM *block){ · 18 unmodified lines
33523352 }
33533353
33543354 static int dct_quantize_trellis_c(MpegEncContext *s,
3355− DCTELEM *block, int n,
3355+ int16_t *block, int n,
33563356 int qscale, int *overflow){
33573357 const int *qmat;
33583358 const uint8_t *scantable= s->intra_scantable.scantable;
@@ -3459,7 +3459,7 @@ static int dct_quantize_trellis_c(MpegEncContext *s, · 100 unmodified lines
34593459 *overflow= s->max_qcoeff < max; //overflow might have happened
34603460
34613461 if(last_non_zero < start_i){
3462− memset(block + start_i, 0, (64-start_i)*sizeof(DCTELEM));
3462+ memset(block + start_i, 0, (64-start_i)*sizeof(int16_t));
34633463 return last_non_zero;
34643464 }
34653465
@@ -3591,7 +3591,7 @@ static int dct_quantize_trellis_c(MpegEncContext *s, · 125 unmodified lines
35913591
35923592 dc= FFABS(block[0]);
35933593 last_non_zero= last_i - 1;
3594− memset(block + start_i, 0, (64-start_i)*sizeof(DCTELEM));
3594+ memset(block + start_i, 0, (64-start_i)*sizeof(int16_t));
35953595
35963596 if(last_non_zero < start_i)
35973597 return last_non_zero;
@@ -3666,10 +3666,10 @@ static void build_basis(uint8_t *perm){ · 68 unmodified lines
36663666 }
36673667
36683668 static int dct_quantize_refine(MpegEncContext *s, //FIXME breaks denoise?
3669− DCTELEM *block, int16_t *weight, DCTELEM *orig,
3669+ int16_t *block, int16_t *weight, int16_t *orig,
36703670 int n, int qscale){
36713671 int16_t rem[64];
3672− LOCAL_ALIGNED_16(DCTELEM, d1, [64]);
3672+ LOCAL_ALIGNED_16(int16_t, d1, [64]);
36733673 const uint8_t *scantable= s->intra_scantable.scantable;
36743674 const uint8_t *perm_scantable= s->intra_scantable.permutated;
36753675 // unsigned int threshold1, threshold2;
@@ -4039,7 +4039,7 @@ STOP_TIMER("iterative search") · 363 unmodified lines
40394039 }
40404040
40414041 int ff_dct_quantize_c(MpegEncContext *s,
4042− DCTELEM *block, int n,
4042+ int16_t *block, int n,
40434043 int qscale, int *overflow)
40444044 {
40454045 int i, j, level, last_non_zero, q, start_i;
libavcodec/mpegvideo_xvmc.c+1−1
@@ -44,7 +44,7 @@ void ff_xvmc_init_block(MpegEncContext *s) · 43 unmodified lines
4444 struct xvmc_pix_fmt *render = (struct xvmc_pix_fmt*)s->current_picture.f.data[2];
4545 assert(render && render->xvmc_id == AV_XVMC_ID);
4646
47− s->block = (DCTELEM (*)[64])(render->data_blocks + render->next_free_data_block_num * 64);
47+ s->block = (int16_t (*)[64])(render->data_blocks + render->next_free_data_block_num * 64);
4848 }
4949
5050 /**
libavcodec/msmpeg4.c+3−3
@@ -406,7 +406,7 @@ static int msmpeg4v2_decode_motion(MpegEncContext * s, int pred, int f_code) · 405 unmodified lines
406406 return val;
407407 }
408408
409−static int msmpeg4v12_decode_mb(MpegEncContext *s, DCTELEM block[6][64])
409+static int msmpeg4v12_decode_mb(MpegEncContext *s, int16_t block[6][64])
410410 {
411411 int cbp, code, i;
412412
@@ -492,7 +492,7 @@ static int msmpeg4v12_decode_mb(MpegEncContext *s, DCTELEM block[6][64]) · 79 unmodified lines
492492 return 0;
493493 }
494494
495−static int msmpeg4v34_decode_mb(MpegEncContext *s, DCTELEM block[6][64])
495+static int msmpeg4v34_decode_mb(MpegEncContext *s, int16_t block[6][64])
496496 {
497497 int cbp, code, i;
498498 uint8_t *coded_val;
@@ -934,7 +934,7 @@ static int msmpeg4_decode_dc(MpegEncContext * s, int n, int *dir_ptr) · 435 unmodified lines
934934 }
935935
936936 //#define ERROR_DETAILS
937−int ff_msmpeg4_decode_block(MpegEncContext * s, DCTELEM * block,
937+int ff_msmpeg4_decode_block(MpegEncContext * s, int16_t * block,
938938 int n, int coded, const uint8_t *scan_table)
939939 {
940940 int level, i, last, run, run_diff;
libavcodec/msmpeg4.h+3−4
@@ -26,7 +26,6 @@ · 25 unmodified lines
2626
2727 #include "config.h"
2828 #include "avcodec.h"
29−#include "dsputil.h"
3029 #include "mpegvideo.h"
3130 #include "msmpeg4data.h"
3231 #include "put_bits.h"
@@ -45,17 +44,17 @@ extern VLC ff_inter_intra_vlc; · 12 unmodified lines
4544
4645 void ff_msmpeg4_code012(PutBitContext *pb, int n);
4746 void ff_msmpeg4_common_init(MpegEncContext *s);
48−void ff_msmpeg4_encode_block(MpegEncContext * s, DCTELEM * block, int n);
47+void ff_msmpeg4_encode_block(MpegEncContext * s, int16_t * block, int n);
4948 void ff_msmpeg4_handle_slices(MpegEncContext *s);
5049 void ff_msmpeg4_encode_motion(MpegEncContext * s, int mx, int my);
5150 int ff_msmpeg4_coded_block_pred(MpegEncContext * s, int n,
5251 uint8_t **coded_block_ptr);
5352 int ff_msmpeg4_decode_motion(MpegEncContext * s, int *mx_ptr, int *my_ptr);
54−int ff_msmpeg4_decode_block(MpegEncContext * s, DCTELEM * block,
53+int ff_msmpeg4_decode_block(MpegEncContext * s, int16_t * block,
5554 int n, int coded, const uint8_t *scan_table);
5655 int ff_msmpeg4_pred_dc(MpegEncContext *s, int n,
5756 int16_t **dc_val_ptr, int *dir_ptr);
58−int ff_wmv2_decode_mb(MpegEncContext *s, DCTELEM block[6][64]);
57+int ff_wmv2_decode_mb(MpegEncContext *s, int16_t block[6][64]);
5958
6059 #define CONFIG_MSMPEG4_DECODER (CONFIG_MSMPEG4V1_DECODER || \
6160 CONFIG_MSMPEG4V2_DECODER || \
libavcodec/msmpeg4enc.c+2−2
@@ -368,7 +368,7 @@ static void msmpeg4v2_encode_motion(MpegEncContext * s, int val) · 367 unmodified lines
368368 }
369369
370370 void ff_msmpeg4_encode_mb(MpegEncContext * s,
371− DCTELEM block[6][64],
371+ int16_t block[6][64],
372372 int motion_x, int motion_y)
373373 {
374374 int cbp, coded_cbp, i;
@@ -569,7 +569,7 @@ static void msmpeg4_encode_dc(MpegEncContext * s, int level, int n, int *dir_ptr · 194 unmodified lines
569569 /* Encoding of a block. Very similar to MPEG4 except for a different
570570 escape coding (same as H263) and more vlc tables.
571571 */
572−void ff_msmpeg4_encode_block(MpegEncContext * s, DCTELEM * block, int n)
572+void ff_msmpeg4_encode_block(MpegEncContext * s, int16_t * block, int n)
573573 {
574574 int level, run, last, i, j, last_index;
575575 int last_non_zero, sign, slevel;
libavcodec/ppc/dsputil_altivec.c+3−3
@@ -476,7 +476,7 @@ static int pix_sum_altivec(uint8_t * pix, int line_size) · 475 unmodified lines
476476 return s;
477477 }
478478
479−static void get_pixels_altivec(DCTELEM *restrict block, const uint8_t *pixels, int line_size)
479+static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels, int line_size)
480480 {
481481 int i;
482482 vector unsigned char perm = vec_lvsl(0, pixels);
@@ -502,7 +502,7 @@ static void get_pixels_altivec(DCTELEM *restrict block, const uint8_t *pixels, i · 19 unmodified lines
502502 }
503503 }
504504
505−static void diff_pixels_altivec(DCTELEM *restrict block, const uint8_t *s1,
505+static void diff_pixels_altivec(int16_t *restrict block, const uint8_t *s1,
506506 const uint8_t *s2, int stride)
507507 {
508508 int i;
@@ -576,7 +576,7 @@ static void diff_pixels_altivec(DCTELEM *restrict block, const uint8_t *s1, · 67 unmodified lines
576576 }
577577
578578
579−static void clear_block_altivec(DCTELEM *block) {
579+static void clear_block_altivec(int16_t *block) {
580580 LOAD_ZERO;
581581 vec_st(zero_s16v, 0, block);
582582 vec_st(zero_s16v, 16, block);
libavcodec/ppc/dsputil_ppc.c+7−7
@@ -47,7 +47,7 @@ distinguish, and use dcbz (32 bytes) or dcbzl (one cache line) as required. · 46 unmodified lines
4747 see <http://developer.apple.com/technotes/tn/tn2087.html>
4848 and <http://developer.apple.com/technotes/tn/tn2086.html>
4949 */
50−static void clear_blocks_dcbz32_ppc(DCTELEM *blocks)
50+static void clear_blocks_dcbz32_ppc(int16_t *blocks)
5151 {
5252 register int misal = ((unsigned long)blocks & 0x00000010);
5353 register int i = 0;
@@ -58,7 +58,7 @@ static void clear_blocks_dcbz32_ppc(DCTELEM *blocks) · 4 unmodified lines
5858 ((unsigned long*)blocks)[3] = 0L;
5959 i += 16;
6060 }
61− for ( ; i < sizeof(DCTELEM)*6*64-31 ; i += 32) {
61+ for ( ; i < sizeof(int16_t)*6*64-31 ; i += 32) {
6262 __asm__ volatile("dcbz %0,%1" : : "b" (blocks), "r" (i) : "memory");
6363 }
6464 if (misal) {
@@ -73,7 +73,7 @@ static void clear_blocks_dcbz32_ppc(DCTELEM *blocks) · 8 unmodified lines
7373 /* same as above, when dcbzl clear a whole 128B cache line
7474 i.e. the PPC970 aka G5 */
7575 #if HAVE_DCBZL
76−static void clear_blocks_dcbz128_ppc(DCTELEM *blocks)
76+static void clear_blocks_dcbz128_ppc(int16_t *blocks)
7777 {
7878 register int misal = ((unsigned long)blocks & 0x0000007f);
7979 register int i = 0;
@@ -81,17 +81,17 @@ static void clear_blocks_dcbz128_ppc(DCTELEM *blocks) · 1 unmodified line
8181 // we could probably also optimize this case,
8282 // but there's not much point as the machines
8383 // aren't available yet (2003-06-26)
84− memset(blocks, 0, sizeof(DCTELEM)*6*64);
84+ memset(blocks, 0, sizeof(int16_t)*6*64);
8585 }
8686 else
87− for ( ; i < sizeof(DCTELEM)*6*64 ; i += 128) {
87+ for ( ; i < sizeof(int16_t)*6*64 ; i += 128) {
8888 __asm__ volatile("dcbzl %0,%1" : : "b" (blocks), "r" (i) : "memory");
8989 }
9090 }
9191 #else
92−static void clear_blocks_dcbz128_ppc(DCTELEM *blocks)
92+static void clear_blocks_dcbz128_ppc(int16_t *blocks)
9393 {
94− memset(blocks, 0, sizeof(DCTELEM)*6*64);
94+ memset(blocks, 0, sizeof(int16_t)*6*64);
9595 }
9696 #endif
9797
libavcodec/ppc/h264_altivec.c+9−9
@@ -315,7 +315,7 @@ H264_MC(avg_, 16, altivec) · 314 unmodified lines
315315 va_u32 = vec_splat((vec_u32)va_u8, 0); \
316316 vec_ste(va_u32, element, (uint32_t*)dst);
317317
318−static void ff_h264_idct_add_altivec(uint8_t *dst, DCTELEM *block, int stride)
318+static void ff_h264_idct_add_altivec(uint8_t *dst, int16_t *block, int stride)
319319 {
320320 vec_s16 va0, va1, va2, va3;
321321 vec_s16 vz0, vz1, vz2, vz3;
@@ -429,7 +429,7 @@ static void ff_h264_idct_add_altivec(uint8_t *dst, DCTELEM *block, int stride) · 107 unmodified lines
429429 vec_st( hv, 0, dest ); \
430430 }
431431
432−static void ff_h264_idct8_add_altivec( uint8_t *dst, DCTELEM *dct, int stride ) {
432+static void ff_h264_idct8_add_altivec( uint8_t *dst, int16_t *dct, int stride ) {
433433 vec_s16 s0, s1, s2, s3, s4, s5, s6, s7;
434434 vec_s16 d0, d1, d2, d3, d4, d5, d6, d7;
435435 vec_s16 idct0, idct1, idct2, idct3, idct4, idct5, idct6, idct7;
@@ -473,7 +473,7 @@ static void ff_h264_idct8_add_altivec( uint8_t *dst, DCTELEM *dct, int stride ) · 37 unmodified lines
473473 ALTIVEC_STORE_SUM_CLIP(&dst[7*stride], idct7, perm_ldv, perm_stv, sel);
474474 }
475475
476−static av_always_inline void h264_idct_dc_add_internal(uint8_t *dst, DCTELEM *block, int stride, int size)
476+static av_always_inline void h264_idct_dc_add_internal(uint8_t *dst, int16_t *block, int stride, int size)
477477 {
478478 vec_s16 dc16;
479479 vec_u8 dcplus, dcminus, v0, v1, v2, v3, aligner;
@@ -518,17 +518,17 @@ static av_always_inline void h264_idct_dc_add_internal(uint8_t *dst, DCTELEM *bl · 38 unmodified lines
518518 }
519519 }
520520
521−static void h264_idct_dc_add_altivec(uint8_t *dst, DCTELEM *block, int stride)
521+static void h264_idct_dc_add_altivec(uint8_t *dst, int16_t *block, int stride)
522522 {
523523 h264_idct_dc_add_internal(dst, block, stride, 4);
524524 }
525525
526−static void ff_h264_idct8_dc_add_altivec(uint8_t *dst, DCTELEM *block, int stride)
526+static void ff_h264_idct8_dc_add_altivec(uint8_t *dst, int16_t *block, int stride)
527527 {
528528 h264_idct_dc_add_internal(dst, block, stride, 8);
529529 }
530530
531−static void ff_h264_idct_add16_altivec(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
531+static void ff_h264_idct_add16_altivec(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
532532 int i;
533533 for(i=0; i<16; i++){
534534 int nnz = nnzc[ scan8[i] ];
@@ -539,7 +539,7 @@ static void ff_h264_idct_add16_altivec(uint8_t *dst, const int *block_offset, DC · 4 unmodified lines
539539 }
540540 }
541541
542−static void ff_h264_idct_add16intra_altivec(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
542+static void ff_h264_idct_add16intra_altivec(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
543543 int i;
544544 for(i=0; i<16; i++){
545545 if(nnzc[ scan8[i] ]) ff_h264_idct_add_altivec(dst + block_offset[i], block + i*16, stride);
@@ -547,7 +547,7 @@ static void ff_h264_idct_add16intra_altivec(uint8_t *dst, const int *block_offse · 1 unmodified line
547547 }
548548 }
549549
550−static void ff_h264_idct8_add4_altivec(uint8_t *dst, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
550+static void ff_h264_idct8_add4_altivec(uint8_t *dst, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
551551 int i;
552552 for(i=0; i<16; i+=4){
553553 int nnz = nnzc[ scan8[i] ];
@@ -558,7 +558,7 @@ static void ff_h264_idct8_add4_altivec(uint8_t *dst, const int *block_offset, DC · 4 unmodified lines
558558 }
559559 }
560560
561−static void ff_h264_idct_add8_altivec(uint8_t **dest, const int *block_offset, DCTELEM *block, int stride, const uint8_t nnzc[15*8]){
561+static void ff_h264_idct_add8_altivec(uint8_t **dest, const int *block_offset, int16_t *block, int stride, const uint8_t nnzc[15*8]){
562562 int i, j;
563563 for (j = 1; j < 3; j++) {
564564 for(i = j * 16; i < j * 16 + 4; i++){
libavcodec/ppc/mpegvideo_altivec.c+1−1
@@ -35,7 +35,7 @@ · 34 unmodified lines
3535 /* AltiVec version of dct_unquantize_h263
3636 this code assumes `block' is 16 bytes-aligned */
3737 static void dct_unquantize_h263_altivec(MpegEncContext *s,
38− DCTELEM *block, int n, int qscale)
38+ int16_t *block, int n, int qscale)
3939 {
4040 int i, level, qmul, qadd;
4141 int nCoeffs;
libavcodec/ppc/vc1dsp_altivec.c+2−2
@@ -129,7 +129,7 @@ do { \ · 128 unmodified lines
129129
130130 /** Do inverse transform on 8x8 block
131131 */
132−static void vc1_inv_trans_8x8_altivec(DCTELEM block[64])
132+static void vc1_inv_trans_8x8_altivec(int16_t block[64])
133133 {
134134 vector signed short src0, src1, src2, src3, src4, src5, src6, src7;
135135 vector signed int s0, s1, s2, s3, s4, s5, s6, s7;
@@ -224,7 +224,7 @@ static void vc1_inv_trans_8x8_altivec(DCTELEM block[64]) · 88 unmodified lines
224224
225225 /** Do inverse transform on 8x4 part of block
226226 */
227−static void vc1_inv_trans_8x4_altivec(uint8_t *dest, int stride, DCTELEM *block)
227+static void vc1_inv_trans_8x4_altivec(uint8_t *dest, int stride, int16_t *block)
228228 {
229229 vector signed short src0, src1, src2, src3, src4, src5, src6, src7;
230230 vector signed int s0, s1, s2, s3, s4, s5, s6, s7;
libavcodec/ppc/vp3dsp_altivec.c+2−2
@@ -116,7 +116,7 @@ static inline vec_s16 M16(vec_s16 a, vec_s16 C) · 115 unmodified lines
116116 #define ADD8(a) vec_add(a, eight)
117117 #define SHIFT4(a) vec_sra(a, four)
118118
119−static void vp3_idct_put_altivec(uint8_t *dst, int stride, DCTELEM block[64])
119+static void vp3_idct_put_altivec(uint8_t *dst, int stride, int16_t block[64])
120120 {
121121 vec_u8 t;
122122 IDCT_START
@@ -145,7 +145,7 @@ static void vp3_idct_put_altivec(uint8_t *dst, int stride, DCTELEM block[64]) · 22 unmodified lines
145145 memset(block, 0, sizeof(*block) * 64);
146146 }
147147
148−static void vp3_idct_add_altivec(uint8_t *dst, int stride, DCTELEM block[64])
148+static void vp3_idct_add_altivec(uint8_t *dst, int stride, int16_t block[64])
149149 {
150150 LOAD_ZERO;
151151 vec_u8 t, vdst;
libavcodec/proresdec.c+6−5
@@ -34,6 +34,7 @@ · 33 unmodified lines
3434
3535 #include "libavutil/intmath.h"
3636 #include "avcodec.h"
37+#include "dsputil.h"
3738 #include "internal.h"
3839 #include "proresdata.h"
3940 #include "proresdsp.h"
@@ -45,7 +46,7 @@ typedef struct { · 5 unmodified lines
4546 int x_pos, y_pos;
4647 int slice_width;
4748 int prev_slice_sf; ///< scalefactor of the previous decoded slice
48− DECLARE_ALIGNED(16, DCTELEM, blocks)[8 * 4 * 64];
49+ DECLARE_ALIGNED(16, int16_t, blocks)[8 * 4 * 64];
4950 DECLARE_ALIGNED(16, int16_t, qmat_luma_scaled)[64];
5051 DECLARE_ALIGNED(16, int16_t, qmat_chroma_scaled)[64];
5152 } ProresThreadData;
@@ -340,10 +341,10 @@ static inline int decode_vlc_codeword(GetBitContext *gb, unsigned codebook) · 288 unmodified lines
340341 /**
341342 * Decode DC coefficients for all blocks in a slice.
342343 */
343−static inline void decode_dc_coeffs(GetBitContext *gb, DCTELEM *out,
344+static inline void decode_dc_coeffs(GetBitContext *gb, int16_t *out,
344345 int nblocks)
345346 {
346− DCTELEM prev_dc;
347+ int16_t prev_dc;
347348 int i, sign;
348349 int16_t delta;
349350 unsigned int code;
@@ -368,7 +369,7 @@ static inline void decode_dc_coeffs(GetBitContext *gb, DCTELEM *out, · 18 unmodified lines
368369 /**
369370 * Decode AC coefficients for all blocks in a slice.
370371 */
371−static inline void decode_ac_coeffs(GetBitContext *gb, DCTELEM *out,
372+static inline void decode_ac_coeffs(GetBitContext *gb, int16_t *out,
372373 int blocks_per_slice,
373374 int plane_size_factor,
374375 const uint8_t *scan)
@@ -421,7 +422,7 @@ static void decode_slice_plane(ProresContext *ctx, ProresThreadData *td, · 46 unmodified lines
421422 const int16_t *qmat, int is_chroma)
422423 {
423424 GetBitContext gb;
424− DCTELEM *block_ptr;
425+ int16_t *block_ptr;
425426 int mb_num, blocks_per_slice;
426427
427428 blocks_per_slice = mbs_per_slice * blocks_per_mb;
libavcodec/proresdsp.c+4−3
@@ -20,6 +20,7 @@ · 19 unmodified lines
2020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2121 */
2222
23+#include "dsputil.h"
2324 #include "proresdsp.h"
2425 #include "simple_idct.h"
2526 #include "libavutil/common.h"
@@ -34,7 +35,7 @@ · 8 unmodified lines
3435 /**
3536 * Add bias value, clamp and output pixels of a slice
3637 */
37−static void put_pixels(uint16_t *dst, int stride, const DCTELEM *in)
38+static void put_pixels(uint16_t *dst, int stride, const int16_t *in)
3839 {
3940 int x, y, src_offset, dst_offset;
4041
@@ -47,7 +48,7 @@ static void put_pixels(uint16_t *dst, int stride, const DCTELEM *in) · 6 unmodified lines
4748 }
4849 }
4950
50−static void prores_idct_put_c(uint16_t *out, int linesize, DCTELEM *block, const int16_t *qmat)
51+static void prores_idct_put_c(uint16_t *out, int linesize, int16_t *block, const int16_t *qmat)
5152 {
5253 ff_prores_idct(block, qmat);
5354 put_pixels(out, linesize >> 1, block);
@@ -55,7 +56,7 @@ static void prores_idct_put_c(uint16_t *out, int linesize, DCTELEM *block, const · 1 unmodified line
5556 #endif
5657
5758 #if CONFIG_PRORES_ENCODER
58−static void prores_fdct_c(const uint16_t *src, int linesize, DCTELEM *block)
59+static void prores_fdct_c(const uint16_t *src, int linesize, int16_t *block)
5960 {
6061 int x, y;
6162 const uint16_t *tsrc = src;
libavcodec/proresdsp.h+3−3
@@ -23,7 +23,7 @@ · 22 unmodified lines
2323 #ifndef AVCODEC_PRORESDSP_H
2424 #define AVCODEC_PRORESDSP_H
2525
26−#include "dsputil.h"
26+#include <stdint.h>
2727
2828 #define PRORES_BITS_PER_SAMPLE 10 ///< output precision of prores decoder
2929
@@ -32,8 +32,8 @@ typedef struct ProresDSPContext { · 2 unmodified lines
3232 uint8_t idct_permutation[64];
3333 int dct_permutation_type;
3434 uint8_t dct_permutation[64];
35− void (* idct_put) (uint16_t *out, int linesize, DCTELEM *block, const int16_t *qmat);
36− void (* fdct) (const uint16_t *src, int linesize, DCTELEM *block);
35+ void (* idct_put) (uint16_t *out, int linesize, int16_t *block, const int16_t *qmat);
36+ void (* fdct) (const uint16_t *src, int linesize, int16_t *block);
3737 } ProresDSPContext;
3838
3939 void ff_proresdsp_init(ProresDSPContext *dsp);
libavcodec/proresenc.c+9−8
@@ -22,6 +22,7 @@ · 21 unmodified lines
2222
2323 #include "libavutil/opt.h"
2424 #include "avcodec.h"
25+#include "dsputil.h"
2526 #include "put_bits.h"
2627 #include "bytestream.h"
2728 #include "internal.h"
@@ -167,7 +168,7 @@ struct TrellisNode { · 139 unmodified lines
167168 #define MAX_STORED_Q 16
168169
169170 typedef struct ProresThreadData {
170− DECLARE_ALIGNED(16, DCTELEM, blocks)[MAX_PLANES][64 * 4 * MAX_MBS_PER_SLICE];
171+ DECLARE_ALIGNED(16, int16_t, blocks)[MAX_PLANES][64 * 4 * MAX_MBS_PER_SLICE];
171172 DECLARE_ALIGNED(16, uint16_t, emu_buf)[16 * 16];
172173 int16_t custom_q[64];
173174 struct TrellisNode *nodes;
@@ -175,7 +176,7 @@ typedef struct ProresThreadData { · 1 unmodified line
175176
176177 typedef struct ProresContext {
177178 AVClass *class;
178− DECLARE_ALIGNED(16, DCTELEM, blocks)[MAX_PLANES][64 * 4 * MAX_MBS_PER_SLICE];
179+ DECLARE_ALIGNED(16, int16_t, blocks)[MAX_PLANES][64 * 4 * MAX_MBS_PER_SLICE];
179180 DECLARE_ALIGNED(16, uint16_t, emu_buf)[16*16];
180181 int16_t quants[MAX_STORED_Q][64];
181182 int16_t custom_q[64];
@@ -210,7 +211,7 @@ typedef struct ProresContext { · 28 unmodified lines
210211
211212 static void get_slice_data(ProresContext *ctx, const uint16_t *src,
212213 int linesize, int x, int y, int w, int h,
213− DCTELEM *blocks, uint16_t *emu_buf,
214+ int16_t *blocks, uint16_t *emu_buf,
214215 int mbs_per_slice, int blocks_per_mb, int is_chroma)
215216 {
216217 const uint16_t *esrc;
@@ -314,7 +315,7 @@ static inline void encode_vlc_codeword(PutBitContext *pb, unsigned codebook, int · 97 unmodified lines
314315 #define GET_SIGN(x) ((x) >> 31)
315316 #define MAKE_CODE(x) (((x) << 1) ^ GET_SIGN(x))
316317
317−static void encode_dcs(PutBitContext *pb, DCTELEM *blocks,
318+static void encode_dcs(PutBitContext *pb, int16_t *blocks,
318319 int blocks_per_slice, int scale)
319320 {
320321 int i;
@@ -340,7 +341,7 @@ static void encode_dcs(PutBitContext *pb, DCTELEM *blocks, · 19 unmodified lines
340341 }
341342 }
342343
343−static void encode_acs(PutBitContext *pb, DCTELEM *blocks,
344+static void encode_acs(PutBitContext *pb, int16_t *blocks,
344345 int blocks_per_slice,
345346 int plane_size_factor,
346347 const uint8_t *scan, const int16_t *qmat)
@@ -376,7 +377,7 @@ static void encode_acs(PutBitContext *pb, DCTELEM *blocks, · 29 unmodified lines
376377
377378 static int encode_slice_plane(ProresContext *ctx, PutBitContext *pb,
378379 const uint16_t *src, int linesize,
379− int mbs_per_slice, DCTELEM *blocks,
380+ int mbs_per_slice, int16_t *blocks,
380381 int blocks_per_mb, int plane_size_factor,
381382 const int16_t *qmat)
382383 {
@@ -478,7 +479,7 @@ static inline int estimate_vlc(unsigned codebook, int val) · 95 unmodified lines
478479 }
479480 }
480481
481−static int estimate_dcs(int *error, DCTELEM *blocks, int blocks_per_slice,
482+static int estimate_dcs(int *error, int16_t *blocks, int blocks_per_slice,
482483 int scale)
483484 {
484485 int i;
@@ -509,7 +510,7 @@ static int estimate_dcs(int *error, DCTELEM *blocks, int blocks_per_slice, · 24 unmodified lines
509510 return bits;
510511 }
511512
512−static int estimate_acs(int *error, DCTELEM *blocks, int blocks_per_slice,
513+static int estimate_acs(int *error, int16_t *blocks, int blocks_per_slice,
513514 int plane_size_factor,
514515 const uint8_t *scan, const int16_t *qmat)
515516 {
libavcodec/rtjpeg.c+3−3
@@ -44,7 +44,7 @@ · 43 unmodified lines
4444 * aligned this could be done faster in a different way, e.g. as it is done
4545 * in MPlayer libmpcodecs/native/rtjpegn.c.
4646 */
47−static inline int get_block(GetBitContext *gb, DCTELEM *block, const uint8_t *scan,
47+static inline int get_block(GetBitContext *gb, int16_t *block, const uint8_t *scan,
4848 const uint32_t *quant) {
4949 int coeff, i, n;
5050 int8_t ac;
@@ -61,7 +61,7 @@ static inline int get_block(GetBitContext *gb, DCTELEM *block, const uint8_t *sc · 10 unmodified lines
6161
6262 // normally we would only need to clear the (63 - coeff) last values,
6363 // but since we do not know where they are we just clear the whole block
64− memset(block, 0, 64 * sizeof(DCTELEM));
64+ memset(block, 0, 64 * sizeof(int16_t));
6565
6666 // 2 bits per coefficient
6767 while (coeff) {
@@ -121,7 +121,7 @@ int ff_rtjpeg_decode_frame_yuv420(RTJpegContext *c, AVFrame *f, · 53 unmodified lines
121121 if (res > 0) \
122122 c->dsp->idct_put(dst, stride, block); \
123123 } while (0)
124− DCTELEM *block = c->block;
124+ int16_t *block = c->block;
125125 BLOCK(c->lquant, y1, f->linesize[0]);
126126 y1 += 8;
127127 BLOCK(c->lquant, y1, f->linesize[0]);
libavcodec/rtjpeg.h+1−1
@@ -35,7 +35,7 @@ typedef struct RTJpegContext { · 34 unmodified lines
3535 uint8_t scan[64];
3636 uint32_t lquant[64];
3737 uint32_t cquant[64];
38− DECLARE_ALIGNED(16, DCTELEM, block)[64];
38+ DECLARE_ALIGNED(16, int16_t, block)[64];
3939 } RTJpegContext;
4040
4141 void ff_rtjpeg_decode_init(RTJpegContext *c, DSPContext *dsp,
libavcodec/rv34.c+10−10
@@ -216,7 +216,7 @@ static int rv34_decode_cbp(GetBitContext *gb, RV34VLC *vlc, int table) · 215 unmodified lines
216216 /**
217217 * Get one coefficient value from the bistream and store it.
218218 */
219−static inline void decode_coeff(DCTELEM *dst, int coef, int esc, GetBitContext *gb, VLC* vlc, int q)
219+static inline void decode_coeff(int16_t *dst, int coef, int esc, GetBitContext *gb, VLC* vlc, int q)
220220 {
221221 if(coef){
222222 if(coef == esc){
@@ -236,7 +236,7 @@ static inline void decode_coeff(DCTELEM *dst, int coef, int esc, GetBitContext * · 13 unmodified lines
236236 /**
237237 * Decode 2x2 subblock of coefficients.
238238 */
239−static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc, int q)
239+static inline void decode_subblock(int16_t *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc, int q)
240240 {
241241 int flags = modulo_three_table[code];
242242
@@ -254,13 +254,13 @@ static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, · 11 unmodified lines
254254 /**
255255 * Decode a single coefficient.
256256 */
257−static inline void decode_subblock1(DCTELEM *dst, int code, GetBitContext *gb, VLC *vlc, int q)
257+static inline void decode_subblock1(int16_t *dst, int code, GetBitContext *gb, VLC *vlc, int q)
258258 {
259259 int coeff = modulo_three_table[code] >> 6;
260260 decode_coeff(dst, coeff, 3, gb, vlc, q);
261261 }
262262
263−static inline void decode_subblock3(DCTELEM *dst, int code, GetBitContext *gb, VLC *vlc,
263+static inline void decode_subblock3(int16_t *dst, int code, GetBitContext *gb, VLC *vlc,
264264 int q_dc, int q_ac1, int q_ac2)
265265 {
266266 int flags = modulo_three_table[code];
@@ -282,7 +282,7 @@ static inline void decode_subblock3(DCTELEM *dst, int code, GetBitContext *gb, V · 15 unmodified lines
282282 * o--o
283283 */
284284
285−static int rv34_decode_block(DCTELEM *dst, GetBitContext *gb, RV34VLC *rvlc, int fc, int sc, int q_dc, int q_ac1, int q_ac2)
285+static int rv34_decode_block(int16_t *dst, GetBitContext *gb, RV34VLC *rvlc, int fc, int sc, int q_dc, int q_ac1, int q_ac2)
286286 {
287287 int code, pattern, has_ac = 1;
288288
@@ -994,7 +994,7 @@ static inline void rv34_process_block(RV34DecContext *r, · 705 unmodified lines
994994 int fc, int sc, int q_dc, int q_ac)
995995 {
996996 MpegEncContext *s = &r->s;
997− DCTELEM *ptr = s->block[0];
997+ int16_t *ptr = s->block[0];
998998 int has_ac = rv34_decode_block(ptr, &s->gb, r->cur_vlcs,
999999 fc, sc, q_dc, q_ac, q_ac);
10001000 if(has_ac){
@@ -1007,13 +1007,13 @@ static inline void rv34_process_block(RV34DecContext *r, · 6 unmodified lines
10071007
10081008 static void rv34_output_i16x16(RV34DecContext *r, int8_t *intra_types, int cbp)
10091009 {
1010− LOCAL_ALIGNED_16(DCTELEM, block16, [16]);
1010+ LOCAL_ALIGNED_16(int16_t, block16, [16]);
10111011 MpegEncContext *s = &r->s;
10121012 GetBitContext *gb = &s->gb;
10131013 int q_dc = rv34_qscale_tab[ r->luma_dc_quant_i[s->qscale] ],
10141014 q_ac = rv34_qscale_tab[s->qscale];
10151015 uint8_t *dst = s->dest[0];
1016− DCTELEM *ptr = s->block[0];
1016+ int16_t *ptr = s->block[0];
10171017 int i, j, itype, has_ac;
10181018
10191019 memset(block16, 0, 16 * sizeof(*block16));
@@ -1179,7 +1179,7 @@ static int rv34_decode_inter_macroblock(RV34DecContext *r, int8_t *intra_types) · 159 unmodified lines
11791179 MpegEncContext *s = &r->s;
11801180 GetBitContext *gb = &s->gb;
11811181 uint8_t *dst = s->dest[0];
1182− DCTELEM *ptr = s->block[0];
1182+ int16_t *ptr = s->block[0];
11831183 int mb_pos = s->mb_x + s->mb_y * s->mb_stride;
11841184 int cbp, cbp2;
11851185 int q_dc, q_ac, has_ac;
@@ -1219,7 +1219,7 @@ static int rv34_decode_inter_macroblock(RV34DecContext *r, int8_t *intra_types) · 33 unmodified lines
12191219
12201220 if(r->is16){
12211221 // Only for RV34_MB_P_MIX16x16
1222− LOCAL_ALIGNED_16(DCTELEM, block16, [16]);
1222+ LOCAL_ALIGNED_16(int16_t, block16, [16]);
12231223 memset(block16, 0, 16 * sizeof(*block16));
12241224 q_dc = rv34_qscale_tab[ r->luma_dc_quant_p[s->qscale] ];
12251225 q_ac = rv34_qscale_tab[s->qscale];
libavcodec/rv34dsp.c+6−6
@@ -33,7 +33,7 @@ · 32 unmodified lines
3333 * @{
3434 */
3535
36−static av_always_inline void rv34_row_transform(int temp[16], DCTELEM *block)
36+static av_always_inline void rv34_row_transform(int temp[16], int16_t *block)
3737 {
3838 int i;
3939
@@ -54,12 +54,12 @@ static av_always_inline void rv34_row_transform(int temp[16], DCTELEM *block) · 14 unmodified lines
5454 * Real Video 3.0/4.0 inverse transform + sample reconstruction
5555 * Code is almost the same as in SVQ3, only scaling is different.
5656 */
57−static void rv34_idct_add_c(uint8_t *dst, ptrdiff_t stride, DCTELEM *block){
57+static void rv34_idct_add_c(uint8_t *dst, ptrdiff_t stride, int16_t *block){
5858 int temp[16];
5959 int i;
6060
6161 rv34_row_transform(temp, block);
62− memset(block, 0, 16*sizeof(DCTELEM));
62+ memset(block, 0, 16*sizeof(int16_t));
6363
6464 for(i = 0; i < 4; i++){
6565 const int z0 = 13*(temp[4*0+i] + temp[4*2+i]) + 0x200;
@@ -82,7 +82,7 @@ static void rv34_idct_add_c(uint8_t *dst, ptrdiff_t stride, DCTELEM *block){ · 16 unmodified lines
8282 * Code is almost the same as rv34_inv_transform()
8383 * but final coefficients are multiplied by 1.5 and have no rounding.
8484 */
85−static void rv34_inv_transform_noround_c(DCTELEM *block){
85+static void rv34_inv_transform_noround_c(int16_t *block){
8686 int temp[16];
8787 int i;
8888
@@ -115,9 +115,9 @@ static void rv34_idct_dc_add_c(uint8_t *dst, ptrdiff_t stride, int dc) · 26 unmodified lines
115115 }
116116 }
117117
118−static void rv34_inv_transform_dc_noround_c(DCTELEM *block)
118+static void rv34_inv_transform_dc_noround_c(int16_t *block)
119119 {
120− DCTELEM dc = (13 * 13 * 3 * block[0]) >> 11;
120+ int16_t dc = (13 * 13 * 3 * block[0]) >> 11;
121121 int i, j;
122122
123123 for (i = 0; i < 4; i++, block += 4)
libavcodec/rv34dsp.h+2−2
@@ -34,9 +34,9 @@ typedef void (*rv40_weight_func)(uint8_t *dst/*align width (8 or 16)*/, · 33 unmodified lines
3434 uint8_t *src2/*align width (8 or 16)*/,
3535 int w1, int w2, ptrdiff_t stride);
3636
37−typedef void (*rv34_inv_transform_func)(DCTELEM *block);
37+typedef void (*rv34_inv_transform_func)(int16_t *block);
3838
39−typedef void (*rv34_idct_add_func)(uint8_t *dst, ptrdiff_t stride, DCTELEM *block);
39+typedef void (*rv34_idct_add_func)(uint8_t *dst, ptrdiff_t stride, int16_t *block);
4040 typedef void (*rv34_idct_dc_add_func)(uint8_t *dst, ptrdiff_t stride,
4141 int dc);
4242
libavcodec/sh4/dsputil_sh4.c+4−4
@@ -47,12 +47,12 @@ static void memzero_align8(void *dst,size_t size) · 46 unmodified lines
4747 fp_single_leave(fpscr);
4848 }
4949
50−static void clear_blocks_sh4(DCTELEM *blocks)
50+static void clear_blocks_sh4(int16_t *blocks)
5151 {
52− memzero_align8(blocks,sizeof(DCTELEM)*6*64);
52+ memzero_align8(blocks,sizeof(int16_t)*6*64);
5353 }
5454
55−static void idct_put(uint8_t *dest, int line_size, DCTELEM *block)
55+static void idct_put(uint8_t *dest, int line_size, int16_t *block)
5656 {
5757 int i;
5858 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
@@ -70,7 +70,7 @@ static void idct_put(uint8_t *dest, int line_size, DCTELEM *block) · 11 unmodified lines
7070 block+=8;
7171 }
7272 }
73−static void idct_add(uint8_t *dest, int line_size, DCTELEM *block)
73+static void idct_add(uint8_t *dest, int line_size, int16_t *block)
7474 {
7575 int i;
7676 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
libavcodec/sh4/dsputil_sh4.h+1−1
@@ -22,7 +22,7 @@ · 21 unmodified lines
2222 #include "libavcodec/avcodec.h"
2323 #include "libavcodec/dsputil.h"
2424
25−void ff_idct_sh4(DCTELEM *block);
25+void ff_idct_sh4(int16_t *block);
2626 void ff_dsputil_init_align(DSPContext* c, AVCodecContext *avctx);
2727
2828 #endif /* AVCODEC_SH4_DSPUTIL_SH4_H */
libavcodec/sh4/idct_sh4.c+1−1
@@ -89,7 +89,7 @@ static const float odd_table[] __attribute__ ((aligned(8))) = { · 88 unmodified lines
8989
9090 //optimized
9191
92−void ff_idct_sh4(DCTELEM *block)
92+void ff_idct_sh4(int16_t *block)
9393 {
9494 DEFREG;
9595
libavcodec/simple_idct.c+9−9
@@ -50,7 +50,7 @@ · 49 unmodified lines
5050 and the butterfly must be multiplied by 0.5 * sqrt(2.0) */
5151 #define C_SHIFT (4+1+12)
5252
53−static inline void idct4col_put(uint8_t *dest, int line_size, const DCTELEM *col)
53+static inline void idct4col_put(uint8_t *dest, int line_size, const int16_t *col)
5454 {
5555 int c0, c1, c2, c3, a0, a1, a2, a3;
5656
@@ -86,10 +86,10 @@ static inline void idct4col_put(uint8_t *dest, int line_size, const DCTELEM *col · 29 unmodified lines
8686 /* XXX: I think a 1.0/sqrt(2) normalization should be needed to
8787 compensate the extra butterfly stage - I don't have the full DV
8888 specification */
89−void ff_simple_idct248_put(uint8_t *dest, int line_size, DCTELEM *block)
89+void ff_simple_idct248_put(uint8_t *dest, int line_size, int16_t *block)
9090 {
9191 int i;
92− DCTELEM *ptr;
92+ int16_t *ptr;
9393
9494 /* butterfly */
9595 ptr = block;
@@ -129,7 +129,7 @@ void ff_simple_idct248_put(uint8_t *dest, int line_size, DCTELEM *block) · 33 unmodified lines
129129 #define C2 C_FIX(0.2705980501)
130130 #define C3 C_FIX(0.5)
131131 #define C_SHIFT (4+1+12)
132−static inline void idct4col_add(uint8_t *dest, int line_size, const DCTELEM *col)
132+static inline void idct4col_add(uint8_t *dest, int line_size, const int16_t *col)
133133 {
134134 int c0, c1, c2, c3, a0, a1, a2, a3;
135135
@@ -156,7 +156,7 @@ static inline void idct4col_add(uint8_t *dest, int line_size, const DCTELEM *col · 20 unmodified lines
156156 #define R2 R_FIX(0.2705980501)
157157 #define R3 R_FIX(0.5)
158158 #define R_SHIFT 11
159−static inline void idct4row(DCTELEM *row)
159+static inline void idct4row(int16_t *row)
160160 {
161161 int c0, c1, c2, c3, a0, a1, a2, a3;
162162
@@ -174,7 +174,7 @@ static inline void idct4row(DCTELEM *row) · 11 unmodified lines
174174 row[3]= (c0 - c1) >> R_SHIFT;
175175 }
176176
177−void ff_simple_idct84_add(uint8_t *dest, int line_size, DCTELEM *block)
177+void ff_simple_idct84_add(uint8_t *dest, int line_size, int16_t *block)
178178 {
179179 int i;
180180
@@ -189,7 +189,7 @@ void ff_simple_idct84_add(uint8_t *dest, int line_size, DCTELEM *block) · 8 unmodified lines
189189 }
190190 }
191191
192−void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block)
192+void ff_simple_idct48_add(uint8_t *dest, int line_size, int16_t *block)
193193 {
194194 int i;
195195
@@ -204,7 +204,7 @@ void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block) · 8 unmodified lines
204204 }
205205 }
206206
207−void ff_simple_idct44_add(uint8_t *dest, int line_size, DCTELEM *block)
207+void ff_simple_idct44_add(uint8_t *dest, int line_size, int16_t *block)
208208 {
209209 int i;
210210
@@ -219,7 +219,7 @@ void ff_simple_idct44_add(uint8_t *dest, int line_size, DCTELEM *block) · 8 unmodified lines
219219 }
220220 }
221221
222−void ff_prores_idct(DCTELEM *block, const int16_t *qmat)
222+void ff_prores_idct(int16_t *block, const int16_t *qmat)
223223 {
224224 int i;
225225
libavcodec/simple_idct.h+11−12
@@ -29,30 +29,29 @@ · 28 unmodified lines
2929 #define AVCODEC_SIMPLE_IDCT_H
3030
3131 #include <stdint.h>
32−#include "dsputil.h"
3332
34−void ff_simple_idct_put_8(uint8_t *dest, int line_size, DCTELEM *block);
35−void ff_simple_idct_add_8(uint8_t *dest, int line_size, DCTELEM *block);
36−void ff_simple_idct_8(DCTELEM *block);
33+void ff_simple_idct_put_8(uint8_t *dest, int line_size, int16_t *block);
34+void ff_simple_idct_add_8(uint8_t *dest, int line_size, int16_t *block);
35+void ff_simple_idct_8(int16_t *block);
3736
38−void ff_simple_idct_put_10(uint8_t *dest, int line_size, DCTELEM *block);
39−void ff_simple_idct_add_10(uint8_t *dest, int line_size, DCTELEM *block);
40−void ff_simple_idct_10(DCTELEM *block);
37+void ff_simple_idct_put_10(uint8_t *dest, int line_size, int16_t *block);
38+void ff_simple_idct_add_10(uint8_t *dest, int line_size, int16_t *block);
39+void ff_simple_idct_10(int16_t *block);
4140 /**
4241 * Special version of ff_simple_idct_10() which does dequantization
4342 * and scales by a factor of 2 more between the two IDCTs to account
4443 * for larger scale of input coefficients.
4544 */
46−void ff_prores_idct(DCTELEM *block, const int16_t *qmat);
45+void ff_prores_idct(int16_t *block, const int16_t *qmat);
4746
4847 void ff_simple_idct_mmx(int16_t *block);
4948 void ff_simple_idct_add_mmx(uint8_t *dest, int line_size, int16_t *block);
5049 void ff_simple_idct_put_mmx(uint8_t *dest, int line_size, int16_t *block);
5150
52−void ff_simple_idct248_put(uint8_t *dest, int line_size, DCTELEM *block);
51+void ff_simple_idct248_put(uint8_t *dest, int line_size, int16_t *block);
5352
54−void ff_simple_idct84_add(uint8_t *dest, int line_size, DCTELEM *block);
55−void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block);
56−void ff_simple_idct44_add(uint8_t *dest, int line_size, DCTELEM *block);
53+void ff_simple_idct84_add(uint8_t *dest, int line_size, int16_t *block);
54+void ff_simple_idct48_add(uint8_t *dest, int line_size, int16_t *block);
55+void ff_simple_idct44_add(uint8_t *dest, int line_size, int16_t *block);
5756
5857 #endif /* AVCODEC_SIMPLE_IDCT_H */
libavcodec/simple_idct_template.c+7−7
@@ -85,7 +85,7 @@ · 84 unmodified lines
8585
8686 #endif
8787
88−static inline void FUNC(idctRowCondDC)(DCTELEM *row, int extra_shift)
88+static inline void FUNC(idctRowCondDC)(int16_t *row, int extra_shift)
8989 {
9090 int a0, a1, a2, a3, b0, b1, b2, b3;
9191
@@ -221,7 +221,7 @@ static inline void FUNC(idctRowCondDC)(DCTELEM *row, int extra_shift) · 129 unmodified lines
221221 } while (0)
222222
223223 static inline void FUNC(idctSparseColPut)(pixel *dest, int line_size,
224− DCTELEM *col)
224+ int16_t *col)
225225 {
226226 int a0, a1, a2, a3, b0, b1, b2, b3;
227227
@@ -245,7 +245,7 @@ static inline void FUNC(idctSparseColPut)(pixel *dest, int line_size, · 17 unmodified lines
245245 }
246246
247247 static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size,
248− DCTELEM *col)
248+ int16_t *col)
249249 {
250250 int a0, a1, a2, a3, b0, b1, b2, b3;
251251
@@ -268,7 +268,7 @@ static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size, · 16 unmodified lines
268268 dest[0] = av_clip_pixel(dest[0] + ((a0 - b0) >> COL_SHIFT));
269269 }
270270
271−static inline void FUNC(idctSparseCol)(DCTELEM *col)
271+static inline void FUNC(idctSparseCol)(int16_t *col)
272272 {
273273 int a0, a1, a2, a3, b0, b1, b2, b3;
274274
@@ -284,7 +284,7 @@ static inline void FUNC(idctSparseCol)(DCTELEM *col) · 9 unmodified lines
284284 col[56] = ((a0 - b0) >> COL_SHIFT);
285285 }
286286
287−void FUNC(ff_simple_idct_put)(uint8_t *dest_, int line_size, DCTELEM *block)
287+void FUNC(ff_simple_idct_put)(uint8_t *dest_, int line_size, int16_t *block)
288288 {
289289 pixel *dest = (pixel *)dest_;
290290 int i;
@@ -298,7 +298,7 @@ void FUNC(ff_simple_idct_put)(uint8_t *dest_, int line_size, DCTELEM *block) · 7 unmodified lines
298298 FUNC(idctSparseColPut)(dest + i, line_size, block + i);
299299 }
300300
301−void FUNC(ff_simple_idct_add)(uint8_t *dest_, int line_size, DCTELEM *block)
301+void FUNC(ff_simple_idct_add)(uint8_t *dest_, int line_size, int16_t *block)
302302 {
303303 pixel *dest = (pixel *)dest_;
304304 int i;
@@ -312,7 +312,7 @@ void FUNC(ff_simple_idct_add)(uint8_t *dest_, int line_size, DCTELEM *block) · 7 unmodified lines
312312 FUNC(idctSparseColAdd)(dest + i, line_size, block + i);
313313 }
314314
315−void FUNC(ff_simple_idct)(DCTELEM *block)
315+void FUNC(ff_simple_idct)(int16_t *block)
316316 {
317317 int i;
318318
libavcodec/sparc/dsputil_vis.h+3−4
@@ -20,10 +20,9 @@ · 19 unmodified lines
2020 #define AVCODEC_SPARC_DSPUTIL_VIS_H
2121
2222 #include <stdint.h>
23−#include "libavcodec/dsputil.h"
2423
25−void ff_simple_idct_put_vis(uint8_t *dest, int line_size, DCTELEM *data);
26−void ff_simple_idct_add_vis(uint8_t *dest, int line_size, DCTELEM *data);
27−void ff_simple_idct_vis(DCTELEM *data);
24+void ff_simple_idct_put_vis(uint8_t *dest, int line_size, int16_t *data);
25+void ff_simple_idct_add_vis(uint8_t *dest, int line_size, int16_t *data);
26+void ff_simple_idct_vis(int16_t *data);
2827
2928 #endif /* AVCODEC_SPARC_DSPUTIL_VIS_H */
libavcodec/sparc/simple_idct_vis.c+3−3
@@ -388,7 +388,7 @@ static const DECLARE_ALIGNED(8, uint16_t, expand)[4] = { · 387 unmodified lines
388388 "st %%f14, [%12+" dest "] \n\t"\
389389
390390
391−void ff_simple_idct_vis(DCTELEM *data) {
391+void ff_simple_idct_vis(int16_t *data) {
392392 int out1, out2, out3, out4;
393393 DECLARE_ALIGNED(8, int16_t, temp)[8*8];
394394
@@ -428,7 +428,7 @@ void ff_simple_idct_vis(DCTELEM *data) { · 33 unmodified lines
428428 );
429429 }
430430
431−void ff_simple_idct_put_vis(uint8_t *dest, int line_size, DCTELEM *data) {
431+void ff_simple_idct_put_vis(uint8_t *dest, int line_size, int16_t *data) {
432432 int out1, out2, out3, out4, out5;
433433 int r1, r2, r3, r4, r5, r6, r7;
434434
@@ -478,7 +478,7 @@ void ff_simple_idct_put_vis(uint8_t *dest, int line_size, DCTELEM *data) { · 43 unmodified lines
478478 );
479479 }
480480
481−void ff_simple_idct_add_vis(uint8_t *dest, int line_size, DCTELEM *data) {
481+void ff_simple_idct_add_vis(uint8_t *dest, int line_size, int16_t *data) {
482482 int out1, out2, out3, out4, out5, out6;
483483 int r1, r2, r3, r4, r5, r6, r7;
484484
libavcodec/svq3.c+3−3
@@ -137,7 +137,7 @@ static const uint32_t svq3_dequant_coeff[32] = { · 136 unmodified lines
137137 61694, 68745, 77615, 89113, 100253, 109366, 126635, 141533
138138 };
139139
140−void ff_svq3_luma_dc_dequant_idct_c(DCTELEM *output, DCTELEM *input, int qp)
140+void ff_svq3_luma_dc_dequant_idct_c(int16_t *output, int16_t *input, int qp)
141141 {
142142 const int qmul = svq3_dequant_coeff[qp];
143143 #define stride 16
@@ -172,7 +172,7 @@ void ff_svq3_luma_dc_dequant_idct_c(DCTELEM *output, DCTELEM *input, int qp) · 28 unmodified lines
172172 }
173173 #undef stride
174174
175−void ff_svq3_add_idct_c(uint8_t *dst, DCTELEM *block,
175+void ff_svq3_add_idct_c(uint8_t *dst, int16_t *block,
176176 int stride, int qp, int dc)
177177 {
178178 const int qmul = svq3_dequant_coeff[qp];
@@ -210,7 +210,7 @@ void ff_svq3_add_idct_c(uint8_t *dst, DCTELEM *block, · 31 unmodified lines
210210 }
211211 }
212212
213−static inline int svq3_decode_block(GetBitContext *gb, DCTELEM *block,
213+static inline int svq3_decode_block(GetBitContext *gb, int16_t *block,
214214 int index, const int type)
215215 {
216216 static const uint8_t *const scan_patterns[4] =
libavcodec/vc1.h+1−1
@@ -385,7 +385,7 @@ typedef struct VC1Context{ · 384 unmodified lines
385385 int bi_type;
386386 int x8_type;
387387
388− DCTELEM (*block)[6][64];
388+ int16_t (*block)[6][64];
389389 int n_allocated_blks, cur_blk_idx, left_blk_idx, topleft_blk_idx, top_blk_idx;
390390 uint32_t *cbp_base, *cbp;
391391 uint8_t *is_intra_base, *is_intra;
libavcodec/vc1dec.c+5−5
@@ -2538,7 +2538,7 @@ static void vc1_decode_ac_coeff(VC1Context *v, int *last, int *skip, · 2537 unmodified lines
25382538 * @param coded are AC coeffs present or not
25392539 * @param codingset set of VLC to decode data
25402540 */
2541−static int vc1_decode_i_block(VC1Context *v, DCTELEM block[64], int n,
2541+static int vc1_decode_i_block(VC1Context *v, int16_t block[64], int n,
25422542 int coded, int codingset)
25432543 {
25442544 GetBitContext *gb = &v->s.gb;
@@ -2701,7 +2701,7 @@ not_coded: · 156 unmodified lines
27012701 * @param codingset set of VLC to decode data
27022702 * @param mquant quantizer value for this macroblock
27032703 */
2704−static int vc1_decode_i_block_adv(VC1Context *v, DCTELEM block[64], int n,
2704+static int vc1_decode_i_block_adv(VC1Context *v, int16_t block[64], int n,
27052705 int coded, int codingset, int mquant)
27062706 {
27072707 GetBitContext *gb = &v->s.gb;
@@ -2913,7 +2913,7 @@ static int vc1_decode_i_block_adv(VC1Context *v, DCTELEM block[64], int n, · 205 unmodified lines
29132913 * @param mquant block quantizer
29142914 * @param codingset set of VLC to decode data
29152915 */
2916−static int vc1_decode_intra_block(VC1Context *v, DCTELEM block[64], int n,
2916+static int vc1_decode_intra_block(VC1Context *v, int16_t block[64], int n,
29172917 int coded, int mquant, int codingset)
29182918 {
29192919 GetBitContext *gb = &v->s.gb;
@@ -3123,7 +3123,7 @@ static int vc1_decode_intra_block(VC1Context *v, DCTELEM block[64], int n, · 203 unmodified lines
31233123
31243124 /** Decode P block
31253125 */
3126−static int vc1_decode_p_block(VC1Context *v, DCTELEM block[64], int n,
3126+static int vc1_decode_p_block(VC1Context *v, int16_t block[64], int n,
31273127 int mquant, int ttmb, int first_block,
31283128 uint8_t *dst, int linesize, int skip_block,
31293129 int *ttmb_out)
@@ -4505,7 +4505,7 @@ static void vc1_decode_i_blocks_adv(VC1Context *v) · 1375 unmodified lines
45054505 s->mb_x = 0;
45064506 ff_init_block_index(s);
45074507 for (;s->mb_x < s->mb_width; s->mb_x++) {
4508− DCTELEM (*block)[64] = v->block[v->cur_blk_idx];
4508+ int16_t (*block)[64] = v->block[v->cur_blk_idx];
45094509 ff_update_block_index(s);
45104510 s->dsp.clear_blocks(block[0]);
45114511 mb_pos = s->mb_x + s->mb_y * s->mb_stride;
libavcodec/vc1dsp.c+14−14
@@ -79,7 +79,7 @@ static void vc1_h_overlap_c(uint8_t* src, int stride) · 78 unmodified lines
7979 }
8080 }
8181
82−static void vc1_v_s_overlap_c(DCTELEM *top, DCTELEM *bottom)
82+static void vc1_v_s_overlap_c(int16_t *top, int16_t *bottom)
8383 {
8484 int i;
8585 int a, b, c, d;
@@ -105,7 +105,7 @@ static void vc1_v_s_overlap_c(DCTELEM *top, DCTELEM *bottom) · 19 unmodified lines
105105 }
106106 }
107107
108−static void vc1_h_s_overlap_c(DCTELEM *left, DCTELEM *right)
108+static void vc1_h_s_overlap_c(int16_t *left, int16_t *right)
109109 {
110110 int i;
111111 int a, b, c, d;
@@ -229,7 +229,7 @@ static void vc1_h_loop_filter16_c(uint8_t *src, int stride, int pq) · 117 unmodified lines
229229
230230 /** Do inverse transform on 8x8 block
231231 */
232−static void vc1_inv_trans_8x8_dc_c(uint8_t *dest, int linesize, DCTELEM *block)
232+static void vc1_inv_trans_8x8_dc_c(uint8_t *dest, int linesize, int16_t *block)
233233 {
234234 int i;
235235 int dc = block[0];
@@ -248,11 +248,11 @@ static void vc1_inv_trans_8x8_dc_c(uint8_t *dest, int linesize, DCTELEM *block) · 12 unmodified lines
248248 }
249249 }
250250
251−static void vc1_inv_trans_8x8_c(DCTELEM block[64])
251+static void vc1_inv_trans_8x8_c(int16_t block[64])
252252 {
253253 int i;
254254 register int t1,t2,t3,t4,t5,t6,t7,t8;
255− DCTELEM *src, *dst, temp[64];
255+ int16_t *src, *dst, temp[64];
256256
257257 src = block;
258258 dst = temp;
@@ -319,7 +319,7 @@ static void vc1_inv_trans_8x8_c(DCTELEM block[64]) · 60 unmodified lines
319319
320320 /** Do inverse transform on 8x4 part of block
321321 */
322−static void vc1_inv_trans_8x4_dc_c(uint8_t *dest, int linesize, DCTELEM *block)
322+static void vc1_inv_trans_8x4_dc_c(uint8_t *dest, int linesize, int16_t *block)
323323 {
324324 int i;
325325 int dc = block[0];
@@ -338,11 +338,11 @@ static void vc1_inv_trans_8x4_dc_c(uint8_t *dest, int linesize, DCTELEM *block) · 12 unmodified lines
338338 }
339339 }
340340
341−static void vc1_inv_trans_8x4_c(uint8_t *dest, int linesize, DCTELEM *block)
341+static void vc1_inv_trans_8x4_c(uint8_t *dest, int linesize, int16_t *block)
342342 {
343343 int i;
344344 register int t1,t2,t3,t4,t5,t6,t7,t8;
345− DCTELEM *src, *dst;
345+ int16_t *src, *dst;
346346
347347 src = block;
348348 dst = block;
@@ -394,7 +394,7 @@ static void vc1_inv_trans_8x4_c(uint8_t *dest, int linesize, DCTELEM *block) · 45 unmodified lines
394394
395395 /** Do inverse transform on 4x8 parts of block
396396 */
397−static void vc1_inv_trans_4x8_dc_c(uint8_t *dest, int linesize, DCTELEM *block)
397+static void vc1_inv_trans_4x8_dc_c(uint8_t *dest, int linesize, int16_t *block)
398398 {
399399 int i;
400400 int dc = block[0];
@@ -409,11 +409,11 @@ static void vc1_inv_trans_4x8_dc_c(uint8_t *dest, int linesize, DCTELEM *block) · 8 unmodified lines
409409 }
410410 }
411411
412−static void vc1_inv_trans_4x8_c(uint8_t *dest, int linesize, DCTELEM *block)
412+static void vc1_inv_trans_4x8_c(uint8_t *dest, int linesize, int16_t *block)
413413 {
414414 int i;
415415 register int t1,t2,t3,t4,t5,t6,t7,t8;
416− DCTELEM *src, *dst;
416+ int16_t *src, *dst;
417417
418418 src = block;
419419 dst = block;
@@ -465,7 +465,7 @@ static void vc1_inv_trans_4x8_c(uint8_t *dest, int linesize, DCTELEM *block) · 45 unmodified lines
465465
466466 /** Do inverse transform on 4x4 part of block
467467 */
468−static void vc1_inv_trans_4x4_dc_c(uint8_t *dest, int linesize, DCTELEM *block)
468+static void vc1_inv_trans_4x4_dc_c(uint8_t *dest, int linesize, int16_t *block)
469469 {
470470 int i;
471471 int dc = block[0];
@@ -480,11 +480,11 @@ static void vc1_inv_trans_4x4_dc_c(uint8_t *dest, int linesize, DCTELEM *block) · 8 unmodified lines
480480 }
481481 }
482482
483−static void vc1_inv_trans_4x4_c(uint8_t *dest, int linesize, DCTELEM *block)
483+static void vc1_inv_trans_4x4_c(uint8_t *dest, int linesize, int16_t *block)
484484 {
485485 int i;
486486 register int t1,t2,t3,t4;
487− DCTELEM *src, *dst;
487+ int16_t *src, *dst;
488488
489489 src = block;
490490 dst = block;
libavcodec/vc1dsp.h+10−10
@@ -32,18 +32,18 @@ · 31 unmodified lines
3232
3333 typedef struct VC1DSPContext {
3434 /* vc1 functions */
35− void (*vc1_inv_trans_8x8)(DCTELEM *b);
36− void (*vc1_inv_trans_8x4)(uint8_t *dest, int line_size, DCTELEM *block);
37− void (*vc1_inv_trans_4x8)(uint8_t *dest, int line_size, DCTELEM *block);
38− void (*vc1_inv_trans_4x4)(uint8_t *dest, int line_size, DCTELEM *block);
39− void (*vc1_inv_trans_8x8_dc)(uint8_t *dest, int line_size, DCTELEM *block);
40− void (*vc1_inv_trans_8x4_dc)(uint8_t *dest, int line_size, DCTELEM *block);
41− void (*vc1_inv_trans_4x8_dc)(uint8_t *dest, int line_size, DCTELEM *block);
42− void (*vc1_inv_trans_4x4_dc)(uint8_t *dest, int line_size, DCTELEM *block);
35+ void (*vc1_inv_trans_8x8)(int16_t *b);
36+ void (*vc1_inv_trans_8x4)(uint8_t *dest, int line_size, int16_t *block);
37+ void (*vc1_inv_trans_4x8)(uint8_t *dest, int line_size, int16_t *block);
38+ void (*vc1_inv_trans_4x4)(uint8_t *dest, int line_size, int16_t *block);
39+ void (*vc1_inv_trans_8x8_dc)(uint8_t *dest, int line_size, int16_t *block);
40+ void (*vc1_inv_trans_8x4_dc)(uint8_t *dest, int line_size, int16_t *block);
41+ void (*vc1_inv_trans_4x8_dc)(uint8_t *dest, int line_size, int16_t *block);
42+ void (*vc1_inv_trans_4x4_dc)(uint8_t *dest, int line_size, int16_t *block);
4343 void (*vc1_v_overlap)(uint8_t *src, int stride);
4444 void (*vc1_h_overlap)(uint8_t *src, int stride);
45− void (*vc1_v_s_overlap)(DCTELEM *top, DCTELEM *bottom);
46− void (*vc1_h_s_overlap)(DCTELEM *left, DCTELEM *right);
45+ void (*vc1_v_s_overlap)(int16_t *top, int16_t *bottom);
46+ void (*vc1_h_s_overlap)(int16_t *left, int16_t *right);
4747 void (*vc1_v_loop_filter4)(uint8_t *src, int stride, int pq);
4848 void (*vc1_h_loop_filter4)(uint8_t *src, int stride, int pq);
4949 void (*vc1_v_loop_filter8)(uint8_t *src, int stride, int pq);
libavcodec/vp3.c+4−4
@@ -138,7 +138,7 @@ typedef struct Vp3DecodeContext { · 137 unmodified lines
138138 DSPContext dsp;
139139 VideoDSPContext vdsp;
140140 VP3DSPContext vp3dsp;
141− DECLARE_ALIGNED(16, DCTELEM, block)[64];
141+ DECLARE_ALIGNED(16, int16_t, block)[64];
142142 int flipped_image;
143143 int last_slice_end;
144144 int skip_loop_filter;
@@ -920,7 +920,7 @@ static int unpack_vlcs(Vp3DecodeContext *s, GetBitContext *gb, · 775 unmodified lines
920920 int i, j = 0;
921921 int token;
922922 int zero_run = 0;
923− DCTELEM coeff = 0;
923+ int16_t coeff = 0;
924924 int bits_to_get;
925925 int blocks_ended;
926926 int coeff_i = 0;
@@ -1350,7 +1350,7 @@ static void apply_loop_filter(Vp3DecodeContext *s, int plane, int ystart, int ye · 423 unmodified lines
13501350 * for the next block in coding order
13511351 */
13521352 static inline int vp3_dequant(Vp3DecodeContext *s, Vp3Fragment *frag,
1353− int plane, int inter, DCTELEM block[64])
1353+ int plane, int inter, int16_t block[64])
13541354 {
13551355 int16_t *dequantizer = s->qmat[frag->qpi][inter][plane];
13561356 uint8_t *perm = s->scantable.permutated;
@@ -1459,7 +1459,7 @@ static void await_reference_row(Vp3DecodeContext *s, Vp3Fragment *fragment, int · 102 unmodified lines
14591459 static void render_slice(Vp3DecodeContext *s, int slice)
14601460 {
14611461 int x, y, i, j, fragment;
1462− DCTELEM *block = s->block;
1462+ int16_t *block = s->block;
14631463 int motion_x = 0xdeadbeef, motion_y = 0xdeadbeef;
14641464 int motion_halfpel_index;
14651465 uint8_t *motion_source;
libavcodec/vp3dsp.c+8−3
@@ -213,18 +213,23 @@ static av_always_inline void idct(uint8_t *dst, int stride, int16_t *input, int · 212 unmodified lines
213213 }
214214 }
215215
216−static void vp3_idct_put_c(uint8_t *dest/*align 8*/, int line_size, DCTELEM *block/*align 16*/){
216+static void vp3_idct_put_c(uint8_t *dest/*align 8*/, int line_size,
217+ int16_t *block/*align 16*/)
218+{
217219 idct(dest, line_size, block, 1);
218220 memset(block, 0, sizeof(*block) * 64);
219221 }
220222
221−static void vp3_idct_add_c(uint8_t *dest/*align 8*/, int line_size, DCTELEM *block/*align 16*/){
223+static void vp3_idct_add_c(uint8_t *dest/*align 8*/, int line_size,
224+ int16_t *block/*align 16*/)
225+{
222226 idct(dest, line_size, block, 2);
223227 memset(block, 0, sizeof(*block) * 64);
224228 }
225229
226230 static void vp3_idct_dc_add_c(uint8_t *dest/*align 8*/, int line_size,
227− DCTELEM *block/*align 16*/){
231+ int16_t *block/*align 16*/)
232+{
228233 int i, dc = (block[0] + 15) >> 5;
229234
230235 for(i = 0; i < 8; i++){
libavcodec/vp3dsp.h+3−4
@@ -21,7 +21,6 @@ · 20 unmodified lines
2121
2222 #include <stddef.h>
2323 #include <stdint.h>
24−#include "dsputil.h"
2524
2625 typedef struct VP3DSPContext {
2726 /**
@@ -39,9 +38,9 @@ typedef struct VP3DSPContext { · 11 unmodified lines
3938 const uint8_t *b,
4039 ptrdiff_t stride, int h);
4140
42− void (*idct_put)(uint8_t *dest, int line_size, DCTELEM *block);
43− void (*idct_add)(uint8_t *dest, int line_size, DCTELEM *block);
44− void (*idct_dc_add)(uint8_t *dest, int line_size, DCTELEM *block);
41+ void (*idct_put)(uint8_t *dest, int line_size, int16_t *block);
42+ void (*idct_add)(uint8_t *dest, int line_size, int16_t *block);
43+ void (*idct_dc_add)(uint8_t *dest, int line_size, int16_t *block);
4544 void (*v_loop_filter)(uint8_t *src, int stride, int *bounding_values);
4645 void (*h_loop_filter)(uint8_t *src, int stride, int *bounding_values);
4746
libavcodec/vp56.h+3−3
@@ -67,7 +67,7 @@ typedef struct VP56RangeCoder { · 66 unmodified lines
6767 typedef struct VP56RefDc {
6868 uint8_t not_null_dc;
6969 VP56Frame ref_frame;
70− DCTELEM dc_coeff;
70+ int16_t dc_coeff;
7171 } VP56RefDc;
7272
7373 typedef struct VP56Macroblock {
@@ -124,12 +124,12 @@ struct vp56_context { · 50 unmodified lines
124124 VP56RefDc *above_blocks;
125125 VP56RefDc left_block[4];
126126 int above_block_idx[6];
127− DCTELEM prev_dc[3][3]; /* [plan][ref_frame] */
127+ int16_t prev_dc[3][3]; /* [plan][ref_frame] */
128128
129129 /* blocks / macroblock */
130130 VP56mb mb_type;
131131 VP56Macroblock *macroblocks;
132− DECLARE_ALIGNED(16, DCTELEM, block_coeff)[6][64];
132+ DECLARE_ALIGNED(16, int16_t, block_coeff)[6][64];
133133
134134 /* motion vectors */
135135 VP56mv mv[6]; /* vectors for each block in MB */
libavcodec/vp8.c+2−2
@@ -760,7 +760,7 @@ void decode_mb_mode(VP8Context *s, VP8Macroblock *mb, int mb_x, int mb_y, · 759 unmodified lines
760760 * @return 0 if no coeffs were decoded
761761 * otherwise, the index of the last coeff decoded plus one
762762 */
763−static int decode_block_coeffs_internal(VP56RangeCoder *r, DCTELEM block[16],
763+static int decode_block_coeffs_internal(VP56RangeCoder *r, int16_t block[16],
764764 uint8_t probs[16][3][NUM_DCT_TOKENS-1],
765765 int i, uint8_t *token_prob, int16_t qmul[2])
766766 {
@@ -828,7 +828,7 @@ skip_eob: · 61 unmodified lines
828828 * otherwise, the index of the last coeff decoded plus one
829829 */
830830 static av_always_inline
831−int decode_block_coeffs(VP56RangeCoder *c, DCTELEM block[16],
831+int decode_block_coeffs(VP56RangeCoder *c, int16_t block[16],
832832 uint8_t probs[16][3][NUM_DCT_TOKENS-1],
833833 int i, int zero_nhood, int16_t qmul[2])
834834 {
libavcodec/vp8.h+2−2
@@ -94,8 +94,8 @@ typedef struct VP8Macroblock { · 93 unmodified lines
9494 } VP8Macroblock;
9595
9696 typedef struct VP8ThreadData {
97− DECLARE_ALIGNED(16, DCTELEM, block)[6][4][16];
98− DECLARE_ALIGNED(16, DCTELEM, block_dc)[16];
97+ DECLARE_ALIGNED(16, int16_t, block)[6][4][16];
98+ DECLARE_ALIGNED(16, int16_t, block_dc)[16];
9999 /**
100100 * This is the index plus one of the last non-zero coeff
101101 * for each of the blocks in the current macroblock.
libavcodec/vp8dsp.c+7−7
@@ -29,7 +29,7 @@ · 28 unmodified lines
2929 #include "libavutil/common.h"
3030
3131 // TODO: Maybe add dequant
32−static void vp8_luma_dc_wht_c(DCTELEM block[4][4][16], DCTELEM dc[16])
32+static void vp8_luma_dc_wht_c(int16_t block[4][4][16], int16_t dc[16])
3333 {
3434 int i, t0, t1, t2, t3;
3535
@@ -62,7 +62,7 @@ static void vp8_luma_dc_wht_c(DCTELEM block[4][4][16], DCTELEM dc[16]) · 26 unmodified lines
6262 }
6363 }
6464
65−static void vp8_luma_dc_wht_dc_c(DCTELEM block[4][4][16], DCTELEM dc[16])
65+static void vp8_luma_dc_wht_dc_c(int16_t block[4][4][16], int16_t dc[16])
6666 {
6767 int i, val = (dc[0] + 3) >> 3;
6868 dc[0] = 0;
@@ -78,10 +78,10 @@ static void vp8_luma_dc_wht_dc_c(DCTELEM block[4][4][16], DCTELEM dc[16]) · 9 unmodified lines
7878 #define MUL_20091(a) ((((a)*20091) >> 16) + (a))
7979 #define MUL_35468(a) (((a)*35468) >> 16)
8080
81−static void vp8_idct_add_c(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride)
81+static void vp8_idct_add_c(uint8_t *dst, int16_t block[16], ptrdiff_t stride)
8282 {
8383 int i, t0, t1, t2, t3;
84− DCTELEM tmp[16];
84+ int16_t tmp[16];
8585
8686 for (i = 0; i < 4; i++) {
8787 t0 = block[0*4+i] + block[2*4+i];
@@ -113,7 +113,7 @@ static void vp8_idct_add_c(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride) · 25 unmodified lines
113113 }
114114 }
115115
116−static void vp8_idct_dc_add_c(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride)
116+static void vp8_idct_dc_add_c(uint8_t *dst, int16_t block[16], ptrdiff_t stride)
117117 {
118118 int i, dc = (block[0] + 4) >> 3;
119119 block[0] = 0;
@@ -127,7 +127,7 @@ static void vp8_idct_dc_add_c(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride) · 7 unmodified lines
127127 }
128128 }
129129
130−static void vp8_idct_dc_add4uv_c(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride)
130+static void vp8_idct_dc_add4uv_c(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride)
131131 {
132132 vp8_idct_dc_add_c(dst+stride*0+0, block[0], stride);
133133 vp8_idct_dc_add_c(dst+stride*0+4, block[1], stride);
@@ -135,7 +135,7 @@ static void vp8_idct_dc_add4uv_c(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t s · 1 unmodified line
135135 vp8_idct_dc_add_c(dst+stride*4+4, block[3], stride);
136136 }
137137
138−static void vp8_idct_dc_add4y_c(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride)
138+static void vp8_idct_dc_add4y_c(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride)
139139 {
140140 vp8_idct_dc_add_c(dst+ 0, block[0], stride);
141141 vp8_idct_dc_add_c(dst+ 4, block[1], stride);
libavcodec/vp8dsp.h+8−7
@@ -27,20 +27,21 @@ · 26 unmodified lines
2727 #ifndef AVCODEC_VP8DSP_H
2828 #define AVCODEC_VP8DSP_H
2929
30−#include "dsputil.h"
30+#include <stddef.h>
31+#include <stdint.h>
3132
3233 typedef void (*vp8_mc_func)(uint8_t *dst/*align 8*/, ptrdiff_t dstStride,
3334 uint8_t *src/*align 1*/, ptrdiff_t srcStride,
3435 int h, int x, int y);
3536
3637 typedef struct VP8DSPContext {
37− void (*vp8_luma_dc_wht)(DCTELEM block[4][4][16], DCTELEM dc[16]);
38− void (*vp8_luma_dc_wht_dc)(DCTELEM block[4][4][16], DCTELEM dc[16]);
39− void (*vp8_idct_add)(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
40− void (*vp8_idct_dc_add)(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride);
41− void (*vp8_idct_dc_add4y)(uint8_t *dst, DCTELEM block[4][16],
38+ void (*vp8_luma_dc_wht)(int16_t block[4][4][16], int16_t dc[16]);
39+ void (*vp8_luma_dc_wht_dc)(int16_t block[4][4][16], int16_t dc[16]);
40+ void (*vp8_idct_add)(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
41+ void (*vp8_idct_dc_add)(uint8_t *dst, int16_t block[16], ptrdiff_t stride);
42+ void (*vp8_idct_dc_add4y)(uint8_t *dst, int16_t block[4][16],
4243 ptrdiff_t stride);
43− void (*vp8_idct_dc_add4uv)(uint8_t *dst, DCTELEM block[4][16],
44+ void (*vp8_idct_dc_add4uv)(uint8_t *dst, int16_t block[4][16],
4445 ptrdiff_t stride);
4546
4647 // loop filter applied to edges between macroblocks
libavcodec/wmv2.c+2−2
@@ -48,7 +48,7 @@ av_cold void ff_wmv2_common_init(Wmv2Context * w){ · 47 unmodified lines
4848 s->dsp.idct = NULL;
4949 }
5050
51−static void wmv2_add_block(Wmv2Context *w, DCTELEM *block1, uint8_t *dst, int stride, int n){
51+static void wmv2_add_block(Wmv2Context *w, int16_t *block1, uint8_t *dst, int stride, int n){
5252 MpegEncContext * const s= &w->s;
5353
5454 if (s->block_last_index[n] >= 0) {
@@ -72,7 +72,7 @@ static void wmv2_add_block(Wmv2Context *w, DCTELEM *block1, uint8_t *dst, int st · 17 unmodified lines
7272 }
7373 }
7474
75−void ff_wmv2_add_mb(MpegEncContext *s, DCTELEM block1[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr){
75+void ff_wmv2_add_mb(MpegEncContext *s, int16_t block1[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr){
7676 Wmv2Context * const w= (Wmv2Context*)s;
7777
7878 wmv2_add_block(w, block1[0], dest_y , s->linesize, 0);
libavcodec/wmv2.h+1−1
@@ -52,7 +52,7 @@ typedef struct Wmv2Context{ · 51 unmodified lines
5252 int hshift;
5353
5454 ScanTable abt_scantable[2];
55− DECLARE_ALIGNED(16, DCTELEM, abt_block2)[6][64];
55+ DECLARE_ALIGNED(16, int16_t, abt_block2)[6][64];
5656 }Wmv2Context;
5757
5858 void ff_wmv2_common_init(Wmv2Context * w);
libavcodec/wmv2dec.c+2−2
@@ -291,7 +291,7 @@ static int16_t *wmv2_pred_motion(Wmv2Context *w, int *px, int *py){ · 290 unmodified lines
291291 return mot_val;
292292 }
293293
294−static inline int wmv2_decode_inter_block(Wmv2Context *w, DCTELEM *block, int n, int cbp){
294+static inline int wmv2_decode_inter_block(Wmv2Context *w, int16_t *block, int n, int cbp){
295295 MpegEncContext * const s= &w->s;
296296 static const int sub_cbp_table[3]= {2,3,1};
297297 int sub_cbp;
@@ -331,7 +331,7 @@ static inline int wmv2_decode_inter_block(Wmv2Context *w, DCTELEM *block, int n, · 33 unmodified lines
331331 }
332332
333333
334−int ff_wmv2_decode_mb(MpegEncContext *s, DCTELEM block[6][64])
334+int ff_wmv2_decode_mb(MpegEncContext *s, int16_t block[6][64])
335335 {
336336 Wmv2Context * const w= (Wmv2Context*)s;
337337 int cbp, code, i;
libavcodec/wmv2dsp.c+3−2
@@ -19,6 +19,7 @@ · 18 unmodified lines
1919 #include "libavutil/attributes.h"
2020 #include "libavutil/common.h"
2121 #include "avcodec.h"
22+#include "dsputil.h"
2223 #include "wmv2dsp.h"
2324
2425 #define W0 2048
@@ -91,7 +92,7 @@ static void wmv2_idct_col(short * b) · 66 unmodified lines
9192 b[8 * 7] = (a0 + a2 - a1 - a5 + (1 << 13)) >> 14;
9293 }
9394
94−static void wmv2_idct_add_c(uint8_t *dest, int line_size, DCTELEM *block)
95+static void wmv2_idct_add_c(uint8_t *dest, int line_size, int16_t *block)
9596 {
9697 int i;
9798
@@ -114,7 +115,7 @@ static void wmv2_idct_add_c(uint8_t *dest, int line_size, DCTELEM *block) · 16 unmodified lines
114115 }
115116 }
116117
117−static void wmv2_idct_put_c(uint8_t *dest, int line_size, DCTELEM *block)
118+static void wmv2_idct_put_c(uint8_t *dest, int line_size, int16_t *block)
118119 {
119120 int i;
120121
libavcodec/wmv2dsp.h+2−3
@@ -20,11 +20,10 @@ · 19 unmodified lines
2020 #define AVCODEC_WMV2DSP_H
2121
2222 #include <stdint.h>
23−#include "dsputil.h"
2423
2524 typedef struct WMV2DSPContext {
26− void (*idct_add)(uint8_t *dest, int line_size, DCTELEM *block);
27− void (*idct_put)(uint8_t *dest, int line_size, DCTELEM *block);
25+ void (*idct_add)(uint8_t *dest, int line_size, int16_t *block);
26+ void (*idct_put)(uint8_t *dest, int line_size, int16_t *block);
2827
2928 int idct_perm;
3029 } WMV2DSPContext;
libavcodec/wmv2enc.c+1−1
@@ -148,7 +148,7 @@ int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number) · 147 unmodified lines
148148 * useless M$ crap features. It is duplicated here in case someone wants
149149 * to add support for these crap features. */
150150 void ff_wmv2_encode_mb(MpegEncContext * s,
151− DCTELEM block[6][64],
151+ int16_t block[6][64],
152152 int motion_x, int motion_y)
153153 {
154154 Wmv2Context * const w= (Wmv2Context*)s;
libavcodec/x86/dnxhdenc.c+1−1
@@ -26,7 +26,7 @@ · 25 unmodified lines
2626
2727 #if HAVE_SSE2_INLINE
2828
29−static void get_pixels_8x4_sym_sse2(DCTELEM *block, const uint8_t *pixels, int line_size)
29+static void get_pixels_8x4_sym_sse2(int16_t *block, const uint8_t *pixels, int line_size)
3030 {
3131 __asm__ volatile(
3232 "pxor %%xmm5, %%xmm5 \n\t"
libavcodec/x86/dsputil_mmx.c+8−8
@@ -225,10 +225,10 @@ DECLARE_ALIGNED(16, const double, ff_pd_2)[2] = { 2.0, 2.0 }; · 224 unmodified lines
225225 /***********************************/
226226 /* standard MMX */
227227
228−void ff_put_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels,
228+void ff_put_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels,
229229 int line_size)
230230 {
231− const DCTELEM *p;
231+ const int16_t *p;
232232 uint8_t *pix;
233233
234234 /* read the pixels */
@@ -300,7 +300,7 @@ void ff_put_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, · 65 unmodified lines
300300 "movq %%mm3, (%0, %3, 2) \n\t" \
301301 "movq %%mm4, (%0, %1) \n\t"
302302
303−void ff_put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels,
303+void ff_put_signed_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels,
304304 int line_size)
305305 {
306306 x86_reg line_skip = line_size;
@@ -317,10 +317,10 @@ void ff_put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, · 10 unmodified lines
317317 : "memory");
318318 }
319319
320−void ff_add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels,
320+void ff_add_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels,
321321 int line_size)
322322 {
323− const DCTELEM *p;
323+ const int16_t *p;
324324 uint8_t *pix;
325325 int i;
326326
@@ -422,7 +422,7 @@ static void put_pixels16_mmx(uint8_t *block, const uint8_t *pixels, · 95 unmodified lines
422422 }
423423
424424 #define CLEAR_BLOCKS(name, n) \
425−static void name(DCTELEM *blocks) \
425+static void name(int16_t *blocks) \
426426 { \
427427 __asm__ volatile ( \
428428 "pxor %%mm7, %%mm7 \n\t" \
@@ -442,7 +442,7 @@ static void name(DCTELEM *blocks) \ · 13 unmodified lines
442442 CLEAR_BLOCKS(clear_blocks_mmx, 6)
443443 CLEAR_BLOCKS(clear_block_mmx, 1)
444444
445−static void clear_block_sse(DCTELEM *block)
445+static void clear_block_sse(int16_t *block)
446446 {
447447 __asm__ volatile (
448448 "xorps %%xmm0, %%xmm0 \n"
@@ -459,7 +459,7 @@ static void clear_block_sse(DCTELEM *block) · 10 unmodified lines
459459 );
460460 }
461461
462−static void clear_blocks_sse(DCTELEM *blocks)
462+static void clear_blocks_sse(int16_t *blocks)
463463 {
464464 __asm__ volatile (
465465 "xorps %%xmm0, %%xmm0 \n"
libavcodec/x86/dsputil_mmx.h+3−3
@@ -83,9 +83,9 @@ extern const double ff_pd_2[2]; · 82 unmodified lines
8383 void ff_dsputilenc_init_mmx(DSPContext* c, AVCodecContext *avctx);
8484 void ff_dsputil_init_pix_mmx(DSPContext* c, AVCodecContext *avctx);
8585
86−void ff_add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size);
87−void ff_put_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size);
88−void ff_put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size);
86+void ff_add_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels, int line_size);
87+void ff_put_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels, int line_size);
88+void ff_put_signed_pixels_clamped_mmx(const int16_t *block, uint8_t *pixels, int line_size);
8989
9090 void ff_put_cavs_qpel8_mc00_mmxext(uint8_t *dst, uint8_t *src, int stride);
9191 void ff_avg_cavs_qpel8_mc00_mmxext(uint8_t *dst, uint8_t *src, int stride);
libavcodec/x86/dsputilenc.asm+2−2
@@ -335,7 +335,7 @@ cglobal sse16, 5, 5, 8 · 334 unmodified lines
335335 RET
336336
337337 INIT_MMX mmx
338−; get_pixels_mmx(DCTELEM *block, const uint8_t *pixels, int line_size)
338+; get_pixels_mmx(int16_t *block, const uint8_t *pixels, int line_size)
339339 cglobal get_pixels, 3,4
340340 movsxdifnidn r2, r2d
341341 add r0, 128
@@ -392,7 +392,7 @@ cglobal get_pixels, 3, 4 · 50 unmodified lines
392392 RET
393393
394394 INIT_MMX mmx
395−; diff_pixels_mmx(DCTELEM *block, const uint8_t *s1, const unint8_t *s2, stride)
395+; diff_pixels_mmx(int16_t *block, const uint8_t *s1, const unint8_t *s2, stride)
396396 cglobal diff_pixels, 4,5
397397 movsxdifnidn r3, r3d
398398 pxor m7, m7
libavcodec/x86/dsputilenc_mmx.c+4−4
@@ -30,9 +30,9 @@ · 29 unmodified lines
3030 #include "libavcodec/mathops.h"
3131 #include "dsputil_mmx.h"
3232
33−void ff_get_pixels_mmx(DCTELEM *block, const uint8_t *pixels, int line_size);
34−void ff_get_pixels_sse2(DCTELEM *block, const uint8_t *pixels, int line_size);
35−void ff_diff_pixels_mmx(DCTELEM *block, const uint8_t *s1, const uint8_t *s2, int stride);
33+void ff_get_pixels_mmx(int16_t *block, const uint8_t *pixels, int line_size);
34+void ff_get_pixels_sse2(int16_t *block, const uint8_t *pixels, int line_size);
35+void ff_diff_pixels_mmx(int16_t *block, const uint8_t *s1, const uint8_t *s2, int stride);
3636 int ff_pix_sum16_mmx(uint8_t * pix, int line_size);
3737 int ff_pix_norm1_mmx(uint8_t *pix, int line_size);
3838
@@ -797,7 +797,7 @@ static void sub_hfyu_median_prediction_mmxext(uint8_t *dst, const uint8_t *src1, · 758 unmodified lines
797797 HSUM(%%xmm0, %%xmm1, %0)
798798
799799 #define DCT_SAD_FUNC(cpu) \
800−static int sum_abs_dctelem_##cpu(DCTELEM *block){\
800+static int sum_abs_dctelem_##cpu(int16_t *block){\
801801 int sum;\
802802 __asm__ volatile(\
803803 DCT_SAD\
libavcodec/x86/h264_idct.asm+13−13
@@ -302,7 +302,7 @@ cglobal h264_idct8_dc_add_8, 3, 3, 0 · 301 unmodified lines
302302
303303 INIT_MMX mmx
304304 ; ff_h264_idct_add16_mmx(uint8_t *dst, const int *block_offset,
305−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
305+; int16_t *block, int stride, const uint8_t nnzc[6*8])
306306 cglobal h264_idct_add16_8, 5, 7 + npicregs, 0, dst, block_offset, block, stride, nnzc, cntr, coeff, picreg
307307 xor r5, r5
308308 %ifdef PIC
@@ -324,7 +324,7 @@ cglobal h264_idct_add16_8, 5, 7 + npicregs, 0, dst, block_offset, block, stride, · 15 unmodified lines
324324 REP_RET
325325
326326 ; ff_h264_idct8_add4_mmx(uint8_t *dst, const int *block_offset,
327−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
327+; int16_t *block, int stride, const uint8_t nnzc[6*8])
328328 cglobal h264_idct8_add4_8, 5, 7 + npicregs, 0, dst, block_offset, block, stride, nnzc, cntr, coeff, picreg
329329 %assign pad 128+4-(stack_offset&7)
330330 SUB rsp, pad
@@ -357,7 +357,7 @@ cglobal h264_idct8_add4_8, 5, 7 + npicregs, 0, dst, block_offset, block, stride, · 26 unmodified lines
357357
358358 INIT_MMX mmxext
359359 ; ff_h264_idct_add16_mmxext(uint8_t *dst, const int *block_offset,
360−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
360+; int16_t *block, int stride, const uint8_t nnzc[6*8])
361361 cglobal h264_idct_add16_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
362362 xor r5, r5
363363 %ifdef PIC
@@ -402,7 +402,7 @@ cglobal h264_idct_add16_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride · 38 unmodified lines
402402
403403 INIT_MMX mmx
404404 ; ff_h264_idct_add16intra_mmx(uint8_t *dst, const int *block_offset,
405−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
405+; int16_t *block, int stride, const uint8_t nnzc[6*8])
406406 cglobal h264_idct_add16intra_8, 5, 7 + npicregs, 0, dst, block_offset, block, stride, nnzc, cntr, coeff, picreg
407407 xor r5, r5
408408 %ifdef PIC
@@ -426,7 +426,7 @@ cglobal h264_idct_add16intra_8, 5, 7 + npicregs, 0, dst, block_offset, block, st · 17 unmodified lines
426426
427427 INIT_MMX mmxext
428428 ; ff_h264_idct_add16intra_mmxext(uint8_t *dst, const int *block_offset,
429−; DCTELEM *block, int stride,
429+; int16_t *block, int stride,
430430 ; const uint8_t nnzc[6*8])
431431 cglobal h264_idct_add16intra_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
432432 xor r5, r5
@@ -469,7 +469,7 @@ cglobal h264_idct_add16intra_8, 5, 8 + npicregs, 0, dst1, block_offset, block, s · 36 unmodified lines
469469 REP_RET
470470
471471 ; ff_h264_idct8_add4_mmxext(uint8_t *dst, const int *block_offset,
472−; DCTELEM *block, int stride,
472+; int16_t *block, int stride,
473473 ; const uint8_t nnzc[6*8])
474474 cglobal h264_idct8_add4_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
475475 %assign pad 128+4-(stack_offset&7)
@@ -530,7 +530,7 @@ cglobal h264_idct8_add4_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride · 54 unmodified lines
530530
531531 INIT_XMM sse2
532532 ; ff_h264_idct8_add4_sse2(uint8_t *dst, const int *block_offset,
533−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
533+; int16_t *block, int stride, const uint8_t nnzc[6*8])
534534 cglobal h264_idct8_add4_8, 5, 8 + npicregs, 10, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
535535 xor r5, r5
536536 %ifdef PIC
@@ -605,7 +605,7 @@ h264_idct_add8_mmx_plane: · 68 unmodified lines
605605 rep ret
606606
607607 ; ff_h264_idct_add8_mmx(uint8_t **dest, const int *block_offset,
608−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
608+; int16_t *block, int stride, const uint8_t nnzc[6*8])
609609 cglobal h264_idct_add8_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
610610 mov r5, 16
611611 add r2, 512
@@ -669,7 +669,7 @@ h264_idct_add8_mmxext_plane: · 57 unmodified lines
669669
670670 INIT_MMX mmxext
671671 ; ff_h264_idct_add8_mmxext(uint8_t **dest, const int *block_offset,
672−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
672+; int16_t *block, int stride, const uint8_t nnzc[6*8])
673673 cglobal h264_idct_add8_8, 5, 8 + npicregs, 0, dst1, block_offset, block, stride, nnzc, cntr, coeff, dst2, picreg
674674 mov r5, 16
675675 add r2, 512
@@ -746,7 +746,7 @@ h264_add8x4_idct_sse2: · 70 unmodified lines
746746 %endmacro
747747
748748 ; ff_h264_idct_add16_sse2(uint8_t *dst, const int *block_offset,
749−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
749+; int16_t *block, int stride, const uint8_t nnzc[6*8])
750750 cglobal h264_idct_add16_8, 5, 5 + ARCH_X86_64, 8
751751 %if ARCH_X86_64
752752 mov r5, r0
@@ -793,7 +793,7 @@ cglobal h264_idct_add16_8, 5, 5 + ARCH_X86_64, 8 · 40 unmodified lines
793793 %endmacro
794794
795795 ; ff_h264_idct_add16intra_sse2(uint8_t *dst, const int *block_offset,
796−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
796+; int16_t *block, int stride, const uint8_t nnzc[6*8])
797797 cglobal h264_idct_add16intra_8, 5, 7 + ARCH_X86_64, 8
798798 %if ARCH_X86_64
799799 mov r7, r0
@@ -844,7 +844,7 @@ cglobal h264_idct_add16intra_8, 5, 7 + ARCH_X86_64, 8 · 44 unmodified lines
844844 %endmacro
845845
846846 ; ff_h264_idct_add8_sse2(uint8_t **dest, const int *block_offset,
847−; DCTELEM *block, int stride, const uint8_t nnzc[6*8])
847+; int16_t *block, int stride, const uint8_t nnzc[6*8])
848848 cglobal h264_idct_add8_8, 5, 7 + ARCH_X86_64, 8
849849 add r2, 512
850850 %if ARCH_X86_64
@@ -861,7 +861,7 @@ cglobal h264_idct_add8_8, 5, 7 + ARCH_X86_64, 8 · 10 unmodified lines
861861 add8_sse2_cycle 3, 0x64
862862 RET
863863
864−;void ff_h264_luma_dc_dequant_idct_mmx(DCTELEM *output, DCTELEM *input, int qmul)
864+;void ff_h264_luma_dc_dequant_idct_mmx(int16_t *output, int16_t *input, int qmul)
865865
866866 %macro WALSH4_1D 5
867867 SUMSUB_BADC w, %4, %3, %2, %1, %5
libavcodec/x86/h264_intrapred_init.c+1−0
@@ -20,6 +20,7 @@ · 19 unmodified lines
2020
2121 #include "libavutil/cpu.h"
2222 #include "libavutil/x86/cpu.h"
23+#include "libavcodec/avcodec.h"
2324 #include "libavcodec/h264pred.h"
2425
2526 #define PRED4x4(TYPE, DEPTH, OPT) \
libavcodec/x86/h264dsp_init.c+4−4
@@ -48,7 +48,7 @@ IDCT_ADD_FUNC(8, 10, avx) · 47 unmodified lines
4848 #define IDCT_ADD_REP_FUNC(NUM, REP, DEPTH, OPT) \
4949 void ff_h264_idct ## NUM ## _add ## REP ## _ ## DEPTH ## _ ## OPT \
5050 (uint8_t *dst, const int *block_offset, \
51− DCTELEM *block, int stride, const uint8_t nnzc[6 * 8]);
51+ int16_t *block, int stride, const uint8_t nnzc[6 * 8]);
5252
5353 IDCT_ADD_REP_FUNC(8, 4, 8, mmx)
5454 IDCT_ADD_REP_FUNC(8, 4, 8, mmxext)
@@ -70,7 +70,7 @@ IDCT_ADD_REP_FUNC(, 16intra, 10, avx) · 15 unmodified lines
7070 #define IDCT_ADD_REP_FUNC2(NUM, REP, DEPTH, OPT) \
7171 void ff_h264_idct ## NUM ## _add ## REP ## _ ## DEPTH ## _ ## OPT \
7272 (uint8_t **dst, const int *block_offset, \
73− DCTELEM *block, int stride, const uint8_t nnzc[6 * 8]);
73+ int16_t *block, int stride, const uint8_t nnzc[6 * 8]);
7474
7575 IDCT_ADD_REP_FUNC2(, 8, 8, mmx)
7676 IDCT_ADD_REP_FUNC2(, 8, 8, mmxext)
@@ -78,8 +78,8 @@ IDCT_ADD_REP_FUNC2(, 8, 8, sse2) · 1 unmodified line
7878 IDCT_ADD_REP_FUNC2(, 8, 10, sse2)
7979 IDCT_ADD_REP_FUNC2(, 8, 10, avx)
8080
81−void ff_h264_luma_dc_dequant_idct_mmx(DCTELEM *output, DCTELEM *input, int qmul);
82−void ff_h264_luma_dc_dequant_idct_sse2(DCTELEM *output, DCTELEM *input, int qmul);
81+void ff_h264_luma_dc_dequant_idct_mmx(int16_t *output, int16_t *input, int qmul);
82+void ff_h264_luma_dc_dequant_idct_sse2(int16_t *output, int16_t *input, int qmul);
8383
8484 /***********************************/
8585 /* deblocking */
libavcodec/x86/idct_mmx_xvid.c+4−4
@@ -531,25 +531,25 @@ __asm__ volatile( · 530 unmodified lines
531531 :: "r"(block), "r"(rounder_0), "r"(tab_i_04_xmm), "r"(tg_1_16));
532532 }
533533
534−void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, DCTELEM *block)
534+void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block)
535535 {
536536 ff_idct_xvid_mmx(block);
537537 ff_put_pixels_clamped_mmx(block, dest, line_size);
538538 }
539539
540−void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, DCTELEM *block)
540+void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block)
541541 {
542542 ff_idct_xvid_mmx(block);
543543 ff_add_pixels_clamped_mmx(block, dest, line_size);
544544 }
545545
546−void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, DCTELEM *block)
546+void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, int16_t *block)
547547 {
548548 ff_idct_xvid_mmxext(block);
549549 ff_put_pixels_clamped_mmx(block, dest, line_size);
550550 }
551551
552−void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, DCTELEM *block)
552+void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, int16_t *block)
553553 {
554554 ff_idct_xvid_mmxext(block);
555555 ff_add_pixels_clamped_mmx(block, dest, line_size);
libavcodec/x86/idct_xvid.h+4−6
@@ -28,15 +28,13 @@ · 27 unmodified lines
2828
2929 #include <stdint.h>
3030
31−#include "libavcodec/dsputil.h"
32−
3331 void ff_idct_xvid_mmx(short *block);
34−void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, DCTELEM *block);
35−void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, DCTELEM *block);
32+void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block);
33+void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block);
3634
3735 void ff_idct_xvid_mmxext(short *block);
38−void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, DCTELEM *block);
39−void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, DCTELEM *block);
36+void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, int16_t *block);
37+void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, int16_t *block);
4038
4139 void ff_idct_xvid_sse2(short *block);
4240 void ff_idct_xvid_sse2_put(uint8_t *dest, int line_size, short *block);
libavcodec/x86/mpegvideo.c+8−8
@@ -29,7 +29,7 @@ · 28 unmodified lines
2929 #if HAVE_INLINE_ASM
3030
3131 static void dct_unquantize_h263_intra_mmx(MpegEncContext *s,
32− DCTELEM *block, int n, int qscale)
32+ int16_t *block, int n, int qscale)
3333 {
3434 x86_reg level, qmul, qadd, nCoeffs;
3535
@@ -104,7 +104,7 @@ __asm__ volatile( · 68 unmodified lines
104104
105105
106106 static void dct_unquantize_h263_inter_mmx(MpegEncContext *s,
107− DCTELEM *block, int n, int qscale)
107+ int16_t *block, int n, int qscale)
108108 {
109109 x86_reg qmul, qadd, nCoeffs;
110110
@@ -195,7 +195,7 @@ __asm__ volatile( · 84 unmodified lines
195195 high3 += tlow1
196196 */
197197 static void dct_unquantize_mpeg1_intra_mmx(MpegEncContext *s,
198− DCTELEM *block, int n, int qscale)
198+ int16_t *block, int n, int qscale)
199199 {
200200 x86_reg nCoeffs;
201201 const uint16_t *quant_matrix;
@@ -264,7 +264,7 @@ __asm__ volatile( · 62 unmodified lines
264264 }
265265
266266 static void dct_unquantize_mpeg1_inter_mmx(MpegEncContext *s,
267− DCTELEM *block, int n, int qscale)
267+ int16_t *block, int n, int qscale)
268268 {
269269 x86_reg nCoeffs;
270270 const uint16_t *quant_matrix;
@@ -330,7 +330,7 @@ __asm__ volatile( · 59 unmodified lines
330330 }
331331
332332 static void dct_unquantize_mpeg2_intra_mmx(MpegEncContext *s,
333− DCTELEM *block, int n, int qscale)
333+ int16_t *block, int n, int qscale)
334334 {
335335 x86_reg nCoeffs;
336336 const uint16_t *quant_matrix;
@@ -396,7 +396,7 @@ __asm__ volatile( · 59 unmodified lines
396396 }
397397
398398 static void dct_unquantize_mpeg2_inter_mmx(MpegEncContext *s,
399− DCTELEM *block, int n, int qscale)
399+ int16_t *block, int n, int qscale)
400400 {
401401 x86_reg nCoeffs;
402402 const uint16_t *quant_matrix;
@@ -472,7 +472,7 @@ __asm__ volatile( · 69 unmodified lines
472472 );
473473 }
474474
475−static void denoise_dct_mmx(MpegEncContext *s, DCTELEM *block){
475+static void denoise_dct_mmx(MpegEncContext *s, int16_t *block){
476476 const int intra= s->mb_intra;
477477 int *sum= s->dct_error_sum[intra];
478478 uint16_t *offset= s->dct_offset[intra];
@@ -526,7 +526,7 @@ static void denoise_dct_mmx(MpegEncContext *s, DCTELEM *block){ · 47 unmodified lines
526526 );
527527 }
528528
529−static void denoise_dct_sse2(MpegEncContext *s, DCTELEM *block){
529+static void denoise_dct_sse2(MpegEncContext *s, int16_t *block){
530530 const int intra= s->mb_intra;
531531 int *sum= s->dct_error_sum[intra];
532532 uint16_t *offset= s->dct_offset[intra];
libavcodec/x86/mpegvideoenc_template.c+1−1
@@ -92,7 +92,7 @@ · 91 unmodified lines
9292 #endif
9393
9494 static int RENAME(dct_quantize)(MpegEncContext *s,
95− DCTELEM *block, int n,
95+ int16_t *block, int n,
9696 int qscale, int *overflow)
9797 {
9898 x86_reg last_non_zero_p1;
libavcodec/x86/proresdsp.asm+1−1
@@ -327,7 +327,7 @@ section .text align=16 · 326 unmodified lines
327327 %endmacro
328328
329329 ; void prores_idct_put_10_<opt>(uint8_t *pixels, int stride,
330−; DCTELEM *block, const int16_t *qmat);
330+; int16_t *block, const int16_t *qmat);
331331 %macro idct_put_fn 1
332332 cglobal prores_idct_put_10, 4, 4, %1
333333 movsxd r1, r1d
libavcodec/x86/proresdsp_init.c+4−3
@@ -21,14 +21,15 @@ · 20 unmodified lines
2121 */
2222
2323 #include "libavutil/x86/cpu.h"
24+#include "libavcodec/dsputil.h"
2425 #include "libavcodec/proresdsp.h"
2526
2627 void ff_prores_idct_put_10_sse2(uint16_t *dst, int linesize,
27− DCTELEM *block, const int16_t *qmat);
28+ int16_t *block, const int16_t *qmat);
2829 void ff_prores_idct_put_10_sse4(uint16_t *dst, int linesize,
29− DCTELEM *block, const int16_t *qmat);
30+ int16_t *block, const int16_t *qmat);
3031 void ff_prores_idct_put_10_avx (uint16_t *dst, int linesize,
31− DCTELEM *block, const int16_t *qmat);
32+ int16_t *block, const int16_t *qmat);
3233
3334 void ff_proresdsp_x86_init(ProresDSPContext *dsp)
3435 {
libavcodec/x86/rv34dsp.asm+1−1
@@ -133,7 +133,7 @@ cglobal rv34_idct_dc_add, 3, 3 · 132 unmodified lines
133133 mova mm5, [pd_512] ; 0x200
134134 %endmacro
135135
136−; ff_rv34_idct_add_mmxext(uint8_t *dst, ptrdiff_t stride, DCTELEM *block);
136+; ff_rv34_idct_add_mmxext(uint8_t *dst, ptrdiff_t stride, int16_t *block);
137137 %macro COL_TRANSFORM 4
138138 pshufw mm3, %2, 0xDD ; col. 1,3,1,3
139139 pshufw %2, %2, 0x88 ; col. 0,2,0,2
libavcodec/x86/rv34dsp_init.c+3−3
@@ -25,11 +25,11 @@ · 24 unmodified lines
2525 #include "libavcodec/dsputil.h"
2626 #include "libavcodec/rv34dsp.h"
2727
28−void ff_rv34_idct_dc_mmxext(DCTELEM *block);
29−void ff_rv34_idct_dc_noround_mmxext(DCTELEM *block);
28+void ff_rv34_idct_dc_mmxext(int16_t *block);
29+void ff_rv34_idct_dc_noround_mmxext(int16_t *block);
3030 void ff_rv34_idct_dc_add_mmx(uint8_t *dst, ptrdiff_t stride, int dc);
3131 void ff_rv34_idct_dc_add_sse4(uint8_t *dst, ptrdiff_t stride, int dc);
32−void ff_rv34_idct_add_mmxext(uint8_t *dst, ptrdiff_t stride, DCTELEM *block);
32+void ff_rv34_idct_add_mmxext(uint8_t *dst, ptrdiff_t stride, int16_t *block);
3333
3434 av_cold void ff_rv34dsp_init_x86(RV34DSPContext* c, DSPContext *dsp)
3535 {
libavcodec/x86/simple_idct.c+2−2
@@ -1155,12 +1155,12 @@ void ff_simple_idct_mmx(int16_t *block) · 1154 unmodified lines
11551155
11561156 //FIXME merge add/put into the idct
11571157
1158−void ff_simple_idct_put_mmx(uint8_t *dest, int line_size, DCTELEM *block)
1158+void ff_simple_idct_put_mmx(uint8_t *dest, int line_size, int16_t *block)
11591159 {
11601160 idct(block);
11611161 ff_put_pixels_clamped_mmx(block, dest, line_size);
11621162 }
1163−void ff_simple_idct_add_mmx(uint8_t *dest, int line_size, DCTELEM *block)
1163+void ff_simple_idct_add_mmx(uint8_t *dest, int line_size, int16_t *block)
11641164 {
11651165 idct(block);
11661166 ff_add_pixels_clamped_mmx(block, dest, line_size);
libavcodec/x86/vc1dsp_mmx.c+4−4
@@ -494,7 +494,7 @@ DECLARE_FUNCTION(3, 2) · 493 unmodified lines
494494 DECLARE_FUNCTION(3, 3)
495495
496496 static void vc1_inv_trans_4x4_dc_mmxext(uint8_t *dest, int linesize,
497− DCTELEM *block)
497+ int16_t *block)
498498 {
499499 int dc = block[0];
500500 dc = (17 * dc + 4) >> 3;
@@ -533,7 +533,7 @@ static void vc1_inv_trans_4x4_dc_mmxext(uint8_t *dest, int linesize, · 32 unmodified lines
533533 }
534534
535535 static void vc1_inv_trans_4x8_dc_mmxext(uint8_t *dest, int linesize,
536− DCTELEM *block)
536+ int16_t *block)
537537 {
538538 int dc = block[0];
539539 dc = (17 * dc + 4) >> 3;
@@ -595,7 +595,7 @@ static void vc1_inv_trans_4x8_dc_mmxext(uint8_t *dest, int linesize, · 55 unmodified lines
595595 }
596596
597597 static void vc1_inv_trans_8x4_dc_mmxext(uint8_t *dest, int linesize,
598− DCTELEM *block)
598+ int16_t *block)
599599 {
600600 int dc = block[0];
601601 dc = ( 3 * dc + 1) >> 1;
@@ -634,7 +634,7 @@ static void vc1_inv_trans_8x4_dc_mmxext(uint8_t *dest, int linesize, · 32 unmodified lines
634634 }
635635
636636 static void vc1_inv_trans_8x8_dc_mmxext(uint8_t *dest, int linesize,
637− DCTELEM *block)
637+ int16_t *block)
638638 {
639639 int dc = block[0];
640640 dc = (3 * dc + 1) >> 1;
libavcodec/x86/vp3dsp_init.c+6−5
@@ -22,17 +22,18 @@ · 21 unmodified lines
2222 #include "libavutil/cpu.h"
2323 #include "libavutil/x86/cpu.h"
2424 #include "libavcodec/avcodec.h"
25+#include "libavcodec/dsputil.h"
2526 #include "libavcodec/vp3dsp.h"
2627 #include "config.h"
2728
28−void ff_vp3_idct_put_mmx(uint8_t *dest, int line_size, DCTELEM *block);
29−void ff_vp3_idct_add_mmx(uint8_t *dest, int line_size, DCTELEM *block);
29+void ff_vp3_idct_put_mmx(uint8_t *dest, int line_size, int16_t *block);
30+void ff_vp3_idct_add_mmx(uint8_t *dest, int line_size, int16_t *block);
3031
31−void ff_vp3_idct_put_sse2(uint8_t *dest, int line_size, DCTELEM *block);
32−void ff_vp3_idct_add_sse2(uint8_t *dest, int line_size, DCTELEM *block);
32+void ff_vp3_idct_put_sse2(uint8_t *dest, int line_size, int16_t *block);
33+void ff_vp3_idct_add_sse2(uint8_t *dest, int line_size, int16_t *block);
3334
3435 void ff_vp3_idct_dc_add_mmxext(uint8_t *dest, int line_size,
35− DCTELEM *block);
36+ int16_t *block);
3637
3738 void ff_vp3_v_loop_filter_mmxext(uint8_t *src, int stride,
3839 int *bounding_values);
libavcodec/x86/vp8dsp.asm+5−5
@@ -899,7 +899,7 @@ cglobal put_vp8_pixels16, 5, 5, 2, dst, dststride, src, srcstride, height · 898 unmodified lines
899899 REP_RET
900900
901901 ;-----------------------------------------------------------------------------
902−; void vp8_idct_dc_add_<opt>(uint8_t *dst, DCTELEM block[16], int stride);
902+; void vp8_idct_dc_add_<opt>(uint8_t *dst, int16_t block[16], int stride);
903903 ;-----------------------------------------------------------------------------
904904
905905 %macro ADD_DC 4
@@ -977,7 +977,7 @@ cglobal vp8_idct_dc_add, 3, 3, 6, dst, block, stride · 71 unmodified lines
977977 RET
978978
979979 ;-----------------------------------------------------------------------------
980−; void vp8_idct_dc_add4y_<opt>(uint8_t *dst, DCTELEM block[4][16], int stride);
980+; void vp8_idct_dc_add4y_<opt>(uint8_t *dst, int16_t block[4][16], int stride);
981981 ;-----------------------------------------------------------------------------
982982
983983 %if ARCH_X86_32
@@ -1050,7 +1050,7 @@ cglobal vp8_idct_dc_add4y, 3, 3, 6, dst, block, stride · 66 unmodified lines
10501050 RET
10511051
10521052 ;-----------------------------------------------------------------------------
1053−; void vp8_idct_dc_add4uv_<opt>(uint8_t *dst, DCTELEM block[4][16], int stride);
1053+; void vp8_idct_dc_add4uv_<opt>(uint8_t *dst, int16_t block[4][16], int stride);
10541054 ;-----------------------------------------------------------------------------
10551055
10561056 INIT_MMX mmx
@@ -1092,7 +1092,7 @@ cglobal vp8_idct_dc_add4uv, 3, 3, 0, dst, block, stride · 35 unmodified lines
10921092 RET
10931093
10941094 ;-----------------------------------------------------------------------------
1095−; void vp8_idct_add_<opt>(uint8_t *dst, DCTELEM block[16], int stride);
1095+; void vp8_idct_add_<opt>(uint8_t *dst, int16_t block[16], int stride);
10961096 ;-----------------------------------------------------------------------------
10971097
10981098 ; calculate %1=mul_35468(%1)-mul_20091(%2); %2=mul_20091(%1)+mul_35468(%2)
@@ -1172,7 +1172,7 @@ INIT_MMX sse · 73 unmodified lines
11721172 VP8_IDCT_ADD
11731173
11741174 ;-----------------------------------------------------------------------------
1175−; void vp8_luma_dc_wht_mmxext(DCTELEM block[4][4][16], DCTELEM dc[16])
1175+; void vp8_luma_dc_wht_mmxext(int16_t block[4][4][16], int16_t dc[16])
11761176 ;-----------------------------------------------------------------------------
11771177
11781178 %macro SCATTER_WHT 3
libavcodec/x86/vp8dsp_init.c+9−9
@@ -230,21 +230,21 @@ HVBILIN(ssse3, 8, 4, 8) · 229 unmodified lines
230230 HVBILIN(ssse3, 8, 8, 16)
231231 HVBILIN(ssse3, 8, 16, 16)
232232
233−extern void ff_vp8_idct_dc_add_mmx(uint8_t *dst, DCTELEM block[16],
233+extern void ff_vp8_idct_dc_add_mmx(uint8_t *dst, int16_t block[16],
234234 ptrdiff_t stride);
235−extern void ff_vp8_idct_dc_add_sse4(uint8_t *dst, DCTELEM block[16],
235+extern void ff_vp8_idct_dc_add_sse4(uint8_t *dst, int16_t block[16],
236236 ptrdiff_t stride);
237−extern void ff_vp8_idct_dc_add4y_mmx(uint8_t *dst, DCTELEM block[4][16],
237+extern void ff_vp8_idct_dc_add4y_mmx(uint8_t *dst, int16_t block[4][16],
238238 ptrdiff_t stride);
239−extern void ff_vp8_idct_dc_add4y_sse2(uint8_t *dst, DCTELEM block[4][16],
239+extern void ff_vp8_idct_dc_add4y_sse2(uint8_t *dst, int16_t block[4][16],
240240 ptrdiff_t stride);
241−extern void ff_vp8_idct_dc_add4uv_mmx(uint8_t *dst, DCTELEM block[2][16],
241+extern void ff_vp8_idct_dc_add4uv_mmx(uint8_t *dst, int16_t block[2][16],
242242 ptrdiff_t stride);
243−extern void ff_vp8_luma_dc_wht_mmx(DCTELEM block[4][4][16], DCTELEM dc[16]);
244−extern void ff_vp8_luma_dc_wht_sse(DCTELEM block[4][4][16], DCTELEM dc[16]);
245−extern void ff_vp8_idct_add_mmx(uint8_t *dst, DCTELEM block[16],
243+extern void ff_vp8_luma_dc_wht_mmx(int16_t block[4][4][16], int16_t dc[16]);
244+extern void ff_vp8_luma_dc_wht_sse(int16_t block[4][4][16], int16_t dc[16]);
245+extern void ff_vp8_idct_add_mmx(uint8_t *dst, int16_t block[16],
246246 ptrdiff_t stride);
247−extern void ff_vp8_idct_add_sse(uint8_t *dst, DCTELEM block[16],
247+extern void ff_vp8_idct_add_sse(uint8_t *dst, int16_t block[16],
248248 ptrdiff_t stride);
249249
250250 #define DECLARE_LOOP_FILTER(NAME)\
tools/patcheck+1−1
@@ -173,7 +173,7 @@ vertical align = · 172 unmodified lines
173173 /* and * align
174174 arrays fitting in smaller types
175175 variables written to twice with no interspaced read
176−memset(block, 0, 6*64*sizeof(DCTELEM)); -> clear_blocks
176+memset(block, 0, 6*64*sizeof(int16_t)); -> clear_blocks
177177 check existence of long_name in AVCodec
178178 check that the patch does not touch codec & (de)muxer layer at the same time ->split
179179

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t