Detect IDR less H.264 correctly.
Fixes maybeH264_dumpvideo Originally committed as revision 14424 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									e791eb1ed4
								
							
						
					
					
						commit
						01037451f9
					
				| @ -350,7 +350,7 @@ static int mpeg4video_probe(AVProbeData *probe_packet) | ||||
| static int h264_probe(AVProbeData *p) | ||||
| { | ||||
|     uint32_t code= -1; | ||||
|     int sps=0, pps=0, idr=0, res=0; | ||||
|     int sps=0, pps=0, idr=0, res=0, sli=0; | ||||
|     int i; | ||||
| 
 | ||||
|     for(i=0; i<p->buf_size; i++){ | ||||
| @ -376,6 +376,7 @@ static int h264_probe(AVProbeData *p) | ||||
|                 res++; | ||||
| 
 | ||||
|             switch(type){ | ||||
|             case     1:   sli++; break; | ||||
|             case     5:   idr++; break; | ||||
|             case     7: | ||||
|                 if(p->buf[i+2]&0x0F) | ||||
| @ -386,7 +387,7 @@ static int h264_probe(AVProbeData *p) | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     if(sps && pps && idr && res<(sps+pps+idr)) | ||||
|     if(sps && pps && (idr||sli>3) && res<(sps+pps+idr)) | ||||
|         return AVPROBE_SCORE_MAX/2+1; // +1 for .mpg
 | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user