mpeg-ps probe 2nd try
Originally committed as revision 4974 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									5c4b1b2538
								
							
						
					
					
						commit
						0b2bb3543f
					
				@ -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)
 | 
				
			|||||||
        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;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user