FAQ:Audio - JoakimLarsson/mame GitHub Wiki
Return to the main Frequently Asked Questions page.
Yes. If you just want to record the sound effects and music from a session of playing the game in MAME, you can use the -wavwrite
parameter, like so:
mame <gamename> -wavwrite <filename>
If you'd like to record specific sound effects on their own, you can use other programs such as M1, which is a sound playback program that supports many of the same games that MAME does.
By default, MAME generates audio at 48000Hz. For most modern sound cards, this is the native sound rate and should produce the best results. Earlier sound cards tended to support 44100Hz as a different rate, so you can optionally try that if you're not happy with the sound quality.
Try the Following:
- Make sure your speakers are turned on and the volume turned up
- Make sure your sound card drivers are installed properly. For this, follow the directions that came with your sound card and/or motherboard (in the case of on-board sound)
- Open the Volume Control (Start -> All Programs -> Accessories -> Entertainment -> Volume Control) and make sure your Master and Wave controls are both turned up and not muted.
- Not all games have sound support in MAME. Make sure the game you are playing has sound emulation
- Some games in MAME have options for disabling some sound, or reducing the volume. Try pressing Tab and choose "Dip Switches" or press F2 for service mode and see if there are options for sound.
- The sound for some games only occurs after a game is started (silent attract mode).
There are two different groups of causes: video-audio sync problems, and not enough CPU speed.
The video-audio sync problems most often occur on systems with LCD monitors, but can happen on all systems. The usual cause is the original game ran video at something other than 60 Hz, while the LCD is. With Mame's default settings, this can lead to skipping or choppy sound. There are a few solutions:
- Enable -refreshspeed. This causes mame to run not quite the correct speed for most games, though.
- Set the correct -speed value. This will vary game to game, and enabling -refreshspeed should set this correctly. If it does not, you can hand set it instead with this option.
- Disable -waitvsync, -syncrefresh, and -triplebuffer. (This is the default settings.)
- Get a monitor that can switch resolutions, and a video card + driver that can display at the original games' refresh rates, and enable -switchres.
- The best answer it to get a faster CPU. However, since this is the most expensive, you might want to check if the other solutions help or not before doing this.
- Increase -audio_latency.
- Decrease -samplerate.
- Any of the other Performance hints.