Increase upload bitrate on Opus

I am trying to set a higher bitrate when using the Opus codec and clients calling into a conference bridge.

I am particularly interested in increasing the bitrate in the direction Asterisk to client (so upload bitrate to client side).

I am trying a few settings on Asterisk codecs.conf, such as below, but nothing seems to make a difference, the upload from Asterisk to client is always at around 65kb/s.
Is there a way to force a minimum bitrate?

[opus]
type=opus
bitrate=512000
cbr=yes

The maxaveragebitrate will be negotiated between Asterisk and the endpoint applying the lower between the two. The max_bandwidth can also affect this, which in turn is affected by the max_playback_rate. Setting those to “full” and 48000 respectively should ensure the maximums.

Variable vs constant bitrate will also affect this, but I see you already have cbr set to “yes”.

Lastly, and to the crux of the matter I believe that you are already seeing the maximum bitrate achievable using the opus codec module for Asterisk. Note the “Bandwidth Transition Thresholds” table from the opus site. According to that you’ll only see bitrates > 65Kb/s using stereo. Unfortunately, Asterisk always forces mono and there is no way to currently configure that option or tell it to use stereo.

1 Like

Thank you for your answer.

The interesting thing is, that on the client (linphone) I can set a bitrate as well, and if I do that the upload from client to Asterisk can go up to 200kb/s.
Do you have an idea why it would go up to that bitrate in that direction, but not the other?

There is nothing stopping Asterisk from receiving a higher bitrate stream (well unless it’s negotiated at a lower rate). An endpoint can send what it can. It’d be dependent on how the endpoint (linphone in this case) encodes (or tells opus how to encode) the data.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.