Limit queue size to 10 frames
Workaround for ZLA, which seems to decode and queue twice as many frames as it displays.
This commit is contained in:
		
							parent
							
								
									c9e3abe206
								
							
						
					
					
						commit
						979b602738
					
				| @ -104,6 +104,10 @@ void Codec::Decode() { | ||||
|         AVFramePtr frame = AVFramePtr{av_frame_alloc(), AVFrameDeleter}; | ||||
|         avcodec_receive_frame(av_codec_ctx, frame.get()); | ||||
|         av_frames.push(std::move(frame)); | ||||
|         // Limit queue to 10 frames. Workaround for ZLA decode and queue spam
 | ||||
|         if (av_frames.size() > 10) { | ||||
|             av_frames.pop(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 ameerj
						ameerj