[vlc-devel] [PATCH] non-blocking filewriter (version 4)
remi at remlab.net
Wed May 6 21:27:28 CEST 2009
Le mardi 5 mai 2009 11:28:55 Jarmo Torvinen, vous avez écrit :
> Here is the version 4, which is using the S_ISFIFO() macro to test for the
> fifo pipe.
> By the way, there is one issue / feature depending on your view on this
> patch: on Close() the plugin will not flush rest of the data on the buffer
> to the pipe, it will just discard it.
> In real life, this means that if you do:
> mkfifo /tmp/fifo
> cat /tmp/fifo > output.ts &
> vlc input.ts
> the resulting output.ts will not contain all the data in input.ts remuxed,
> because when vlc finishes muxing the data to the output plugin buffer, it
> calls the file output module's Close() and the rest of the buffer gets
> discarded. In continuous real time transcoding, this is not an issue
Not only that. Either Write() must block if it overflows or pace control must
be turned on. Otherwise, it will be disastrous if the input is not paced.
More information about the vlc-devel