diff --git a/libavcodec/ffv1.c b/libavcodec/ffv1.c index ee4f387c12..3ac7a6a557 100644 --- a/libavcodec/ffv1.c +++ b/libavcodec/ffv1.c @@ -364,7 +364,7 @@ static inline int get_vlc_symbol(GetBitContext *gb, VlcState * const state, int return ret; } -static always_inline void encode_line(FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits){ +static inline void encode_line(FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits){ PlaneContext * const p= &s->plane[plane_index]; CABACContext * const c= &s->c; int x; @@ -375,7 +375,7 @@ static always_inline void encode_line(FFV1Context *s, int w, int_fast16_t *sampl for(x=0; xrun_index=0; memset(sample_buffer, 0, sizeof(sample_buffer)); @@ -440,7 +440,8 @@ static void encode_plane(FFV1Context *s, uint8_t *src, int w, int h, int stride, int_fast16_t *temp= sample[0]; //FIXME try a normal buffer sample[0]= sample[1]; - sample[1]= temp; + sample[1]= sample[2]; + sample[2]= temp; sample[1][-1]= sample[0][0 ]; sample[0][ w]= sample[0][w-1]; @@ -711,7 +712,7 @@ static int encode_end(AVCodecContext *avctx) return 0; } -static always_inline void decode_line(FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits){ +static inline void decode_line(FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits){ PlaneContext * const p= &s->plane[plane_index]; CABACContext * const c= &s->c; int x;