Jump to content
lilcheeks

Another audio issue with Hyperspin and port audio

Recommended Posts

I am running the latest version of MAME64, Hyperspin, and RocketLauncher.  I enabled port audio with new settings below, and now when i launch a game from Hyperspin, I get no audio at all.  The games play normal, but with no sound.  If I exit, Hyperspin has sound.  I tried launching ROMs from MAME64 directly, and they sound perfect.  I also launched from within RocketLauncherUI and they work perfect there too.  Any help??

 

#
# OSD SOUND OPTIONS
#
sound                     portaudio
audio_latency             1

#
# PORTAUDIO OPTIONS
#
pa_api                    "Windows WDM-KS"    
pa_device                 default
pa_latency                0.001

 

  • Upvote 1

Share this post


Link to post
Share on other sites
On 28/1/2017 at 6:03 PM, lilcheeks said:

I am running the latest version of MAME64, Hyperspin, and RocketLauncher.  I enabled port audio with new settings below, and now when i launch a game from Hyperspin, I get no audio at all.  The games play normal, but with no sound.  If I exit, Hyperspin has sound.  I tried launching ROMs from MAME64 directly, and they sound perfect.  I also launched from within RocketLauncherUI and they work perfect there too.  Any help??

 

#
# OSD SOUND OPTIONS
#
sound                     portaudio
audio_latency             1

#
# PORTAUDIO OPTIONS
#
pa_api                    "Windows WDM-KS"    
pa_device                 default
pa_latency                0.001

 

The same issue for me.

This is a Hyperspin incompatibility with the new Mame portaudio function.

Please Hyperspin's developers solve this problem.

I think Hyperspin need an update. 

Thanks. 

Share this post


Link to post
Share on other sites

My issue is that once I exit a game and return to Hyperspin there is no audio in Hyperspin and the game videos lock up after a couple of seconds.

In other threads here from the past posters about this (it was to do with asio back then) they said a simple fix was to restart the audio service on game exit, where (in Rocketlauncher I assume) do I set this up?

Share this post


Link to post
Share on other sites

Okay so managed to script (into mame.ahk) the restarting of the audio service on game exit but this hack (hacks arent a bad thing when they work) doesn't restore audio to hyperspin more than one time.

To me, the game emulation comes first and I wasn't going to use anything other than the lowest audio latency (available) with mame. So I came up with the following working solution for this problem.

 

The way the solution works is you have Hyperspin and Mame each outputting to separate audio devices.

First, you need a second soundcard/audio device, if you don't have one, a cheap USB sound adapter is easy to get hold of and install (you just plug it into a free usb port).

Then you will need to decide how you are going to get the sound from the second audio device to the speaker(s). Probably the neatest way is to combine both audio outputs into (your) one amplifier, so you'll need a kind of audio mixer. Here is a fairly simple DIY box that can be made cheaply.

Now the final step is to get actually configure Mame and Hyperspin on separate sound cards. Whichever sound device you want Mame to use make sure that that one is not the 'default device' in the audio configuration in windows. Hyperspin will always use whatever is set as 'default device' for audio.
What you have to do now is to tell mame to use the other (non 'default device' sound card) for sound output. You configure this in the mame.ini file but first you have to find out the actual name of the sound device.

Create a mame log file (I run groovymame  and I don't know if this same command works for standard mame)

Steps to create a log:

- Run GroovyMAME like this:

c:\mame_folder>mame64.exe romname -v >romname.txt

Look at your log file and you will see 

PortAudio: API MME has 6 devices
PortAudio: MME: "Microsoft Sound Mapper - Input"
PortAudio: MME: "Microphone (USB Audio Device)"
PortAudio: MME: "Microsoft Sound Mapper - Output"
PortAudio: MME: "Speakers (USB Audio Device)"
PortAudio: MME: "Speakers (Realtek High
Definiti"
PortAudio: MME: "Realtek Digital Output (Realtek"
PortAudio: API Windows DirectSound has 6 devices
PortAudio: Windows DirectSound: "Primary Sound Capture Driver"
PortAudio: Windows DirectSound: "Microphone (USB Audio Device)"
PortAudio: Windows DirectSound: "Primary Sound Driver" (default)
PortAudio: Windows DirectSound: "Speakers (USB Audio Device)"
PortAudio: Windows DirectSound: "Speakers (Realtek High Definition Audio)"
PortAudio: Windows DirectSound: "Realtek Digital Output (Realtek High Definition Audio)"
PortAudio: API Windows WASAPI has 4 devices
PortAudio: Windows WASAPI: "Speakers (USB Audio Device)"
PortAudio: Windows WASAPI: "Speakers (Realtek High Definition Audio)"
PortAudio: Windows WASAPI: "Realtek Digital Output (Realtek High Definition Audio)"
PortAudio: Windows WASAPI: "Microphone (USB Audio Device)"
PortAudio: API Windows WDM-KS has 7 devices
PortAudio: Windows WDM-KS: "Speakers (Realtek HD Audio output)"
PortAudio: Windows WDM-KS: "Line In (Realtek HD Audio Line input)"
PortAudio: Windows WDM-KS: "Microphone (Realtek HD Audio Mic input)"
PortAudio: Windows WDM-KS: "SPDIF Out (Realtek HDA SPDIF Out)"
PortAudio: Windows WDM-KS: "Stereo Mix (Realtek HD Audio Stereo input)"
PortAudio: Windows WDM-KS: "Speakers (USB Audio Device)"
PortAudio: Windows WDM-KS: "Microphone (USB Audio Device)"

Using the above as a working example, if you wanted to use Windows WDM-KS for portaudio with your built-in Realtek audio device, in your mame.ini you would enter

# PORTAUDIO OPTIONS
#
pa_api                    "Windows WDM-KS"
pa_device              "Speakers (Realtek High Definition Audio output)"

And voilà now you have things working perfectly!

Share this post


Link to post
Share on other sites

This is a great solution! Thank you!  I'm not so good on soldering, is there a cheap alternative to the mixer?

Thanks!

Share this post


Link to post
Share on other sites

I wasn't able to do a hardware mod, so I'm hoping this bug may get a fix in the next update?  

Share this post


Link to post
Share on other sites

I just solved it giving 5 seconds sleep to my scripts.
"sleep 5000"
yeah, that thing at the beginning of my script, before running mame, solved it.

Share this post


Link to post
Share on other sites
On 9/5/2019 at 10:27 AM, anchounio said:

I just solved it giving 5 seconds sleep to my scripts.
"sleep 5000"
yeah, that thing at the beginning of my script, before running mame, solved it.

This is great!  Can you explain how you did this or share your script that you created to solve this?  Thanks!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...