OBS ignores video encoder parameters in custom output(ffmpeg)

So i use obs to stream to an icecast streamserver however people reporting that the stream closes sometimes on their end. i suspect that this is caused by the big variation in the bitrate. i set it to 4mbit but it goes up to 10mbit (see screenshot) and on low motion in scene it goes down to 1mbit. i think this means that the mode is vbr and not cbr. i tried to use custom params (see screenshot) but no matter what i put in this field the result is the same. the bitrate always fluctuates too much. any ideas on how to get cbr like you would get when you stream regular to youtube via nvenc_hevc? unfortunately i need to use the recording function of obs for that since it needs icecast needs a very specific url and i couldnt get it to work with the stream function.
No description
No description
7 Replies
Flaeri
Flaeri6mo ago
Setting the bufsize that high will make it less like CBR. Nvenc already fluctuates a fair amount, so I wouldn't set it any higher than equal to the bitrate. Unsure if you can use filler with the icecast protocol, but try enabling filler data if possible @Yasaka Seems there is no filler option for hevc_nvemc ffmpeg. I believe there is in avcodec, but appears to not be exposed could also try preset=p6, which would get you lookahead, which should help with bitrate spikes
Yasaka
YasakaOP6mo ago
what would be the exact syntax for that? -preset p6 or preset=p6 ?
MEE6
MEE66mo ago
GG @Yasaka, you just advanced to level 2 !
HunterAP
HunterAP6mo ago
I think it'd be -preset 6
Flaeri
Flaeri6mo ago
No, syntax for custom ffmpeg output is param=value param=value @Yasaka Space separated
Yasaka
YasakaOP6mo ago
this seems to work. the bitrate now is always between 3.5 and 4.9
No description
Yasaka
YasakaOP6mo ago
thanks
Want results from more Discord servers?
Add your server