100l, interplayvideo uses 8x8 blocks, so call the 8x8 put_pixels_tab function
instead of the 16x16 one. Seems to fix decoding on PPC. Originally committed as revision 17808 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
@@ -94,7 +94,7 @@ typedef struct IpvideoContext {
|
|||||||
motion_offset, s->upper_motion_limit_offset); \
|
motion_offset, s->upper_motion_limit_offset); \
|
||||||
return -1; \
|
return -1; \
|
||||||
} \
|
} \
|
||||||
s->dsp.put_pixels_tab[0][0](s->pixel_ptr, \
|
s->dsp.put_pixels_tab[1][0](s->pixel_ptr, \
|
||||||
s->current_frame.data[0] + motion_offset, s->stride, 8);
|
s->current_frame.data[0] + motion_offset, s->stride, 8);
|
||||||
|
|
||||||
#define COPY_FROM_PREVIOUS() \
|
#define COPY_FROM_PREVIOUS() \
|
||||||
@@ -109,7 +109,7 @@ typedef struct IpvideoContext {
|
|||||||
motion_offset, s->upper_motion_limit_offset); \
|
motion_offset, s->upper_motion_limit_offset); \
|
||||||
return -1; \
|
return -1; \
|
||||||
} \
|
} \
|
||||||
s->dsp.put_pixels_tab[0][0](s->pixel_ptr, \
|
s->dsp.put_pixels_tab[1][0](s->pixel_ptr, \
|
||||||
s->last_frame.data[0] + motion_offset, s->stride, 8);
|
s->last_frame.data[0] + motion_offset, s->stride, 8);
|
||||||
|
|
||||||
#define COPY_FROM_SECOND_LAST() \
|
#define COPY_FROM_SECOND_LAST() \
|
||||||
@@ -124,7 +124,7 @@ typedef struct IpvideoContext {
|
|||||||
motion_offset, s->upper_motion_limit_offset); \
|
motion_offset, s->upper_motion_limit_offset); \
|
||||||
return -1; \
|
return -1; \
|
||||||
} \
|
} \
|
||||||
s->dsp.put_pixels_tab[0][0](s->pixel_ptr, \
|
s->dsp.put_pixels_tab[1][0](s->pixel_ptr, \
|
||||||
s->second_last_frame.data[0] + motion_offset, s->stride, 8);
|
s->second_last_frame.data[0] + motion_offset, s->stride, 8);
|
||||||
|
|
||||||
static int ipvideo_decode_block_opcode_0x0(IpvideoContext *s)
|
static int ipvideo_decode_block_opcode_0x0(IpvideoContext *s)
|
||||||
|
Reference in New Issue
Block a user