[FFmpeg-devel] [PATCH] Add new vf_tiltandshift filter

Vittorio Giovara vittorio.giovara at gmail.com
Wed Dec 20 21:56:09 EET 2023


On Wed, Dec 20, 2023 at 2:50 PM Nicolas George <george at 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


More information about the ffmpeg-devel mailing list