indigo-player icon indicating copy to clipboard operation
indigo-player copied to clipboard

player often hangs on navigation

Open mash-graz opened this issue 4 years ago • 3 comments

over the last weeks i developed a new simple open source tool (covtc) to generate DASH/HLS content more easily and user friendly, which also puts indigo-player as default playback solution into the generated bundles. while testing the first results of this transcoding solution, i noticed, that indigo-player very often stops playing when you navigate to another position in the clip by pressing the mouse somewhere in the navigation bar. even pressing the stop and go button doesn't change this behavior anymore. this happens in firefox just as in chrome. there is also no noticeable error message or other useful information visible in the webdevelopper console of both browsers, which would indicate a plausible cause for this behavior.

please could you take a look at this example webpage:

http://users.mur.at/ms/diverses/btc/

the issue should be relative easy to reproduce by few clicks on the navigation bar.

nevertheless it could be caused by an erorr on my side resp. some wrong encoder settings in the encoding pipeline as well, but the symptoms are definitely not observable in mpv or vlc on an actual debian testing machine. i just didn't test it with other webplayers until now.

mash-graz avatar May 06 '20 00:05 mash-graz

At first sight, something seems misconfigured on the encoder.

The segment size seems way off: image

I've also noticed it takes about 30s until a ~35Mb segment is fetched, which is way too long. Can you share some of the encoding settings?

matvp91 avatar May 22 '20 13:05 matvp91

thanks for this hint! i didn't find much timer to work on the project over the last two weeks, but i'll look for mistakes on my side to solve the cause of the issue.

the generated transcoding command looks similar to this (it's one of the rather strange looking unit test examples -- https://gitlab.com/mash-graz/covtc/-/blob/master/src/ffmpeg.rs#L419):

        "ffmpeg -re -ss 50 -i https://media.xiph.org/tearsofsteel/tears_of_steel_1080p.webm \
        -t 15 -force_key_frames expr:gte(t,n_forced*2) -pix_fmt yuv420p \
        -map v:0 -c:v:0 libx264 -preset:v:0 faster -b:v:0 8000000 -bufsize:v:0 8000000 \
        -maxrate:v:0 8800000 -filter:v:0 scale=w=-2:h=1080 \
        -map v:0 -c:v:1 libx264 -preset:v:1 faster -b:v:1 4000000 -bufsize:v:1 4000000 \
        -maxrate:v:1 4400000 -filter:v:1 scale=w=-2:h=720 \
        -map v:0 -c:v:2 vp9 -row-mt:v:2 1 -b:v:2 9000000 -bufsize:v:2 9000000 \
        -maxrate:v:2 9900000 -map a:0 -c:a:0 aac -b:a:0 192000 -filter:a:0 loudnorm \
        -format_options movflags=cmaf -seg_duration 6 -frag_duration 2 -adaptation_sets \
        id=0,streams=v id=1,streams=a -hls_playlist 1 -f dash /tmp/covtc_output/dash_hls/manifest.mpd"

so it's mainly utilizing:

  • 2 sec keyframes (-force_key_frames expr:gte(t,n_forced*2))
  • segment size of 6 sec
  • fragment size of 2 sec
  • CMAF containers (-format_options movflags=cmaf)

but don't worry to much, if the issues isn't caused by your software. i'll look into it and try to analyze the error on my side first...

thanks!

mash-graz avatar May 22 '20 15:05 mash-graz

@mash-graz Did you eventually figure out what was up here with the stream?

matvp91 avatar Jul 14 '20 08:07 matvp91