You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.7 KiB
C++
48 lines
1.7 KiB
C++
#ifndef GUARD_QUICK_AS_A_FLASH_NONTABBED_GAMBO_BRAIRDS_7643
|
|
#define GUARD_QUICK_AS_A_FLASH_NONTABBED_GAMBO_BRAIRDS_7643
|
|
#pragma once
|
|
|
|
// Freesurround note from https://hydrogenaud.io/index.php/topic,52235.0.html
|
|
// There is one little catch with the more exotic channels: foobar2000 (or
|
|
// Windows) do not expose some of the rarely used positions but instead allow to
|
|
// connect "top" speakers (meant for the ceiling). Therefore there is a bit of
|
|
// remapping going on for these positions: If you have 'side front left'/'side
|
|
// front right' speakers, connect them to the 'top front left'/'top front right'
|
|
// channels, if you have 'side back left/right' connect them to 'top back
|
|
// left/right', and if you have 'back center left/right' speakers you need to
|
|
// connect them to the 'top front center' and 'top back center' channels,
|
|
// respectively.
|
|
|
|
namespace Channel
|
|
{
|
|
enum E // same order as pipewire
|
|
{
|
|
FRONT_LEFT, FRONT_RIGHT,
|
|
FRONT_CENTER, LFE,
|
|
SIDE_LEFT, SIDE_RIGHT,
|
|
FRONT_LEFT_CENTER, FRONT_RIGHT_CENTER,
|
|
REAR_CENTER,
|
|
REAR_LEFT, REAR_RIGHT,
|
|
// TOP_*
|
|
REAR_LEFT_CENTER, REAR_RIGHT_CENTER,
|
|
// Not in Pipewire:
|
|
SIDE_FRONT_LEFT, SIDE_FRONT_RIGHT,
|
|
SIDE_BACK_LEFT, SIDE_BACK_RIGHT,
|
|
N_CHANNELS
|
|
};
|
|
|
|
constexpr inline const char* NAMES_PIPEWIRE[N_CHANNELS] = {
|
|
[FRONT_LEFT] = "FL", [FRONT_RIGHT] = "FR",
|
|
[FRONT_CENTER] = "FC", [LFE] = "LFE",
|
|
[SIDE_LEFT] = "SL", [SIDE_RIGHT] = "SR",
|
|
[FRONT_LEFT_CENTER] = "FLC", [FRONT_RIGHT_CENTER] = "FRC",
|
|
[REAR_CENTER] = "RC",
|
|
[REAR_LEFT] = "RL", [REAR_RIGHT] = "RR",
|
|
[REAR_LEFT_CENTER] = "RLC", [REAR_RIGHT_CENTER] = "RRC",
|
|
[SIDE_FRONT_LEFT] = "SFL", [SIDE_FRONT_RIGHT] = "SFR",
|
|
[SIDE_BACK_LEFT] = "SBL", [SIDE_BACK_RIGHT] = "SBR",
|
|
};
|
|
}
|
|
|
|
#endif
|