fftools/ffprobe: Flush decoder after draining
This is a prerequisite to continue using the decoder at all to decode the next interval (if any). This fixes a regression introduced in commit 2a88ebd096f3c748a2d99ed1b60b22879b3c567c and reported in ticket #8657. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
		
							parent
							
								
									570fda56b9
								
							
						
					
					
						commit
						26cce232d7
					
				@ -2730,8 +2730,11 @@ static int read_interval_packets(WriterContext *w, InputFile *ifile,
 | 
			
		||||
    //Flush remaining frames that are cached in the decoder
 | 
			
		||||
    for (i = 0; i < fmt_ctx->nb_streams; i++) {
 | 
			
		||||
        pkt->stream_index = i;
 | 
			
		||||
        if (do_read_frames)
 | 
			
		||||
        if (do_read_frames) {
 | 
			
		||||
            while (process_frame(w, ifile, frame, pkt, &(int){1}) > 0);
 | 
			
		||||
            if (ifile->streams[i].dec_ctx)
 | 
			
		||||
                avcodec_flush_buffers(ifile->streams[i].dec_ctx);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
end:
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user