Replies: 15 comments 78 replies
-
After a great deal of frustration, I discovered that the sound manager ignores microphones with position |
Beta Was this translation helpful? Give feedback.
-
Already mentioned this to @galibert, but it would be nice to decouple display names from configuration strings. On Windows, display names can be changed easily, but endpoint IDs are fairly stable. Display names look like |
Beta Was this translation helpful? Give feedback.
-
Is there going to be a way to tell MAME the frequency range that speakers are expected to have? Windows lets you know which channel is the low-frequency effects output (if any) and which channels the user has indicated are “full range” speakers (i.e. having full bass, mid and treble reproduction capabilities, while speakers that are not “full range” can be expected to lack bass response). |
Beta Was this translation helpful? Give feedback.
-
Is there going to be a way to help the OSD synchronise audio across streams? For example, XAudio2 makes it easy to synchronise streams for a single output device, but MAME doesn’t really tell you timing information about updates. I could do something hacky, like after a stream is created, flush all existing streams on the device, then atomically start them on the next update. But that feels dirty. |
Beta Was this translation helpful? Give feedback.
-
Not sure if I am permitted to talk here, but I investigated why xaudio2 crashes MAME when Shift F3 is pressed. in emu/sound.cpp, there's a sub-function called find_node_info, which tries to find the node which matches the number passed in. If it fails, then nullptr is returned, and then the caller crashes. (line 2006) I added printfs to find out what node number is passed, and what node numbers exist, both before and after the Shift F3.
This shows that each sound choice (not sure what they should collectively be called) has its own way of deciding node numbers. Some consistency would probably be a good idea. Hopefully this should help in tracking down the crash bug in xaudio2. |
Beta Was this translation helpful? Give feedback.
-
DirectSound is completely stupid. Since Vista, it’s always emulated on top of WASAPI (Vista no longer supports native DirectSound drivers). The emulation doesn’t give accurate play cursor positions, and subscribing to notifications when specific positions in the buffer are reached is completely broken. It seems to be far worse in Windows 10 than it was in Vista, too. Can we just ditch it at this point? |
Beta Was this translation helpful? Give feedback.
-
Bug with portaudio. If portaudio is used, with any choice, it's fine. But if Shift F3 is pressed, then the volume increases dramatically to the point of being overdriven and grossly distorted. Doesn't happen with all games, but it does happen with yosakdon and pacman. There's no problem with eightman though. |
Beta Was this translation helpful? Give feedback.
-
The change to the meaning of audio_latency causes a terrible user experience that we're going to spend the rest of the year explaining to users. If the value is integer, it should compute what that means in the new units and use that. And then print a friendlier warning that tells what it was changed to and suggest running with -cc to make the new units permanent. |
Beta Was this translation helpful? Give feedback.
-
Somewhere in the last week MAME started ignoring the node names I pass back in get_information(), so my choices in the mixer are now [default], , , and , which is no fun. Yes I've verified the names are still being passed back correctly. Portaudio and SDL work fine, so something changed and it's not documented. If m_generation is ever anything other than 1 MAME locks up when you enter the mixer and try to change anything. The resampling to run devices at their nominal rate works great. I ran mu50 and played an entire song on my phone next to a microphone and it all came through fine. |
Beta Was this translation helpful? Give feedback.
-
The comments in SDL2/SDL_audio.h suggest capture is supported starting in 2.0.5, contradicting the comment in sound/sdl_sound.cpp. I know the docs for SDL are pretty dreadful, but it may be possible to get input working with SDL. |
Beta Was this translation helpful? Give feedback.
-
UI question: MG would really like to be able to record the sound post-effects. It's kinda complicated but heh, why not. But where should the option be reachable? |
Beta Was this translation helpful? Give feedback.
-
I found another crash apparently caused by something in the new sound system changes. Run
It doesn’t crash like this if you start it with the VGM, only if you start it with no VGM then try to load one using the File Manager menu. |
Beta Was this translation helpful? Give feedback.
-
@galibert is it worth keeping the code to support |
Beta Was this translation helpful? Give feedback.
-
The default compressor is causing some really odd transient audio breakups. One pretty simple reproduce (wear headphones):
The issues don't appear in -wavwrite with the effects on, which is what led me to find it was the compressor's fault. This also happens in 'mame apple2gs nucleus' and 'mame macqd700' when playing an audio CD, so it's not linked to any specific driver or sound chip. |
Beta Was this translation helpful? Give feedback.
-
Reporting a possible issue in the Under certain uncommon conditions, there can be an infinite loop in This seems to happen when one or more streams do not have an output, though only under certain routing configurations. Can reproduce by patching in: m1macrophage/mamefork@5462d6d |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
A place to discuss development issues with the new sound system, and hopefully get the attention of @galibert.
Beta Was this translation helpful? Give feedback.
All reactions