Fix ambisonics bitrate when bitrate_bps is OPUS_AUTO
authorMichael Graczyk <mgraczyk@google.com>
Wed, 7 Sep 2016 22:26:51 +0000 (15:26 -0700)
committerJean-Marc Valin <jmvalin@jmvalin.ca>
Thu, 8 Sep 2016 15:34:42 +0000 (11:34 -0400)
Change-Id: I16bd4cd990d8ad5888c9e30016218ac25242ecb5

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
src/opus_multistream_encoder.c

index 30cafe1..c07132f 100644 (file)
@@ -747,7 +747,8 @@ static void ambisonics_rate_allocation(
 
    if (st->bitrate_bps==OPUS_AUTO)
    {
-      total_rate = num_channels * (20000 + st->layout.nb_streams*(Fs+60*Fs/frame_size));
+      total_rate = (st->layout.nb_coupled_streams + st->layout.nb_streams) *
+         (Fs+60*Fs/frame_size) + st->layout.nb_streams * 15000;
    } else if (st->bitrate_bps==OPUS_BITRATE_MAX)
    {
       total_rate = num_channels * 320000;