| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -64,7 +64,7 @@ static int mpegaudio_parse(AVCodecParserContext *s1, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        }else{ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            while(i<buf_size){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                int ret, sr, channels, bit_rate, frame_size; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                enum AVCodecID codec_id; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                enum AVCodecID codec_id = avctx->codec_id; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                state= (state<<8) + buf[i++]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -90,6 +90,16 @@ static int mpegaudio_parse(AVCodecParserContext *s1, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                            avctx->bit_rate += (bit_rate - avctx->bit_rate) / (s->header_count - header_threshold); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    if (s1->flags & PARSER_FLAG_COMPLETE_FRAMES) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        s->frame_size = 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        next = buf_size; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    } else if (codec_id == AV_CODEC_ID_MP3ADU) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        av_log(avctx, AV_LOG_ERROR, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                            "MP3ADU full parser not implemented"); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        return AVERROR_PATCHWELCOME; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    break; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -110,7 +120,7 @@ static int mpegaudio_parse(AVCodecParserContext *s1, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			AVCodecParser ff_mpegaudio_parser = { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    .codec_ids      = { AV_CODEC_ID_MP1, AV_CODEC_ID_MP2, AV_CODEC_ID_MP3 }, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    .codec_ids      = { AV_CODEC_ID_MP1, AV_CODEC_ID_MP2, AV_CODEC_ID_MP3, AV_CODEC_ID_MP3ADU }, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    .priv_data_size = sizeof(MpegAudioParseContext), | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    .parser_parse   = mpegaudio_parse, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    .parser_close   = ff_parse_close, | 
		
		
	
	
		
			
				| 
				
				
				
				 | 
			
			 | 
			
  |