[FFmpeg-trac] #8387(avformat:closed): Anomalies with the tee muxer's transparent recovery with HLS and DASH streams

FFmpeg trac at avcodec.org
Thu Nov 21 01:38:52 EET 2019


#8387: Anomalies with the tee muxer's transparent recovery with HLS and DASH
streams
------------------------------------+------------------------------------
             Reporter:  Brainiarc7  |                    Owner:
                 Type:  defect      |                   Status:  closed
             Priority:  minor       |                Component:  avformat
              Version:  git-master  |               Resolution:  invalid
             Keywords:  hls dash    |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+------------------------------------
Changes (by Brainiarc7):

 * status:  new => closed
 * resolution:   => invalid


Comment:

 '''Update:'''

 This ticket should be marked as invalid.

 My research on this topic indicates that to enable transparent recovery
 for HLS and DASH streams via tee (and fifo) muxer(s), one must pass the
 following options:


 {{{
 HLSOPTS=':use_fifo=1:fifo_options=recovery_wait_time=1\\:attempt_recovery=1\\:drop_pkts_on_overflow=1\\:recover_any_error=1:f=hls:hls_wrap=6:hls_time=6:hls_list_size=6:hls_segment_type=fmp4:ignore_io_errors=0'
 DASHOPTS='use_fifo=1:fifo_options=recovery_wait_streamtime=1\\:attempt_recovery=1\\:drop_pkts_on_overflow=1\\:recover_any_error=1:f=dash:seg_duration=6:window_size=6:extra_window_size=0:ignore_io_errors=0'

 }}}


 With tee spawning fifo'd slaves, the underlying muxer *must* be allowed to
 fail so that fifos can recover. See the "ignore_io_errors=0" option passed
 to the underlying HLS and tee muxer(s) spawned by fifo'd tees.

 Secondly, the recovery logic must be set to rely on the heuristics based
 on recovery wait time, which requires the drop packets on overflow option
 to be enabled.

 Without these options enabled, both HLS and DASH muxers cannot recover
 transparently when slaved to tee fifos.

 What I was observing was NOT a bug, as initially assumed, but the correct
 behavior based on the options set in the tee's fifo slaves.

 Marking ticket as closed.

 Apologies for the noise.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8387#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list