[FFmpeg-devel] [PATCH 0/5] FIFO meta muxer related improvements

Jan Ekström jeebjp at gmail.com
Mon Jan 11 16:46:45 EET 2021


On Mon, Dec 7, 2020 at 12:08 PM Jan Ekström <jeebjp at gmail.com> wrote:
>
> The primary parts of this are patches 1,4,5. 2 and 3 were just noticed when
> poking at the recovery timestamp logic, where the stream-time comparison logic
> seemed somewhat weird (such as comparing the pts to last_recovery_ts only if
> last_recovery_ts == AV_NOPTS_VALUE). If they seem incorrectly understood,
> they can be left out.
>
> As for the rest of the patches, they address the following issues:
> 1. Even if the header and the first packet get written out, the muxer might
>    still fail at writing to a server when it actually decides to do I/O.
>    Currently (for example with the MP4 muxer) this leads to a constant retry
>    loop as each recovery is actually "successful". This patch makes sure that
>    even if a recovery is "successful", the following recovery will only happen
>    after the configured time, easing the load on any receiving server.
> 4. In case of avformat_write_header failing, the fifo muxer until now would not
>    close the avformat context and its underlying I/O. This is now added, so
>    that file sockets do not keep creeping up.
> 5. Unset a configured codec_tag if it is not supported by the underlying muxer,
>    as the API client has no visibility regarding whether a codec tag is
>    acceptable in cases of meta-muxers such as fifo.
>
> Jan
>
> Bernard Boulay (1):
>   avformat/fifo: always wait recovery_wait_time between recoveries
>
> Jan Ekström (4):
>   avformat/fifo: fix handling of stream-time non-NOPTS recovery
>   avformat/fifo: cause immediate stream-time recovery if time went
>     backwards
>   avformat/fifo: close IO in case header writing fails
>   avformat/fifo: unset codec tag if unsupported by underlying muxer
>
>  libavformat/fifo.c | 77 ++++++++++++++++++++++++++++++----------------
>  1 file changed, 51 insertions(+), 26 deletions(-)
>

Ping for this patch set.

Jan


More information about the ffmpeg-devel mailing list