diff options
author | clsid2 <clsid2@users.sourceforge.net> | 2010-04-19 23:29:00 +0400 |
---|---|---|
committer | clsid2 <clsid2@users.sourceforge.net> | 2010-04-19 23:29:00 +0400 |
commit | e220e2c9e47b5c1f98eec2c8deead4074fa07c76 (patch) | |
tree | cf616685c536ce5089d76c46dfe3df14b17a3924 /src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c | |
parent | 0b7b1d06b32b43517f7b584207533ecfe5ce20fa (diff) |
Updated FFmpeg
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1792 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c')
-rw-r--r-- | src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c index 83d46e97f..09161a546 100644 --- a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c +++ b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp3dsp.c @@ -19,7 +19,7 @@ */
/**
- * @file vp3dsp.c
+ * @file libavcodec/vp3dsp.c
* Standard C DSP-oriented functions cribbed from the original VP3
* source code.
*/
@@ -223,6 +223,25 @@ void ff_vp3_idct_add_c(uint8_t *dest/*align 8*/, int line_size, DCTELEM *block/* idct(dest, line_size, block, 2);
}
+void ff_vp3_idct_dc_add_c(uint8_t *dest/*align 8*/, int line_size, const DCTELEM *block/*align 16*/){
+ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
+ int i, dc = block[0];
+ dc = (46341*dc)>>16;
+ dc = (46341*dc + (8<<16))>>20;
+
+ for(i = 0; i < 8; i++){
+ dest[0] = cm[dest[0]+dc];
+ dest[1] = cm[dest[1]+dc];
+ dest[2] = cm[dest[2]+dc];
+ dest[3] = cm[dest[3]+dc];
+ dest[4] = cm[dest[4]+dc];
+ dest[5] = cm[dest[5]+dc];
+ dest[6] = cm[dest[6]+dc];
+ dest[7] = cm[dest[7]+dc];
+ dest += line_size;
+ }
+}
+
void ff_vp3_v_loop_filter_c(uint8_t *first_pixel, int stride, int *bounding_values)
{
unsigned char *end;
|