diff --git a/src/internal_modules/roc_audio/channel_layout.cpp b/src/internal_modules/roc_audio/channel_layout.cpp index 82e168761..3b9fa1a2a 100644 --- a/src/internal_modules/roc_audio/channel_layout.cpp +++ b/src/internal_modules/roc_audio/channel_layout.cpp @@ -37,18 +37,18 @@ const char* channel_position_to_str(ChannelPosition position) { case ChanPos_FrontRight: return "FR"; - case ChanPos_SurroundLeft: + case ChanPos_SideLeft: return "SL"; - case ChanPos_SurroundCenter: - return "SC"; - - case ChanPos_SurroundRight: + case ChanPos_SideRight: return "SR"; case ChanPos_BackLeft: return "BL"; + case ChanPos_BackCenter: + return "BC"; + case ChanPos_BackRight: return "BR"; diff --git a/src/internal_modules/roc_audio/channel_layout.h b/src/internal_modules/roc_audio/channel_layout.h index e19525a96..7a4ea7f66 100644 --- a/src/internal_modules/roc_audio/channel_layout.h +++ b/src/internal_modules/roc_audio/channel_layout.h @@ -29,12 +29,16 @@ enum ChannelLayout { //! Multi-channel mono / stereo / surround sound. //! @remarks //! The meaning of channel index is defined by ChannelPosition enum. + //! Channels are mapped according to their position in space, e.g. if + //! top-left channel is missing, it can be mixed from front-left and + //! side-left channels. ChanLayout_Surround, //! Multi-channel multi-track sound. //! @remarks - //! There is no special meaning of channels, they are considered to - //! be independent tracks. + //! There is no special meaning of channels, they are considered to be + //! independent tracks. Channels are mapped according to their numbers; + //! channel N is mapped to channel N and nothing else. ChanLayout_Multitrack }; @@ -57,22 +61,21 @@ enum ChannelPosition { //! @name Surround speakers. //! @remarks - //! Placed behind the user (in surround 4.x, 5.x, or 6.x), - //! or on the sides (in surround 7.x). - //! Also known as "mid" or "side" speakers. + //! Placed on the sides of the user (in surround 7.x). + //! Also known as "mid" speakers. // @{ - ChanPos_SurroundLeft, //!< Surround left (SL). - ChanPos_SurroundCenter, //!< Surround center (SC). - ChanPos_SurroundRight, //!< Surround right (SR). + ChanPos_SideLeft, //!< Side left (SL). + ChanPos_SideRight, //!< Side right (SR). // @} //! @name Back speakers. //! @remarks - //! Placed behind the user (in surround 7.x). + //! Placed behind the user. //! Also known as "rear" speakers. // @{ - ChanPos_BackLeft, //!< Back left (BL). - ChanPos_BackRight, //!< Back right (BR). + ChanPos_BackLeft, //!< Back left (BL). + ChanPos_BackCenter, //!< Back center (BC). + ChanPos_BackRight, //!< Back right (BR). // @} //! @name Top speakers. @@ -165,26 +168,26 @@ static const ChannelMask ChanMask_Surround_3_1 = // | (1 << ChanPos_LowFrequency); //! Surround 4.0. -//! Mask: FL, FR, SL, SR. +//! Mask: FL, FR, BL, BR. //! @code //! +------------------+ //! | FL FR | //! | user | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_4_0 = // (1 << ChanPos_FrontLeft) | (1 << ChanPos_FrontRight) // - | (1 << ChanPos_SurroundLeft) | (1 << ChanPos_SurroundRight); + | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackRight); //! Surround 4.1. -//! Mask: FL, FR, SL, SR | LFE. +//! Mask: FL, FR, BL, BR | LFE. //! @code //! +------------------+ //! | FL FR | //! | user | //! | LFE | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_4_1 = // @@ -192,26 +195,26 @@ static const ChannelMask ChanMask_Surround_4_1 = // | (1 << ChanPos_LowFrequency); //! Surround 5.0. -//! Mask: FL, FC, FR, SL, SR. +//! Mask: FL, FC, FR, BL, BR. //! @code //! +------------------+ //! | FL FC FR | //! | user | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_5_0 = // (1 << ChanPos_FrontLeft) | (1 << ChanPos_FrontCenter) | (1 << ChanPos_FrontRight) // - | (1 << ChanPos_SurroundLeft) | (1 << ChanPos_SurroundRight); + | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackRight); //! Surround 5.1. -//! Mask: FL, FC, FR, SL, SR | LFE. +//! Mask: FL, FC, FR, BL, BR | LFE. //! @code //! +------------------+ //! | FL FC FR | //! | user | //! | LFE | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_5_1 = // @@ -219,14 +222,14 @@ static const ChannelMask ChanMask_Surround_5_1 = // | (1 << ChanPos_LowFrequency); //! Surround 5.1.2. -//! Mask: FL, FC, FR, SL, SR | LFE | TML, TMR. +//! Mask: FL, FC, FR, BL, BR | LFE | TML, TMR. //! @code //! +------------------+ //! | FL FC FR | //! | | //! | TML user TMR | //! | LFE | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_5_1_2 = // @@ -235,7 +238,7 @@ static const ChannelMask ChanMask_Surround_5_1_2 = // | (1 << ChanPos_TopMidLeft) | (1 << ChanPos_TopMidRight); //! Surround 5.1.4. -//! Mask: FL, FC, FR, SL, SR | LFE | TFL, TFR, TBL, TBR. +//! Mask: FL, FC, FR, BL, BR | LFE | TFL, TFR, TBL, TBR. //! @code //! +------------------+ //! | FL FC FR | @@ -243,7 +246,7 @@ static const ChannelMask ChanMask_Surround_5_1_2 = // //! | user | //! | LFE | //! | TBL TBR | -//! | SL SR | +//! | BL BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_5_1_4 = // @@ -253,27 +256,26 @@ static const ChannelMask ChanMask_Surround_5_1_4 = // | (1 << ChanPos_TopBackLeft) | (1 << ChanPos_TopBackRight); //! Surround 6.0. -//! Mask: FL, FC, FR, SL, SC, SR. +//! Mask: FL, FC, FR, BL, BC, BR. //! @code //! +------------------+ //! | FL FC FR | //! | user | -//! | SL SC SR | +//! | BL BC BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_6_0 = // (1 << ChanPos_FrontLeft) | (1 << ChanPos_FrontCenter) | (1 << ChanPos_FrontRight) // - | (1 << ChanPos_SurroundLeft) | (1 << ChanPos_SurroundCenter) - | (1 << ChanPos_SurroundRight); + | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackCenter) | (1 << ChanPos_BackRight); //! Surround 6.1. -//! Mask: FL, FC, FR, SL, SC, SR | LFE. +//! Mask: FL, FC, FR, BL, BC, BR | LFE. //! @code //! +------------------+ //! | FL FC FR | //! | user | //! | LFE | -//! | SL SC SR | +//! | BL BC BR | //! +------------------+ //! @endcode static const ChannelMask ChanMask_Surround_6_1 = // @@ -291,7 +293,7 @@ static const ChannelMask ChanMask_Surround_6_1 = // //! @endcode static const ChannelMask ChanMask_Surround_7_0 = // (1 << ChanPos_FrontLeft) | (1 << ChanPos_FrontCenter) | (1 << ChanPos_FrontRight) // - | (1 << ChanPos_SurroundLeft) | (1 << ChanPos_SurroundRight) // + | (1 << ChanPos_SideLeft) | (1 << ChanPos_SideRight) // | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackRight); //! Surround 7.1. diff --git a/src/internal_modules/roc_audio/channel_mapper_table.cpp b/src/internal_modules/roc_audio/channel_mapper_table.cpp index 898ee3f44..38311a1d3 100644 --- a/src/internal_modules/roc_audio/channel_mapper_table.cpp +++ b/src/internal_modules/roc_audio/channel_mapper_table.cpp @@ -89,8 +89,8 @@ const ChannelMap chan_maps[chan_map_count] = { // FC { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, }, }, { @@ -100,10 +100,10 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -115,15 +115,15 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, // FC { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -138,8 +138,8 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopMidLeft, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopMidRight, 0.500f }, }, @@ -152,12 +152,12 @@ const ChannelMap chan_maps[chan_map_count] = { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, { ChanPos_FrontLeft, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopMidLeft, 0.707f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, @@ -170,13 +170,13 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopMidLeft, 0.707f }, // FC { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, @@ -195,12 +195,12 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopMidLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopMidRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopMidLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -218,12 +218,12 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopMidLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopMidRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopMidLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -238,8 +238,8 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopFrontLeft, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopFrontRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopBackLeft, 0.354f }, @@ -254,13 +254,13 @@ const ChannelMap chan_maps[chan_map_count] = { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, { ChanPos_FrontLeft, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopFrontLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopBackLeft, 0.500f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopBackRight, 0.500f }, // LFE @@ -274,14 +274,14 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopFrontLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopBackLeft, 0.500f }, // FC { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopBackRight, 0.500f }, // LFE @@ -301,12 +301,12 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -324,12 +324,12 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -347,12 +347,12 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // TML { ChanPos_TopMidLeft, ChanPos_TopFrontLeft, 1.000f }, { ChanPos_TopMidLeft, ChanPos_TopBackLeft, 1.000f }, @@ -373,9 +373,9 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundCenter, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackCenter, 0.707f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, }, }, { @@ -386,13 +386,13 @@ const ChannelMap chan_maps[chan_map_count] = { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, { ChanPos_FrontLeft, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundCenter, 0.500f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackCenter, 0.500f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundCenter, 0.500f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackCenter, 0.500f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -404,18 +404,18 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundCenter, 0.500f }, + { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_BackCenter, 0.500f }, // FC { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundCenter, 0.500f }, + { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_BackCenter, 0.500f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -431,12 +431,12 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_SurroundCenter, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_SurroundCenter, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackCenter, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackCenter, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -452,20 +452,20 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_SurroundCenter, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_SurroundCenter, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackCenter, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackCenter, 0.707f }, // TML { ChanPos_TopMidLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_TopMidLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_TopMidLeft, ChanPos_SurroundCenter, 0.707f }, + { ChanPos_TopMidLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_TopMidLeft, ChanPos_BackCenter, 0.707f }, // TMR { ChanPos_TopMidRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_TopMidRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_TopMidRight, ChanPos_SurroundCenter, 0.707f }, + { ChanPos_TopMidRight, ChanPos_BackRight, 1.000f }, + { ChanPos_TopMidRight, ChanPos_BackCenter, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -481,22 +481,22 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_SurroundCenter, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_SurroundCenter, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackCenter, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackCenter, 0.707f }, // TFL { ChanPos_TopFrontLeft, ChanPos_FrontLeft, 1.000f }, // TFR { ChanPos_TopFrontRight, ChanPos_FrontRight, 1.000f }, // TBL - { ChanPos_TopBackLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_TopBackLeft, ChanPos_SurroundCenter, 0.707f }, + { ChanPos_TopBackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_TopBackLeft, ChanPos_BackCenter, 0.707f }, // TBR - { ChanPos_TopBackRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_TopBackRight, ChanPos_SurroundCenter, 0.707f }, + { ChanPos_TopBackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_TopBackRight, ChanPos_BackCenter, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -511,8 +511,8 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_SideLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_SideRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopMidLeft, 0.500f }, @@ -527,13 +527,13 @@ const ChannelMap chan_maps[chan_map_count] = { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, { ChanPos_FrontLeft, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_SideLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopMidLeft, 0.707f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_SideRight, 0.707f }, { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, // LFE @@ -547,14 +547,14 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_SideLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopMidLeft, 0.707f }, // FC { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_SideRight, 0.707f }, { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, // LFE @@ -574,14 +574,14 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopMidLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopMidRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopMidLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -597,12 +597,12 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, // TML { ChanPos_TopMidLeft, ChanPos_TopMidLeft, 1.000f }, // TMR @@ -622,12 +622,12 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, // TFL { ChanPos_TopFrontLeft, ChanPos_TopMidLeft, 1.000f }, // TFR @@ -653,20 +653,20 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopMidRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopMidLeft, 0.707f }, - // SC - { ChanPos_SurroundCenter, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_TopMidLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopMidRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopMidLeft, 0.707f }, + // BC + { ChanPos_BackCenter, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackCenter, ChanPos_SideRight, 1.000f }, + { ChanPos_BackCenter, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackCenter, ChanPos_BackRight, 1.000f }, + { ChanPos_BackCenter, ChanPos_TopMidLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopMidRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -683,11 +683,11 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopMidLeft, 0.707f }, + { ChanPos_SideLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_SideLeft, ChanPos_TopMidLeft, 0.707f }, // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopMidRight, 0.707f }, + { ChanPos_SideRight, ChanPos_SideRight, 1.000f }, + { ChanPos_SideRight, ChanPos_TopMidRight, 0.707f }, // BL { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, // BR @@ -706,8 +706,8 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontLeft, 0.707f }, { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, { ChanPos_FrontCenter, ChanPos_FrontRight, 0.707f }, - { ChanPos_FrontCenter, ChanPos_SurroundLeft, 0.500f }, - { ChanPos_FrontCenter, ChanPos_SurroundRight, 0.500f }, + { ChanPos_FrontCenter, ChanPos_SideLeft, 0.500f }, + { ChanPos_FrontCenter, ChanPos_SideRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_BackLeft, 0.500f }, { ChanPos_FrontCenter, ChanPos_BackRight, 0.500f }, { ChanPos_FrontCenter, ChanPos_TopFrontLeft, 0.500f }, @@ -724,14 +724,14 @@ const ChannelMap chan_maps[chan_map_count] = { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, { ChanPos_FrontLeft, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_SideLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopFrontLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopBackLeft, 0.500f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_SideRight, 0.707f }, { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopBackRight, 0.500f }, @@ -746,7 +746,7 @@ const ChannelMap chan_maps[chan_map_count] = { { // FL { ChanPos_FrontLeft, ChanPos_FrontLeft, 1.000f }, - { ChanPos_FrontLeft, ChanPos_SurroundLeft, 0.707f }, + { ChanPos_FrontLeft, ChanPos_SideLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_BackLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopFrontLeft, 0.707f }, { ChanPos_FrontLeft, ChanPos_TopBackLeft, 0.500f }, @@ -754,7 +754,7 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - { ChanPos_FrontRight, ChanPos_SurroundRight, 0.707f }, + { ChanPos_FrontRight, ChanPos_SideRight, 0.707f }, { ChanPos_FrontRight, ChanPos_BackRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, { ChanPos_FrontRight, ChanPos_TopBackRight, 0.500f }, @@ -775,14 +775,14 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_FrontCenter, 0.707f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -800,14 +800,14 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // TML { ChanPos_TopMidLeft, ChanPos_TopFrontLeft, 1.000f }, { ChanPos_TopMidLeft, ChanPos_TopBackLeft, 1.000f }, @@ -829,12 +829,12 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontCenter, ChanPos_FrontCenter, 1.000f }, // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, // TFL { ChanPos_TopFrontLeft, ChanPos_TopFrontLeft, 1.000f }, // TFR @@ -860,21 +860,21 @@ const ChannelMap chan_maps[chan_map_count] = { // FR { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, - // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundLeft, ChanPos_TopBackLeft, 0.707f }, - // SC - { ChanPos_SurroundCenter, ChanPos_SurroundLeft, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_BackLeft, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundCenter, ChanPos_TopBackLeft, 0.707f }, - { ChanPos_SurroundCenter, ChanPos_TopBackRight, 0.707f }, - // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_BackRight, 1.000f }, - { ChanPos_SurroundRight, ChanPos_TopBackRight, 0.707f }, + // BL + { ChanPos_BackLeft, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, + // BC + { ChanPos_BackCenter, ChanPos_SideLeft, 1.000f }, + { ChanPos_BackCenter, ChanPos_SideRight, 1.000f }, + { ChanPos_BackCenter, ChanPos_BackLeft, 1.000f }, + { ChanPos_BackCenter, ChanPos_BackRight, 1.000f }, + { ChanPos_BackCenter, ChanPos_TopBackLeft, 0.707f }, + { ChanPos_BackCenter, ChanPos_TopBackRight, 0.707f }, + // BR + { ChanPos_BackRight, ChanPos_SideRight, 1.000f }, + { ChanPos_BackRight, ChanPos_BackRight, 1.000f }, + { ChanPos_BackRight, ChanPos_TopBackRight, 0.707f }, // LFE { ChanPos_LowFrequency, ChanPos_LowFrequency, 1.000f }, }, @@ -893,9 +893,9 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, + { ChanPos_SideLeft, ChanPos_SideLeft, 1.000f }, // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, + { ChanPos_SideRight, ChanPos_SideRight, 1.000f }, // BL { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, @@ -920,9 +920,9 @@ const ChannelMap chan_maps[chan_map_count] = { { ChanPos_FrontRight, ChanPos_FrontRight, 1.000f }, { ChanPos_FrontRight, ChanPos_TopFrontRight, 0.707f }, // SL - { ChanPos_SurroundLeft, ChanPos_SurroundLeft, 1.000f }, + { ChanPos_SideLeft, ChanPos_SideLeft, 1.000f }, // SR - { ChanPos_SurroundRight, ChanPos_SurroundRight, 1.000f }, + { ChanPos_SideRight, ChanPos_SideRight, 1.000f }, // BL { ChanPos_BackLeft, ChanPos_BackLeft, 1.000f }, { ChanPos_BackLeft, ChanPos_TopBackLeft, 0.707f }, diff --git a/src/tests/roc_audio/test_channel_mapper.cpp b/src/tests/roc_audio/test_channel_mapper.cpp index ba6f24d47..c21458cb0 100644 --- a/src/tests/roc_audio/test_channel_mapper.cpp +++ b/src/tests/roc_audio/test_channel_mapper.cpp @@ -170,7 +170,7 @@ TEST(channel_mapper, surround_61_41) { sample_t slev = 0.707f / (1.000f + 0.707f); sample_t input[NumSamples * 7] = { - // FL FC FR SL SC SR LFE + // FL FC FR BL BC BR LFE 0.01f, 0.02f, 0.03f, 0.04f, 0.05f, 0.06f, 0.07f, // 0 0.11f, 0.12f, 0.13f, 0.14f, 0.15f, 0.16f, 0.17f, // 1 0.21f, 0.22f, 0.23f, 0.24f, 0.25f, 0.26f, 0.27f, // 2 @@ -182,32 +182,32 @@ TEST(channel_mapper, surround_61_41) { // 0 clev * 0.01f + slev * 0.02f, // FL clev * 0.03f + slev * 0.02f, // FR - clev * 0.04f + slev * 0.05f, // SL - clev * 0.06f + slev * 0.05f, // SR + clev * 0.04f + slev * 0.05f, // BL + clev * 0.06f + slev * 0.05f, // BR 0.07f, // LFE // 1 clev * 0.11f + slev * 0.12f, // FL clev * 0.13f + slev * 0.12f, // FR - clev * 0.14f + slev * 0.15f, // SL - clev * 0.16f + slev * 0.15f, // SR + clev * 0.14f + slev * 0.15f, // BL + clev * 0.16f + slev * 0.15f, // BR 0.17f, // LFE // 2 clev * 0.21f + slev * 0.22f, // FL clev * 0.23f + slev * 0.22f, // FR - clev * 0.24f + slev * 0.25f, // SL - clev * 0.26f + slev * 0.25f, // SR + clev * 0.24f + slev * 0.25f, // BL + clev * 0.26f + slev * 0.25f, // BR 0.27f, // LFE // 3 clev * 0.31f + slev * 0.32f, // FL clev * 0.33f + slev * 0.32f, // FR - clev * 0.34f + slev * 0.35f, // SL - clev * 0.36f + slev * 0.35f, // SR + clev * 0.34f + slev * 0.35f, // BL + clev * 0.36f + slev * 0.35f, // BR 0.37f, // LFE // 4 clev * 0.41f + slev * 0.42f, // FL clev * 0.43f + slev * 0.42f, // FR - clev * 0.44f + slev * 0.45f, // SL - clev * 0.46f + slev * 0.45f, // SR + clev * 0.44f + slev * 0.45f, // BL + clev * 0.46f + slev * 0.45f, // BR 0.47f, // LFE }; @@ -226,7 +226,7 @@ TEST(channel_mapper, surround_60_41) { sample_t slev = 0.707f / (1.000f + 0.707f); sample_t input[NumSamples * 7] = { - // FL FC FR SL SC SR + // FL FC FR BL BC BR 0.01f, 0.02f, 0.03f, 0.04f, 0.05f, 0.06f, // 0 0.11f, 0.12f, 0.13f, 0.14f, 0.15f, 0.16f, // 1 0.21f, 0.22f, 0.23f, 0.24f, 0.25f, 0.26f, // 2 @@ -238,32 +238,32 @@ TEST(channel_mapper, surround_60_41) { // 0 clev * 0.01f + slev * 0.02f, // FL clev * 0.03f + slev * 0.02f, // FR - clev * 0.04f + slev * 0.05f, // SL - clev * 0.06f + slev * 0.05f, // SR + clev * 0.04f + slev * 0.05f, // BL + clev * 0.06f + slev * 0.05f, // BR 0.f, // LFE // 1 clev * 0.11f + slev * 0.12f, // FL clev * 0.13f + slev * 0.12f, // FR - clev * 0.14f + slev * 0.15f, // SL - clev * 0.16f + slev * 0.15f, // SR + clev * 0.14f + slev * 0.15f, // BL + clev * 0.16f + slev * 0.15f, // BR 0.f, // LFE // 2 clev * 0.21f + slev * 0.22f, // FL clev * 0.23f + slev * 0.22f, // FR - clev * 0.24f + slev * 0.25f, // SL - clev * 0.26f + slev * 0.25f, // SR + clev * 0.24f + slev * 0.25f, // BL + clev * 0.26f + slev * 0.25f, // BR 0.f, // LFE // 3 clev * 0.31f + slev * 0.32f, // FL clev * 0.33f + slev * 0.32f, // FR - clev * 0.34f + slev * 0.35f, // SL - clev * 0.36f + slev * 0.35f, // SR + clev * 0.34f + slev * 0.35f, // BL + clev * 0.36f + slev * 0.35f, // BR 0.f, // LFE // 4 clev * 0.41f + slev * 0.42f, // FL clev * 0.43f + slev * 0.42f, // FR - clev * 0.44f + slev * 0.45f, // SL - clev * 0.46f + slev * 0.45f, // SR + clev * 0.44f + slev * 0.45f, // BL + clev * 0.46f + slev * 0.45f, // BR 0.f, // LFE }; @@ -282,7 +282,7 @@ TEST(channel_mapper, surround_61_40) { sample_t slev = 0.707f / (1.000f + 0.707f); sample_t input[NumSamples * 7] = { - // FL FC FR SL SC SR LFE + // FL FC FR BL BC BR LFE 0.01f, 0.02f, 0.03f, 0.04f, 0.05f, 0.06f, 0.07f, // 0 0.11f, 0.12f, 0.13f, 0.14f, 0.15f, 0.16f, 0.17f, // 1 0.21f, 0.22f, 0.23f, 0.24f, 0.25f, 0.26f, 0.27f, // 2 @@ -294,28 +294,28 @@ TEST(channel_mapper, surround_61_40) { // 0 clev * 0.01f + slev * 0.02f, // FL clev * 0.03f + slev * 0.02f, // FR - clev * 0.04f + slev * 0.05f, // SL - clev * 0.06f + slev * 0.05f, // SR + clev * 0.04f + slev * 0.05f, // BL + clev * 0.06f + slev * 0.05f, // BR // 1 clev * 0.11f + slev * 0.12f, // FL clev * 0.13f + slev * 0.12f, // FR - clev * 0.14f + slev * 0.15f, // SL - clev * 0.16f + slev * 0.15f, // SR + clev * 0.14f + slev * 0.15f, // BL + clev * 0.16f + slev * 0.15f, // BR // 2 clev * 0.21f + slev * 0.22f, // FL clev * 0.23f + slev * 0.22f, // FR - clev * 0.24f + slev * 0.25f, // SL - clev * 0.26f + slev * 0.25f, // SR + clev * 0.24f + slev * 0.25f, // BL + clev * 0.26f + slev * 0.25f, // BR // 3 clev * 0.31f + slev * 0.32f, // FL clev * 0.33f + slev * 0.32f, // FR - clev * 0.34f + slev * 0.35f, // SL - clev * 0.36f + slev * 0.35f, // SR + clev * 0.34f + slev * 0.35f, // BL + clev * 0.36f + slev * 0.35f, // BR // 4 clev * 0.41f + slev * 0.42f, // FL clev * 0.43f + slev * 0.42f, // FR - clev * 0.44f + slev * 0.45f, // SL - clev * 0.46f + slev * 0.45f, // SR + clev * 0.44f + slev * 0.45f, // BL + clev * 0.46f + slev * 0.45f, // BR }; check(input, output, NumSamples, ChanLayout_Surround, InChans, ChanLayout_Surround, @@ -327,18 +327,18 @@ TEST(channel_mapper, surround_6x_4x) { NumSamples = 5, // missing FC InChans = (1 << ChanPos_FrontLeft) | (1 << ChanPos_FrontRight) - | (1 << ChanPos_SurroundLeft) | (1 << ChanPos_SurroundCenter) - | (1 << ChanPos_SurroundRight), + | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackCenter) + | (1 << ChanPos_BackRight), // missing FR - OutChans = (1 << ChanPos_FrontLeft) | (1 << ChanPos_SurroundLeft) - | (1 << ChanPos_SurroundRight) + OutChans = + (1 << ChanPos_FrontLeft) | (1 << ChanPos_BackLeft) | (1 << ChanPos_BackRight) }; sample_t clev = 1.000f / (1.000f + 0.707f); sample_t slev = 0.707f / (1.000f + 0.707f); sample_t input[NumSamples * 5] = { - // FL FR SL SC SR + // FL FR BL BC BR 0.01f, 0.03f, 0.04f, 0.05f, 0.06f, // 0 0.11f, 0.13f, 0.14f, 0.15f, 0.16f, // 1 0.21f, 0.23f, 0.24f, 0.25f, 0.26f, // 2 @@ -349,24 +349,24 @@ TEST(channel_mapper, surround_6x_4x) { sample_t output[NumSamples * 3] = { // 0 0.01f, // FL - clev * 0.04f + slev * 0.05f, // SL - clev * 0.06f + slev * 0.05f, // SR + clev * 0.04f + slev * 0.05f, // BL + clev * 0.06f + slev * 0.05f, // BR // 1 0.11f, // FL - clev * 0.14f + slev * 0.15f, // SL - clev * 0.16f + slev * 0.15f, // SR + clev * 0.14f + slev * 0.15f, // BL + clev * 0.16f + slev * 0.15f, // BR // 2 0.21f, // FL - clev * 0.24f + slev * 0.25f, // SL - clev * 0.26f + slev * 0.25f, // SR + clev * 0.24f + slev * 0.25f, // BL + clev * 0.26f + slev * 0.25f, // BR // 3 0.31f, // FL - clev * 0.34f + slev * 0.35f, // SL - clev * 0.36f + slev * 0.35f, // SR + clev * 0.34f + slev * 0.35f, // BL + clev * 0.36f + slev * 0.35f, // BR // 4 0.41f, // FL - clev * 0.44f + slev * 0.45f, // SL - clev * 0.46f + slev * 0.45f, // SR + clev * 0.44f + slev * 0.45f, // BL + clev * 0.46f + slev * 0.45f, // BR }; check(input, output, NumSamples, ChanLayout_Surround, InChans, ChanLayout_Surround, @@ -383,7 +383,7 @@ TEST(channel_mapper, surround_41_61) { sample_t lev = (1.f / 0.707f) / (2.f / 0.707f); sample_t input[NumSamples * 5] = { - // FL FR SL SR LFE + // FL FR BL BR LFE 0.01f, 0.02f, 0.03f, 0.04f, 0.05f, // 0 0.11f, 0.12f, 0.13f, 0.14f, 0.15f, // 1 0.21f, 0.22f, 0.23f, 0.24f, 0.25f, // 2 @@ -396,41 +396,41 @@ TEST(channel_mapper, surround_41_61) { 0.01f, // FL lev * 0.01f + lev * 0.02f, // FC 0.02f, // FR - 0.03f, // SL - lev * 0.03f + lev * 0.04f, // SC - 0.04f, // SR + 0.03f, // BL + lev * 0.03f + lev * 0.04f, // BC + 0.04f, // BR 0.05f, // LFE // 1 0.11f, // FL lev * 0.11f + lev * 0.12f, // FC 0.12f, // FR - 0.13f, // SL - lev * 0.13f + lev * 0.14f, // SC - 0.14f, // SR + 0.13f, // BL + lev * 0.13f + lev * 0.14f, // BC + 0.14f, // BR 0.15f, // LFE // 2 0.21f, // FL lev * 0.21f + lev * 0.22f, // FC 0.22f, // FR - 0.23f, // SL - lev * 0.23f + lev * 0.24f, // SC - 0.24f, // SR + 0.23f, // BL + lev * 0.23f + lev * 0.24f, // BC + 0.24f, // BR 0.25f, // LFE // 3 0.31f, // FL lev * 0.31f + lev * 0.32f, // FC 0.32f, // FR - 0.33f, // SL - lev * 0.33f + lev * 0.34f, // SC - 0.34f, // SR + 0.33f, // BL + lev * 0.33f + lev * 0.34f, // BC + 0.34f, // BR 0.35f, // LFE // 4 0.41f, // FL lev * 0.41f + lev * 0.42f, // FC 0.42f, // FR - 0.43f, // SL - lev * 0.43f + lev * 0.44f, // SC - 0.44f, // SR + 0.43f, // BL + lev * 0.43f + lev * 0.44f, // BC + 0.44f, // BR 0.45f, // LFE };