Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No support for 7.1 positioning #573

Open
francisdb opened this issue Nov 2, 2023 · 3 comments
Open

No support for 7.1 positioning #573

francisdb opened this issue Nov 2, 2023 · 3 comments
Assignees
Milestone

Comments

@francisdb
Copy link

francisdb commented Nov 2, 2023

Looks like all the position functions fail with Unsupported audio channels if the number of channels not in [1,2,4,6].
7.1 surround = 8 channels.

switch (channels) {
case 1:
case 2:
f = (_Eff_build_volume_table_u8()) ? _Eff_position_table_u8 :
_Eff_position_u8;
break;
case 4:
f = _Eff_position_u8_c4;
break;
case 6:
f = _Eff_position_u8_c6;
break;
default:
Mix_SetError("Unsupported audio channels");
break;
}


My use case is a pinball emulator where we currently work with BASS and want to switch to SDL2/3_mixer

Internally that emulates a 2 + 4 setup where the pinball backglass has 2 speakers and the playfield has 4 exciters that reproduce ball / flipper / bumper sounds.
The whole system is set up with a single 7.1 sound card where center/lfo channels are not used, Front channels are the backglass and Surround / Back channels the table. Audio positioning code is there but we need to be able to use 7.1.

@icculus
Copy link
Collaborator

icculus commented Nov 2, 2023

I'll take a run at this soon!

@bigwhoopgames
Copy link

Would love for this to support 8 channels as well.

@slouken slouken added this to the 3.0 milestone Jan 14, 2024
@Starbuck5
Copy link

Hello, I've seen several reports of this through pygame-ce.

This manifests when people send out their games using positional audio out into the world. On some systems, 7.1 audio comes up as the default audio format, so this manifests as hardware specific crashes for games.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants