When starting a transcoding process (for RTMP -> HLS in this case) the ffmpeg process does some probing initially. This takes at least 1 second. Afterwards the transcoding starts. The transcoding starts with the first bits received, i guess during the initial probing a buffer gets filled and is used here.
I tried lots of ways to make it start faster, i.e. I tried to lower any buffers. The delay in the startup is not my main problem, i could live with the additional second. But since the resulting HLS starts at the beginning of the received RTMP frames, this adds at least 1 second latency to the stream.
Is there a way to either
- have ffmpeg start the generated HLS with the latest frames from the RTMP input (ignore initial buffer)
- don't do the probing / startup delay at all?
I have searched the solution for this problem on and off for weeks now, but no parameters I tried with FFMPEG made it faster.
The FFMPEG version was mostly 4.4 but when I started I had 4.3 and also the 5.0 series has been tried.