[FFmpeg-user] split/select/overlay Buffer queue overflow, dropping

Nicolas George george at nsup.org
Wed Aug 19 10:19:06 CEST 2015


Le primidi 1er fructidor, an CCXXIII, Basin Ilya a écrit :
> During processing it prints Buffer queue overflow and in the end there's
> a still image in out1.mkv.
> 
> My guess is that one of the nodes in filter graph cannot consume new
> frames from one input, because it's waiting for another input, but I
> don't understand why.
> 
> It looks like out1 is waiting for out0, although they should be independent.

That is not exactly that, but almost. The problem is that ffmpeg arbitrarily
decides to try to get a frame for out0, but beyond 4, there will be no more
frames, but select can not know it unless it tries. Since filters are
required to return a frame when asked to, it continues to pull on its side
of split, never leaving a chance to the other side to run.

Dropping the requirement and adding a timestamp to avoid that kind of pull
loop is amongst my projects.

In the meantime, you can use trim=end=4 instead of select: since it is
higher level it knows that there will be no more frames after 4 and returns
EOF.

> Why do I use "split"? Because the real source is /dev/video0.

You could feed the same input to several filter graphs.

Regards,

-- 
  Nicolas George
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20150819/4a98c91b/attachment.sig>


More information about the ffmpeg-user mailing list