# HG changeset patch # User michaelni # Date 1041789566 0 # Node ID 45bd748e305f0695b22b00123249b9cf005d25dc # Parent 8f5d4c666806a0fb8e29315d7e16a7223d64a278 negative linesize support (so mplayer -flip works) diff -r 8f5d4c666806 -r 45bd748e305f mpegvideo.c --- a/mpegvideo.c Sun Jan 05 17:17:14 2003 +0000 +++ b/mpegvideo.c Sun Jan 05 17:59:26 2003 +0000 @@ -382,7 +382,8 @@ + (toupper((s->avctx->fourcc>>16)&0xFF)<<16) + (toupper((s->avctx->fourcc>>24)&0xFF)<<24); - CHECKED_ALLOCZ(s->edge_emu_buffer, (s->width+64)*2*17*2); //(width + edge + align)*interlaced*MBsize*tolerance + CHECKED_ALLOCZ(s->allocated_edge_emu_buffer, (s->width+64)*2*17*2); //(width + edge + align)*interlaced*MBsize*tolerance + s->edge_emu_buffer= s->allocated_edge_emu_buffer + (s->width+64)*2*17; s->avctx->coded_frame= (AVFrame*)&s->current_picture; @@ -513,7 +514,7 @@ av_freep(&s->bitstream_buffer); av_freep(&s->tex_pb_buffer); av_freep(&s->pb2_buffer); - av_freep(&s->edge_emu_buffer); + av_freep(&s->allocated_edge_emu_buffer); s->edge_emu_buffer= NULL; av_freep(&s->co_located_type_table); av_freep(&s->field_mv_table); av_freep(&s->field_select_table); diff -r 8f5d4c666806 -r 45bd748e305f mpegvideo.h --- a/mpegvideo.h Sun Jan 05 17:17:14 2003 +0000 +++ b/mpegvideo.h Sun Jan 05 17:59:26 2003 +0000 @@ -232,7 +232,8 @@ UINT8 *mbintra_table; /* used to avoid setting {ac, dc, cbp}-pred stuff to zero on inter MB decoding */ UINT8 *cbp_table; /* used to store cbp, ac_pred for partitioned decoding */ UINT8 *pred_dir_table; /* used to store pred_dir for partitioned decoding */ - UINT8 *edge_emu_buffer; + uint8_t *allocated_edge_emu_buffer; + uint8_t *edge_emu_buffer; /* points into the middle of allocated_edge_emu_buffer */ int qscale; /* QP */ float frame_qscale; /* qscale from the frame level rc FIXME remove*/