Since a couple of days i try to get the “perfect” settings for my chain-encoder i am actually writing. It gonna be used to transcode user generated content into a VOD streaming Site.
So far everything works. RTMP, HLS and DASH. I just have one problem left: If i seek in DASH mode (regardless of the used Player) i get artefacts till it reaches the next Keyframe.
Regardless what settings i tried so far - it is still the same.
first i get ffprobe informations to determine the correct framerate - in this case lets assume 25
#crf attempt
ffmpeg -r 25/1 -i “/data/cephfs/input.mkv” -y -acodec libfaac -ab 128k -ac 2 -crf 23 -vcodec libx264 -x264opts ‘keyint=25:min-keyint=25:scenecut=-1’ -preset veryslow -flags +cgop -movflags faststart -threads 16 -r 25/1 -bufsize 1000k -f mp4 -keyint_min 25 -g 25 -sc_threshold 0 ‘/data/cephfs/output.mp4’
another attempt: (multipass)
ffmpeg -r 25/1 -i “/data/cephfs/input.mkv” -y -an -b:v 1250k -minrate 500k -maxrate 2000k -pass 1 -vcodec libx264 -x264opts ‘keyint=25:min-keyint=25:scenecut=-1’ -preset veryslow -tune zerolatency -flags +cgop -movflags faststart -threads 16 -r 25/1 -f mp4 -keyint_min 25 -g 25 -sc_threshold 0 -passlogfile /data/cephfs/log_file /dev/null
pass2:
ffmpeg -r 25/1 -i “/data/cephfs/input.mkv” -y -an -b:v 1250k -minrate 500k -maxrate 2000k -pass 2 -vcodec libx264 -x264opts ‘keyint=25:min-keyint=25:scenecut=-1’ -preset veryslow -tune zerolatency -flags +cgop -movflags faststart -threads 16 -r 25/1 -bufsize 2000k -f mp4 -keyint_min 25 -g 25 -sc_threshold 0 -passlogfile /data/cephfs/log_file ‘/data/cephfs/v360p.mp4’
those files works fine with any other streaming method
any suggestions ?