[MPlayer-cvslog] r34824 - trunk/stream/stream_ffmpeg.c

Reimar Döffinger Reimar.Doeffinger at gmx.de
Sat Mar 24 20:03:35 CET 2012

On Sat, Mar 24, 2012 at 05:28:55PM +0100, diego wrote:
> Author: diego
> Date: Sat Mar 24 17:28:55 2012
> New Revision: 34824
> Log:
> stream_ffmpeg: convert to avio API, fix build against shared libavformat

I'd appreciate it if you would not apply changes you have no clue what
they do.
This changes introduces an additional buffering layer which can cause
performance and maybe even other issues.

> -    /* url_write retries internally on short writes and EAGAIN */
> -    int r = url_write(s->priv, buffer, len);
> -    return (r <= 0) ? -1 : r;
> +    avio_write(s->priv, buffer, len);
> +    return len;

For writing it even loses the ability to report errors completely,
and it is impossible to know when the data will actually be written
(since it will only be written when the buffer is full, which might
be far too late).
So please revert until there is a proper fix for this code.
Options are disabling the feature when the url_* code is not
available or using some define magic to switch to the avio
API when necessary and print a fat warning about the issues.

More information about the MPlayer-cvslog mailing list