X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fdv.c;h=cd2cd4ba8f7e3b75359f6e4eadeb3c74f99e944a;hb=c0b47d1914a19abacdf1edf081cbf07485952920;hp=8b0818fb4197a8d365fdb65d14d8638d3175e78d;hpb=74e4bb691254e9d473bf1eac63ee7da4bbf0957e;p=ffmpeg diff --git a/libavcodec/dv.c b/libavcodec/dv.c index 8b0818fb419..cd2cd4ba8f7 100644 --- a/libavcodec/dv.c +++ b/libavcodec/dv.c @@ -294,8 +294,6 @@ av_cold int ff_dvvideo_init(AVCodecContext *avctx) ff_dv_rl_vlc[i].run = run; } ff_free_vlc(&dv_vlc); - - dv_vlc_map_tableinit(); } /* Generic DSP setup */ @@ -338,6 +336,8 @@ static av_cold int dvvideo_init_encoder(AVCodecContext *avctx) return AVERROR(EINVAL); } + dv_vlc_map_tableinit(); + return ff_dvvideo_init(avctx); } @@ -668,7 +668,7 @@ static int dv_encode_video_segment(AVCodecContext *avctx, void *arg) int mb_x, mb_y, c_offset, linesize, y_stride; uint8_t* y_ptr; uint8_t* dif; - LOCAL_ALIGNED_8(uint8_t, scratch, [64]); + LOCAL_ALIGNED_8(uint8_t, scratch, [128]); EncBlockInfo enc_blks[5*DV_MAX_BPM]; PutBitContext pbs[5*DV_MAX_BPM]; PutBitContext* pb; @@ -723,10 +723,10 @@ static int dv_encode_video_segment(AVCodecContext *avctx, void *arg) b[0] = c_ptr[0]; b[1] = c_ptr[1]; b[2] = c_ptr[2]; b[3] = c_ptr[3]; b[4] = d[0]; b[5] = d[1]; b[6] = d[2]; b[7] = d[3]; c_ptr += linesize; - b += 8; + b += 16; } c_ptr = scratch; - linesize = 8; + linesize = 16; } vs_bit_size += dv_init_enc_block( enc_blk++, c_ptr , linesize, s, 1);