| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -546,9 +546,8 @@ static void decoder_init(Decoder *d, AVCodecContext *avctx, PacketQueue *queue, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    d->start_pts = AV_NOPTS_VALUE; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			static int decoder_decode_frame(Decoder *d, void *fframe) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			static int decoder_decode_frame(Decoder *d, AVFrame *frame, AVSubtitle *sub) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    int got_frame = 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    AVFrame *frame = fframe; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    d->flushed = 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -608,7 +607,7 @@ static int decoder_decode_frame(Decoder *d, void *fframe) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                break; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            case AVMEDIA_TYPE_SUBTITLE: | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                ret = avcodec_decode_subtitle2(d->avctx, fframe, &got_frame, &d->pkt_temp); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                ret = avcodec_decode_subtitle2(d->avctx, sub, &got_frame, &d->pkt_temp); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                break; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -1863,7 +1862,7 @@ static int get_video_frame(VideoState *is, AVFrame *frame) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			{ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    int got_picture; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    if ((got_picture = decoder_decode_frame(&is->viddec, frame)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    if ((got_picture = decoder_decode_frame(&is->viddec, frame, NULL)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        return -1; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    if (got_picture) { | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -2219,7 +2218,7 @@ static int subtitle_thread(void *arg) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if (!(sp = frame_queue_peek_writable(&is->subpq))) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if ((got_subtitle = decoder_decode_frame(&is->subdec, &sp->sub)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if ((got_subtitle = decoder_decode_frame(&is->subdec, NULL, &sp->sub)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            break; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pts = 0; | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -2483,7 +2482,7 @@ static int audio_decode_frame(VideoState *is) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return resampled_data_size; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if ((got_frame = decoder_decode_frame(&is->auddec, is->frame)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if ((got_frame = decoder_decode_frame(&is->auddec, is->frame, NULL)) < 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return -1; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if (is->auddec.flushed) | 
		
		
	
	
		
			
				| 
				
					
				
				
				
				 | 
			
			 | 
			
  |