{"7.1", "fl-fr-fc-lfe-bl-br-sl-sr"}, {"7.1(alsa)", "fl-fr-bl-br-fc-lfe-sl-sr"}, // not in lavc {"7.1(wide)", "fl-fr-fc-lfe-bl-br-flc-frc"}, {"7.1(wide-side)", "fl-fr-fc-lfe-flc-frc-sl-sr"}, {"octagonal", "fl-fr-fc-bl-br-bc-sl-sr"}, {"downmix", "dl-dr"}, {0} }; static const struct mp_chmap default_layouts[MP_NUM_CHANNELS + 1] = { {0}, // empty MP_CHMAP_INIT_MONO, // mono MP_CHMAP2(FL, FR), // stereo MP_CHMAP3(FL, FR, LFE), // 2.1 MP_CHMAP4(FL, FR, FC, BC), // 4.0 MP_CHMAP5(FL, FR, FC, BL, BR), // 5.0 MP_CHMAP6(FL, FR, FC, LFE, BL, BR), // 5.1 MP_CHMAP7(FL, FR, FC, LFE, BC, SL, SR), // 6.1 MP_CHMAP8(FL, FR, FC, LFE, BL, BR, SL, SR), // 7.1 }; // The channel order was lavc/waveex, but differs from lavc for 5, 6 and 8 // channels. 3 and 7 channels were likely undefined (no ALSA support). // I'm not sure about the 4 channel case: ALSA uses "quad", while the ffmpeg // default layout is "4.0". static const char *mplayer_layouts[MP_NUM_CHANNELS + 1] = { [1] = "mono", [2] = "stereo", [4] = "quad", [5] = "5.0(alsa)", [6] = "5.1(alsa)",
double audio_end; char *oss_mixer_device; char *cfg_oss_mixer_channel; }; static const char *const mixer_channels[SOUND_MIXER_NRDEVICES] = SOUND_DEVICE_NAMES; /* like alsa except for 6.1 and 7.1, from pcm/matrix_map.h */ static const struct mp_chmap oss_layouts[MP_NUM_CHANNELS + 1] = { {0}, // empty MP_CHMAP_INIT_MONO, // mono MP_CHMAP2(FL, FR), // stereo MP_CHMAP3(FL, FR, LFE), // 2.1 MP_CHMAP4(FL, FR, BL, BR), // 4.0 MP_CHMAP5(FL, FR, BL, BR, FC), // 5.0 MP_CHMAP6(FL, FR, BL, BR, FC, LFE), // 5.1 MP_CHMAP7(FL, FR, BL, BR, FC, LFE, BC), // 6.1 MP_CHMAP8(FL, FR, BL, BR, FC, LFE, SL, SR), // 7.1 }; #if !defined(AFMT_S16_NE) && defined(AFMT_S16_LE) && defined(AFMT_S16_BE) #define AFMT_S16_NE MP_SELECT_LE_BE(AFMT_S16_LE, AFMT_S16_BE) #endif #if !defined(AFMT_S24_NE) && defined(AFMT_S24_LE) && defined(AFMT_S24_BE) #define AFMT_S24_NE MP_SELECT_LE_BE(AFMT_S24_LE, AFMT_S24_BE) #endif #if !defined(AFMT_S32_NE) && defined(AFMT_S32_LE) && defined(AFMT_S32_BE) #define AFMT_S32_NE AFMT_S32MP_SELECT_LE_BE(AFMT_S32_LE, AFMT_S32_BE)