filter; these buffered frames must be flushed immediately if a new input
produces new output.
- ( Example: framerate-doubling filter: start_frame must (1) flush the
- second copy of the previous frame, it it is stille there, (2) push the
- first copy of the incoming frame, (3) keep the second copy for later. )
+ (Example: framerate-doubling filter: start_frame must (1) flush the
+ second copy of the previous frame, if it is still there, (2) push the
+ first copy of the incoming frame, (3) keep the second copy for later.)
If the input frame is not enough to produce output, the filter must not
call request_frame to get more. It must just process the frame or queue
Return values:
if request_frame could produce a frame, it should return 0;
if it could not for temporary reasons, it should return AVERROR(EAGAIN);
- if it could not because there are no more frames, it shous return
+ if it could not because there are no more frames, it should return
AVERROR_EOF.
The typical implementation of request_frame for a filter with several