Solved No audio: Rom Collection Browser + ZSNES + nVidia GeForce 430 HDMI
#1
Hi there,

I've a nicely working XBMC 12 install, running on Ubuntu. RCB appears to work, so I believe this is a ZSNES audio issue really.

XBMC audio is played through Nvidia GT430 HDMI to the TV, this works for movies, and menu choices, but not ingame on ZSNES.

Here's my 'Sound' section, from zsnesl.conf:-

Code:
;  ----
; -- Sound --
;  ----

; libAO driver to use. Use zsnes --help to see valid list.
; However "auto" (to automatically pick best one), and "sdl" should
; always be available.
libAoDriver="auto"

; Disable SPC Emulation (0 = NO, 1 = Yes)
; Disabling SPC emulation can improve performance, but at the expense of
; emulation accuracy. There will be no sound output and games might crash.
SPCDisable=0

; Enable Sound Emulation (0 = Off, 1 = ON) - disable if you need the performance
; If SPC emulation is disabled, there will be no sound output.
soundon=1

; Enable Stereo Sound (0 = Off, 1 = ON) - disable if you need the performance
StereoSound=1

; Swap Left Audio Channel w/Right (0 = NO, 1 = Yes)
RevStereo=0

; Simulate Surround Sound (0 = NO, 1 = Yes)
; Enable a simulated 2 speaker surround sound effect.
; Do not enable if playing a game that has its own surround sound effects.
; Stereo Sound must be enabled for this to work.
Surround=0

; Sampling Rate: (0 = 8000Hz, 1 = 11025Hz, 2 = 22050Hz, 3 = 44100Hz,
;                            4 = 16000Hz, 5 = 32000Hz, 6 = 48000Hz)
; Using any other sound frequencies other than the default 32000Hz
; is COMPLETELY UNACCEPTABLE in use for sound bug reports.
SoundQuality=6

; Sound Volume Level [0..100]
MusicRelVol=100

; Enable Sound Interpolation (0 = None, 1 = GAUSSIAN, 2 = Cubic, 3 = 8-point)
; Sound interpolation smooths out the waveform of lower frequency sounds.
; Using any other setting other than the default Gaussian interpolation is
; COMPLETELY UNACCEPTABLE in sound bug reports.
SoundInterpType=1

; Enable Low-Pass Filter (0 = NONE, 1 = Simple, 2 = Dynamic, 3 = Hi-quality)
; A low-pass filter improves the bass in the sounds.
; This is useful if you have a Subwoofer.
LowPassFilterType=0

; Disable Echo (0 = NO, 1 = Yes)
; Disables the echo effect in the sound.
EchoDis=0

I have also tried creating a .asoundrc, which I lifted from here. Please don't assume the values below are correct, as I don't know the syntax of asoundrc. If you know how to check what values should be used, please let me know; mine are educated guesses:-

Code:
pcm.dmixer {
type dmix
ipc_key 1024
ipc_key_add_uid false
ipc_perm 0660
slave {
pcm "hw:1,3"
rate 48000
channels 2
period_time 0
period_size 1024
buffer_time 0
buffer_size 4096
}
}

pcm.!default {
type plug
slave.pcm "dmixer"
}

pcm.!hdmi-remap {
type asym
playback.pcm {
type plug
slave.pcm "remap-surround71"
}
}

pcm.!remap-surround71 {
type route
slave.pcm "hw:1,9"
ttable {
0.0= 1
1.1= 1
2.4= 1
3.5= 1
4.2= 1
5.3= 1
6.6= 1
7.7= 1
}
}

For good measure, aplay -l:-

Code:
**** List of PLAYBACK Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: ALC889A Analog [ALC889A Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: SB [HDA ATI SB], device 1: ALC889A Digital [ALC889A Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

I've also tried these parsing with these options, from within RCB config:-

Code:
-ad sdl
-ad alsa
-ad auto

Nothing I've tried yet has made any difference, so any assistance will be appreciated.

Regards,
n1md4

n.b. I've update the title to reflect the GFX element of this post.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#2
Okay. An update, but no real progress.

I've followed this guide.

From an xterm window I've broken, stuttering sound using the following command:-

Code:
aplay -Dplughw:1,9 /usr/share/sounds/alsa/Front_Center.wav

So, I then change .asoundrc to this:-

Code:
pcm.dmixer {
   type dmix
   ipc_key 1024
   ipc_key_add_uid false
   ipc_perm 0660
   slave {
      pcm "hw:1,9"
      rate 48000
      channels 2
      format S32_LE
      period_time 0
      period_size 1024
      buffer_time 0
      buffer_size 4096
   }
}

pcm.!default {
   type plug
   slave.pcm "dmixer"
}

On reboot, from an xterm window, I launch this:-

Code:
zsnes -ad sdl

But still there is no sound. When exiting the emulator I see this message in xtrem:-

Code:
alsa lib pcm.c:7339::(snd_pcm_recover) underrun occurred

I've been searching around, but can't really find the cause of this error.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#3
Wooh! Finally got sound working, using this ubuntuforums.org post.

I first removed my .asoundrc file, and then this:-

landeel Wrote:I'm using the sound card that's integrated into the GPU, I have made it my primary card in alsa by changing "/usr/share/alsa/alsa.conf":

Code:
defaults.ctl.card 0
defaults.pcm.card 0
defaults.pcm.device 0

became:

Code:
defaults.ctl.card NVidia
defaults.pcm.card Nvidia
defaults.pcm.device 7

Yet to test this running under XBMC, and admittedly it's still a little choppy, but I reckon I can tweak that.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#4
Then changing audio output HDA NVIDIA HDMI0 has it working in XBMC.

The -r 6 RCB option helped a bit in getting audio tuned too, but still not perfect.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#5
My box is an Asrock 330 ION (first gen) and i also have problem with audio i advanced launcher and ZSNES. Please let me know if you get that audio tweaked good.
Reply
#6
After chatting on #zsnes I was advised that SDL playback is choppy, and that the alternatives were ALSA or OSS. So I've edited .zsnesl.cfg:-

Code:
libAoDriver="alsa"

...and changed RCB parameters to suit:-

Code:
-sd alsa

I'll now sign off to the sound of Mario Kart playing in the background! and the sweet taste of nostagia Wink
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#7
Firstly, thanks for posting what worked for you. I basically did almost the same thing except "defaults.pcm.device 7" was "defaults.pcm.device 9". I only figured out what the correct device was by using "aplay -l" then

Code:
aplay -D plughw:1,9 /usr/share/sounds/alsa/Front_Center.wav

and changing "plughw:X,X" to the various devices listed.
Reply
#8
Thanks for the kudos. I'm surprised there wasn't a fix already documented for this. Maybe there is and this approach leads to the same technical end. In any case, glad it helped.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#9
I too have gone through the same list of tutorials, however I am yet to get my audio working. All sounds work fine in XBMC, but running ZSNES from inside XBMC or on its own from XBMCbuntu give me no sound. I created the .asoundrc file per TehCrucible's guide - http://forum.xbmc.org/showthread.php?tid=129256 but I still could not get my sound working. I then followed along with your progress here, ultimately removing the .asoundrc file and instead editing the alsa.cnf and the .zsnesl.cnf files. When I run zsnes with the default config, my terminal output shows no audio errors, simply audio opened. Running zsnes with anything in the config other than default 0 results in an error of no such file or directory. I am able to hear the aplay...Front_Center file play clearly without making any settings changes. I also am running the HDA NVidia card. Any other advice/suggestions on where to go from here? I feel like I have waled through every guide that I can find and still end up with no sound.
Reply
#10
Hi, asdraper. I'm no expert, but here's some more of my config that might help.

I edited this line is zsnes.cfg

Code:
libAoDriver="alsa"

I use ALA and have this as launcher arguments (which I think is default):-

Code:
-m -s -v 22 "%rom%"

You could also try adding -ad alsa as an additional argument, I did that when I had the 430 (I now have a 640).



Hmm - noticed I'm repeating myself a few posts up, so guess you've already tried these.

Another though, have you played with the Audio section in XBMC system menus, it might be the pass-through option ... as you're testing with aplay, I assume to test you're also launching ZSNES from the command line too?

I'm guessing, if you didn't notice Wink but sounds like you're SOOOO close!



Sorry, lot's of thinking aloud .. have you checked channels aren't muted in alsamixer?
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply
#11
No worries, I have been following along a lot of guides so my attempts to fix (and thus my postings) have been a bit all over the place. When I get home tonight I will try to run through them again and report back exactly what I have done. I know for a fact that I have checked alsamixer to ensure no channels were muted (except for SPDIF, which I am not using, and will not even allow me to unmute - maybe this is a problem?). I tried running zsnes from the command line using -ad alsa, -ad auto, -ad sdl, all to no avail. My audio through XBMC, as far as integrated media goes, works just fine. If I change audio settings in XBMC, would that affect audio output even when XBMC is not running?
I have other emulators installed that are having the same sound issue, but I followed along with the ZSNES threads as there seemed to be more concentrated answers there.

Thanks for your help, I will walk through your suggestions again tonight and document the results more thoroughly.
Reply
#12
I sat down last night to run through some of these guides again and report back, and lo and behold, the aplay -Dplug:0,3 usr/share/sounds/alsa/Front_Center.wav file would no longer play. So I had somehow taken a step backwards.

I then found this guide http://forum.xbmc.org/showthread.php?tid=73428 which described the setup of the same system I have (Acer Revo 1600). The initial sound fix here worked for me!

.asoundrc has only the following line, nothing else:

defaults.pcm.device 3

Initially it did nothing, but then I went back and deleted the asound.conf in the /etc folder, and all of a sudden my sound worked running ZSNES. I ran it both from terminal as well as through the XBMC Advanced Launcher. Now that I think about it, I did not test any movie files however...

So I now have sound in ZSNES. According to the guide, I should now have sound in other emulators as well (specifically gens) but that still does not work. I did not find that out until this morning, however, so I at least went to bed on the high of finally getting some sound to come out of my XBMCBuntu desktop.

Any ideas why sound would work in ZSNES but not other emulators? The .asoundrc file is not specific to ZSNES, so what gives?
Reply
#13
I'd started replying to this before I realised I don't really know the answer.. I do have gens sound working though, so I'll double-check the configure when I can and report back here.
HTPC RPI3 Kodi 17 (Krypton) v8.0.1 MR
Storage BPI 1x 500GB SSD UPnP server
Display Sony Bravia 32"
Reply

Logout Mark Read Team Forum Stats Members Help
No audio: Rom Collection Browser + ZSNES + nVidia GeForce 430 HDMI0