I noticed that the audio of games/snes was pretty bad for most games I tried, so I did some bug hunting and found a few. Patches are attached. The main issue (patch 1) was incorrect BRR decoding for filter types 2 and 3, which is the sample compression scheme that the SNES audio chip uses. I also saw that the noise and echo features of the DSP were essentially just stubs. Patches 2 and 3 implement noise and echo respectively. Finally, I saw that it was using nearest-neighbor upsampling from 32 kHz to 44.1 kHz, which results in noticable aliasing. My first thought was to pipe the output through audio/pcmconv which has a high-quality resampler. However, games/snes uses audio write blocking to control the emulation speed, so using a pipe here was problematic. It would fill up the pipe buffer, then hang while pcmconv wrote the upsampled data to /dev/audio, then repeat. Anyone have ideas about a good way to reuse the pcmconv resampler for this (maybe split off into a library)? For now, patch 4 changes it to use linear interpolation, which is a big improvement and may be good enough. Patch 5 is just a style patch to use the enums already defined instead of hex constants in a couple places. Here are some samples demonstrating the specific problems: - BRR decoding https://mforney.org/misc/ct-122a-old.flac https://mforney.org/misc/ct-122a-new.flac - Echo https://mforney.org/misc/ct-206-old.flac https://mforney.org/misc/ct-206-new.flac - Noise (supposed to be wave noises) https://mforney.org/misc/ct-s02-old.flac https://mforney.org/misc/ct-s02-new.flac