Displaying 7 results from an estimated 7 matches for "ambisonics_rate_allocation".
2016 Sep 07
2
[PATCH] Fix ambisonics bitrate when bitrate_bps is OPUS_AUTO
...rc/opus_multistream_encoder.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/opus_multistream_encoder.c b/src/opus_multistream_encoder.c
index 30cafe1..c07132f 100644
--- a/src/opus_multistream_encoder.c
+++ b/src/opus_multistream_encoder.c
@@ -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;
}...
2018 Aug 30
0
[PATCH] Apply equal bit allocation to ambisonic channels
...++------------------------------
1 file changed, 6 insertions(+), 51 deletions(-)
diff --git a/src/opus_multistream_encoder.c b/src/opus_multistream_encoder.c
index 6cc1f432..9cb9bf34 100644
--- a/src/opus_multistream_encoder.c
+++ b/src/opus_multistream_encoder.c
@@ -742,20 +742,9 @@ static void ambisonics_rate_allocation(
{
int i;
opus_int32 total_rate;
- opus_int32 directional_rate;
- opus_int32 nondirectional_rate;
- opus_int32 leftover_bits;
-
- /* Each nondirectional channel gets (rate_ratio_num / rate_ratio_den) times
- * as many bits as all other ambisonics channels.
- */
- const int...
2017 Apr 10
2
[Patch] Non-diegetic support for channel mapping 254
...hing to validate for ambisonics?
We do this when determine the (n+1)^2 + 2j listed above, but we can
validate that here as well.
5) For opus_multistream_surround_encoder_init(), the same comments as
for opus_multistream_surround_encoder_get_size() maybe some code can be
shared (if possible)?
6) ambisonics_rate_allocation() again duplicates some of the code from
above. That should be avoided if possible.
Agreed, this is smelly. I will make a new function and call it from all
these places.
I haven't gone through the details of the rate allocation yet, but I
thought I'd give you these comments already.
Che...
2017 Apr 07
2
[Patch] Non-diegetic support for channel mapping 254
Hello all,
Attached is a proposed patch for Opus that allows support for encoding
non-diegetic stereo audio as a coupled stream for use with channel mapping
254. It also rejects channel counts that are not (n+1)^2 + 2j, where n is 0
to 14 and j is either 0 or 1 (See IETF public draft doc attached for
clarification).
Please let me know any suggestions / concerns / comments.
Thank you for your
2017 Apr 07
0
[Patch] Non-diegetic support for channel mapping 254
...PING_TYPE_SURROUND &&
+ !validate_encoder_layout(&st->layout)))
Is there nothing to validate for ambisonics?
5) For opus_multistream_surround_encoder_init(), the same comments as
for opus_multistream_surround_encoder_get_size() maybe some code can be
shared (if possible)?
6) ambisonics_rate_allocation() again duplicates some of the code from
above. That should be avoided if possible.
I haven't gone through the details of the rate allocation yet, but I
thought I'd give you these comments already.
Cheers,
Jean-Marc
On 07/04/17 11:26 AM, Drew Allen wrote:
> Hello all,
>
> At...
2017 Apr 24
0
[Patch] Non-diegetic support for channel mapping 254
...ne the (n+1)^2 + 2j listed above, but we can
> validate that here as well.
>
>
> 5) For opus_multistream_surround_encoder_init(), the same comments as
> for opus_multistream_surround_encoder_get_size() maybe some code can be
> shared (if possible)?
>
> 6) ambisonics_rate_allocation() again duplicates some of the code from
> above. That should be avoided if possible.
>
>
> Agreed, this is smelly. I will make a new function and call it from all
> these places.
>
> I haven't gone through the details of the rate allocation yet, but I
> t...
2017 Apr 25
2
[Patch] Non-diegetic support for channel mapping 254
...can
> > validate that here as well.
> >
> >
> > 5) For opus_multistream_surround_encoder_init(), the same comments as
> > for opus_multistream_surround_encoder_get_size() maybe some code can
> be
> > shared (if possible)?
> >
> > 6) ambisonics_rate_allocation() again duplicates some of the code
> from
> > above. That should be avoided if possible.
> >
> >
> > Agreed, this is smelly. I will make a new function and call it from all
> > these places.
> >
> > I haven't gone through the details of the...