Commit 01b8f083 authored by michael's avatar michael

mpeg-ps probe 2nd try


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@4974 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 93de554d
...@@ -1263,7 +1263,7 @@ static int mpeg_mux_end(AVFormatContext *ctx) ...@@ -1263,7 +1263,7 @@ static int mpeg_mux_end(AVFormatContext *ctx)
static int mpegps_probe(AVProbeData *p) static int mpegps_probe(AVProbeData *p)
{ {
uint32_t code= -1; uint32_t code= -1;
int sys=0, pspack=0; int sys=0, pspack=0, priv1=0, vid=0;
int i; int i;
for(i=0; i<p->buf_size; i++){ for(i=0; i<p->buf_size; i++){
...@@ -1271,12 +1271,16 @@ static int mpegps_probe(AVProbeData *p) ...@@ -1271,12 +1271,16 @@ static int mpegps_probe(AVProbeData *p)
if ((code & 0xffffff00) == 0x100) { if ((code & 0xffffff00) == 0x100) {
switch(code){ switch(code){
case SYSTEM_HEADER_START_CODE: sys++; break; case SYSTEM_HEADER_START_CODE: sys++; break;
case PRIVATE_STREAM_1: priv1++; break;
case PACK_START_CODE: pspack++; break; case PACK_START_CODE: pspack++; break;
case (VIDEO_ID + 0x100): vid++; break;
} }
} }
} }
if(sys && sys*9 <= pspack*10) if(sys && sys*9 <= pspack*10)
return AVPROBE_SCORE_MAX/2+2; // +1 for .mpg return AVPROBE_SCORE_MAX/2+2; // +1 for .mpg
if((priv1 || vid) && (priv1+vid)*9 <= pspack*10)
return AVPROBE_SCORE_MAX/2+2; // +1 for .mpg
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment