video - Scenecut detection and consistent GOP size - adaptive streaming -
sample command:
-map 0:0 -f mp4 -vcodec libx264 -preset slow -profile:v main -vf scale="640:trunc(ow/a/2)*2" -vb 700k -minrate 650k -maxrate 750k -bufsize 10000k -an -g 48 -x264opts keyint=48:min-keyint=10:scenecut=40 -flags +cgop -sc_threshold 40 -pix_fmt yuv420p -threads 0 -y
there such no error in encoding, wanted understand following points-
1) above command ensure range of gop size {10,48}, , if scene change value (frame1 fame2) >40%, keyframe introduced there?
2) means in 3 hours of source video, there no guarantee gop size remain same
3) no consider, creating 7 mp4 files each different bitrate , resolution. (these mp4s encoded smooth in later stage). hence targeting adaptive streaming. when did that, found if gop sizes not consistent across each bitrates. mean is, ex: if in bitrate1 - gop size 10, 20, 48 , on, in other bitrates wasnt in same sequence. hope question makes sense.
so there way ensure gop size may vary across 1 single output. should consistent across each bitrate provided source same?
also adaptive streaming scenecut detection advisable?
you right on point 1) , 2) in point 3) changing bit-rate , video resolution. in fact when using x264 abr, way keep encode using same gop structure (3 possibilities):
- only change bit rate, , ok
- use 2-step approach, run encode
--pass 1
, @ max resolution , bit-rate (faster think ...) writing out stats file, re-use stats file different bitrates , resolution via--pass 3
- disable scene cut detection
--scenecut -1
, encode fixed gop.
Comments
Post a Comment