Loading lib_com/ivas_cnst.h +6 −0 Original line number Diff line number Diff line Loading @@ -1204,6 +1204,12 @@ enum #define MASA_BIT_REDUCT_PARAM 10 #define MASA_MAXIMUM_TWO_DIR_BANDS 18 #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION #define MASA_DESC_META_LEVEL2_BRATE IVAS_64k #define MASA_DESC_META_LEVEL3_BRATE IVAS_96k #endif typedef enum { MASA_STEREO_NOT_DEFINED, Loading lib_com/ivas_masa_com.c +31 −0 Original line number Diff line number Diff line Loading @@ -415,3 +415,34 @@ void masa_sample_rate_band_correction( return; } #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /*--------------------------------------------------------------- * ivas_masa_map_meta_channel_layout_to_mc_ls_setup() * * Maps channel layout metadata from descriptive MASA metadata to * MC LS SETUP type. * -------------------------------------------------------------*/ /*! r : multi channel loudspeaker setup */ MC_LS_SETUP ivas_masa_map_meta_channel_layout_to_mc_ls_setup( const uint8_t channelLayout /* i: Input value from descriptive metadata */ ) { switch ( channelLayout ) { case 0x3: return MC_LS_SETUP_5_1; case 0x4: return MC_LS_SETUP_5_1_2; case 0x5: return MC_LS_SETUP_5_1_4; case 0x6: return MC_LS_SETUP_7_1; case 0x7: return MC_LS_SETUP_7_1_4; } return MC_LS_SETUP_INVALID; } #endif lib_com/ivas_prot.h +7 −0 Original line number Diff line number Diff line Loading @@ -4604,6 +4604,13 @@ void ivas_masa_set_coding_config( const uint8_t isMcMasa /* i : toggle for selecting McMASA specific config */ ); #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /*! r : multi channel loudspeaker setup */ MC_LS_SETUP ivas_masa_map_meta_channel_layout_to_mc_ls_setup( const uint8_t channelLayout /* i : Input value from descriptive metadata */ ); #endif /*! r: Surround coherence significant flag */ uint8_t ivas_masa_surrcoh_signicant( float surroundingCoherence[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_FREQUENCY_BANDS], /* i : Surround coherence */ Loading lib_com/ivas_rom_com.c +4 −0 Original line number Diff line number Diff line Loading @@ -2701,7 +2701,11 @@ const int16_t MASA_grouping_24_to_5[24] = /* IVAS_13k2, IVAS_16k4, IVAS_24k4, IVAS_32k, IVAS_48k, IVAS_64k, IVAS_80k, IVAS_96k, IVAS_128k, IVAS_160k, IVAS_192k, IVAS_256k, IVAS_384k, IVAS_512k */ const int16_t masa_bits[IVAS_NUM_ACTIVE_BRATES] = { #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION 50, 60, 70, 85, 140, 188, 228, 266, 360, 442, 538, 842, 1024, MASA_MAX_BITS #else 50, 60, 70, 85, 140, 180, 220, 256, 350, 432, 528, 832, 1024, MASA_MAX_BITS #endif }; const int16_t masa_bits_LR_stereo[4] = Loading lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -164,6 +164,8 @@ #define FIX_390_EXT_REND_MASA_META_COPY /* Nokia: Issue 390: Fixes MASA metadata copying to renderer. */ #define FIX_392_LATE_REVERB /* DLB : Issue 392: keep late reverb by default off when output config is not BINAURAL_ROOM*/ #define NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /* Nokia: Implements transmission and use of descriptive metadata. */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ #endif Loading
lib_com/ivas_cnst.h +6 −0 Original line number Diff line number Diff line Loading @@ -1204,6 +1204,12 @@ enum #define MASA_BIT_REDUCT_PARAM 10 #define MASA_MAXIMUM_TWO_DIR_BANDS 18 #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION #define MASA_DESC_META_LEVEL2_BRATE IVAS_64k #define MASA_DESC_META_LEVEL3_BRATE IVAS_96k #endif typedef enum { MASA_STEREO_NOT_DEFINED, Loading
lib_com/ivas_masa_com.c +31 −0 Original line number Diff line number Diff line Loading @@ -415,3 +415,34 @@ void masa_sample_rate_band_correction( return; } #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /*--------------------------------------------------------------- * ivas_masa_map_meta_channel_layout_to_mc_ls_setup() * * Maps channel layout metadata from descriptive MASA metadata to * MC LS SETUP type. * -------------------------------------------------------------*/ /*! r : multi channel loudspeaker setup */ MC_LS_SETUP ivas_masa_map_meta_channel_layout_to_mc_ls_setup( const uint8_t channelLayout /* i: Input value from descriptive metadata */ ) { switch ( channelLayout ) { case 0x3: return MC_LS_SETUP_5_1; case 0x4: return MC_LS_SETUP_5_1_2; case 0x5: return MC_LS_SETUP_5_1_4; case 0x6: return MC_LS_SETUP_7_1; case 0x7: return MC_LS_SETUP_7_1_4; } return MC_LS_SETUP_INVALID; } #endif
lib_com/ivas_prot.h +7 −0 Original line number Diff line number Diff line Loading @@ -4604,6 +4604,13 @@ void ivas_masa_set_coding_config( const uint8_t isMcMasa /* i : toggle for selecting McMASA specific config */ ); #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /*! r : multi channel loudspeaker setup */ MC_LS_SETUP ivas_masa_map_meta_channel_layout_to_mc_ls_setup( const uint8_t channelLayout /* i : Input value from descriptive metadata */ ); #endif /*! r: Surround coherence significant flag */ uint8_t ivas_masa_surrcoh_signicant( float surroundingCoherence[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_FREQUENCY_BANDS], /* i : Surround coherence */ Loading
lib_com/ivas_rom_com.c +4 −0 Original line number Diff line number Diff line Loading @@ -2701,7 +2701,11 @@ const int16_t MASA_grouping_24_to_5[24] = /* IVAS_13k2, IVAS_16k4, IVAS_24k4, IVAS_32k, IVAS_48k, IVAS_64k, IVAS_80k, IVAS_96k, IVAS_128k, IVAS_160k, IVAS_192k, IVAS_256k, IVAS_384k, IVAS_512k */ const int16_t masa_bits[IVAS_NUM_ACTIVE_BRATES] = { #ifdef NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION 50, 60, 70, 85, 140, 188, 228, 266, 360, 442, 538, 842, 1024, MASA_MAX_BITS #else 50, 60, 70, 85, 140, 180, 220, 256, 350, 432, 528, 832, 1024, MASA_MAX_BITS #endif }; const int16_t masa_bits_LR_stereo[4] = Loading
lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -164,6 +164,8 @@ #define FIX_390_EXT_REND_MASA_META_COPY /* Nokia: Issue 390: Fixes MASA metadata copying to renderer. */ #define FIX_392_LATE_REVERB /* DLB : Issue 392: keep late reverb by default off when output config is not BINAURAL_ROOM*/ #define NOKIA_MASA_DESCRIPTIVE_META_TRANSMISSION /* Nokia: Implements transmission and use of descriptive metadata. */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ #endif