is it possible to do 2-pass with a specified bitrate range? all i know is how to do 2-pass abr which just requires a target bitrate.
what if i just want to let the encoder efficiently allocate bits ranging from, let's say, 900kbps to 1500kps in two passes? is there a command to specifically do this?
+ Reply to Thread
Results 1 to 11 of 11
No. Why would you want to do that anyways?
IF CRF works similar like x264 then you better use that mode to simulate this, that is 1pass. Buffers set maximum bitrates and minimum bitrate you kind of guess by setting CRF value. Example:
using resolution about 640x360 and setting --crf 18--vbv-bufsize 1300 --vbv-maxrate 1300 would get you max bitrates about 1500 and mins about that 900
If your mins are really low, just increase CRF. Mins will rise up but maxs will be always cut off. So you might do some testing before and anyway it might change with other video content. It is video content dependant so that minimum bitrate might be still low with a still picture for example. But this is a way how to generate streaming video.
Again, not sure if x265 works the same way like x264.
x265 does have a --crf-min and --crf-max options, jut not a minimal bitrate option. But said options - just like the vbv options - are dangerous tools. You really need to know what you are doing or you will shoot yourself in the foot. Usually, you do NOT want to limit your encoder severely.
sorry, i just started encoding so all this is gonna take a while to take in. all this vbv option is kinda hard to follow. anyway i don't think i want to generate a streaming video since i'm only going to encode for my own viewing and archiving purposes.
i've used crf, but i am never satisfied with the outcome no matter what value i use. i've tried values from 20-23 and i have some problems regarding small details like the grass, breaking glass, etc. they all look so smudged. i'm guessing they're given a small bitrate which leads me to specifying limits as in my first post.
For personal use just choose CRF that satisfies your demands, do not limit buffers.
If x265 permits already, set an x264 equivalent of --tune film for keeping noise in the video. But it looks like it is just quantifier not being set good enough.
Also choosing lower resolutions, artifacts are blown up on a screen, CRF needs to be really good and it might not be enough. There is a chance you simply need to encode higher resolution (and of course with higher bitrate).
Last edited by _Al_; 29th Feb 2016 at 14:54.
--tune grain is basically broken, even the developers recommend to not use it. They are working on a patch.
Film Grain Retention
--tune grain tries to improve the retention of film grain in the reconstructed output. It disables rate distortion optimizations in quantization, and increases the default psy-rd.
It lowers the strength of adaptive quantization, so residual energy can be more evenly distributed across the (noisy) picture:
And it similarly tunes rate control to prevent the slice QP from swinging too wildly from frame to frame:
And lastly it reduces the strength of deblocking to prevent grain being blurred on block boundaries:
Also looks like --tune film does not exist yet, so grain would be the closest alternative.
Anyways, --tune grain will be intended specifically for grain retention, not detail in general.
I may get around to do doing a comparison of real world footage
Also "not acceptable" and "broken" are not exactly one in the same.