On Wed, Dec 20, 2023 at 2:50 PM Nicolas George <geo...@nsup.org> wrote:
> Vittorio Giovara (12023-12-20): > > If there are no more comments, I'll push this today or tomorrow. > > I think the change you made after the last request might go too far, but > I have not had time to look at the code carefully enough to be sure. > > If a filter can produce several output frames from one input, then it > must send at lease one of the NEW frames. > > An illustration to make it clear: if I1 allows to compute O1a, O1b, O1c, > I2 allows to compute O2a, O2b, O2c, etc. > > Then when I1 arrives, the filter must output at least O1a, it can output > O1b and O1c or not. > > But when I2 arrives, it must output at lease O2a, which means it must > output O1b and O1c if that was not done at the time of I1. > > Your filter only outputs one frame per input, but it seems to me it can > create several frames. > the filter needs at least $width input frames to generate an output frame, so it queues them when the buffer is full, it will pop the head and generate the output frame when the next input frame arrives, but the amount of input frames in the queue needed to generate new frames is constant so it cannot output any additional frames at the end it will flush the buffer and generate the remaining output frames -- Vittorio _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".