Use ambisonics families 2 and 3 instead of 254 and 253 master
authorJean-Marc Valin <jmvalin@jmvalin.ca>
Fri, 27 Jul 2018 00:11:52 +0000 (20:11 -0400)
committerJean-Marc Valin <jmvalin@jmvalin.ca>
Fri, 27 Jul 2018 00:11:52 +0000 (20:11 -0400)
src/opus_header.c
src/opusenc.c

index 3bff01d..a53b51d 100644 (file)
@@ -41,7 +41,8 @@
   - Sampling rate (32 bits)
   - Gain in dB (16 bits, S7.8)
   - Mapping (8 bits, 0=single stream (mono/stereo) 1=Vorbis mapping,
-             2..254: reserved, 255: multistream with no mapping)
+             2=ambisonics, 3=projection ambisonics, 4..239: reserved,
+             240..254: experiments, 255: multistream with no mapping)
 
   - if (mapping != 0)
      - N = total number of streams (8 bits)
index 6ce159c..903f5c5 100644 (file)
@@ -178,7 +178,7 @@ struct EncStream {
 };
 
 int opeint_use_projection(int channel_mapping) {
-  if (channel_mapping==253){
+  if (channel_mapping==3){
     return 1;
   }
   return 0;
@@ -368,7 +368,7 @@ OggOpusEnc *ope_encoder_create_callbacks(const OpusEncCallbacks *callbacks, void
   int ret;
   if (family != 0 && family != 1 &&
 #ifdef OPUS_HAVE_OPUS_PROJECTION_H
-      family != 253 && family != 254 &&
+      family != 2 && family != 3 &&
 #endif
       family != 255 && family != -1) {
     if (error) {
@@ -476,7 +476,7 @@ int ope_encoder_deferred_init_with_mapping(OggOpusEnc *enc, int family, int stre
   if (family < 0 || family > 255) return OPE_BAD_ARG;
   else if (family != 1 &&
   #ifdef OPUS_HAVE_OPUS_PROJECTION_H
-      family != 254 &&
+      family != 2 &&
   #endif
       family != 255) return OPE_UNIMPLEMENTED;
   else if (streams <= 0 || streams>255 || coupled_streams<0 || coupled_streams >= 128 || streams+coupled_streams > 255) return OPE_BAD_ARG;