mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-29 22:00:58 +02:00
cleaner & more flexible edge bug workaround
Originally committed as revision 1685 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
d518aebdee
commit
1c6dcb0f42
@ -583,6 +583,7 @@ typedef struct AVCodecContext {
|
||||
#define FF_BUG_STD_QPEL 128
|
||||
#define FF_BUG_QPEL_CHROMA2 256
|
||||
#define FF_BUG_DIRECT_BLOCKSIZE 512
|
||||
#define FF_BUG_EDGE 1024
|
||||
//#define FF_BUG_FAKE_SCALABILITY 16 //autodetection should work 100%
|
||||
|
||||
/**
|
||||
|
@ -4814,7 +4814,7 @@ static int decode_vop_header(MpegEncContext *s, GetBitContext *gb){
|
||||
s->y_dc_scale_table= ff_mpeg4_y_dc_scale_table; //FIXME add short header support
|
||||
s->c_dc_scale_table= ff_mpeg4_c_dc_scale_table;
|
||||
|
||||
if(s->divx_version==0 || s->divx_version < 500){
|
||||
if(!(s->workaround_bugs&FF_BUG_EDGE)){
|
||||
s->h_edge_pos= s->width;
|
||||
s->v_edge_pos= s->height;
|
||||
}
|
||||
|
@ -538,6 +538,11 @@ retry:
|
||||
//printf("padding_bug_score: %d\n", s->padding_bug_score);
|
||||
if(s->divx_version==501 && s->divx_build==20020416)
|
||||
s->padding_bug_score= 256*256*256*64;
|
||||
|
||||
if(s->divx_version>=500){
|
||||
s->workaround_bugs|= FF_BUG_EDGE;
|
||||
}
|
||||
|
||||
#if 0
|
||||
if(s->divx_version==500)
|
||||
s->padding_bug_score= 256*256*256*64;
|
||||
|
Loading…
x
Reference in New Issue
Block a user