[SOLVED] XBMCbuntu Eden audio issues on resume
#1
Question 
Hi,

I've just done a clean install of XBmcbuntu Eden on my Shuttle XS35GT (v2).
Almost everything seems to function as it should (kudos to the developers!), but I'm having a minor audio issue:
After booting, audio is fully funtional.
When navigating the XBMC menus and when watching videos, all sounds are processed correctly.
But after resuming from suspend (S3), there are some audio glitches.

The skin-specific sound-effects when navigating the menus are int the wrong pitch, and are all played with a heavy reverb/echo effect.

When starting to watch a video, the first seconds are without any sounds. Then the video starts to stutter, while the audio starts normally. When the audio has caught up to the video, the rest of the video/audio is played normally (in sync). But when back in the skin menus, the reverb/echo effect is still there.
This happens everytime I start a new video.

After a reboot everything is back to normal.

I'm using HDMI-passthrough from the HTPC to my receiver, and have set up audio the same way as it was when running Dharma:

I use the following .asoundrc:

Code:
pcm.dmixer {
type dmix
ipc_key 2048
slave {
pcm "hw:1,7" # Always use pure hw. dmix will reformat/resample audio.
period_size 512 # If you get stuttering/or non-working audio, fiddle around with these
buffer_size 4096
rate 48000 # HDMI, I'll assume 48kHz
format S16_LE # Should be default for pretty much any soundcard.
}
bindings {
0 0
1 1
}
}

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

And in Settings -> System -> Audio output in xbmc, I set the value for Custom passthrough device to "hw:1,7"

I have tried to add a hook for alsa in /etc/pm/sleep.d/, but the audio glitches still persists after a resume.

Code:
#!/bin/sh
#
# 90alsa: suspend/wakeup ALSA devices
case "$1" in
hibernate|suspend)
;;
thaw|resume)
  aplay -d 1 /dev/zero
;;
*) exit $NA
;;
esac

I have also tried the approach suggested in this thread, but didn't manage to get any audio at all.

Any ideas?

Relevant info:

Code:
per@xbmc:~$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
dmixer
default
front:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    Front speakers
surround40:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
dmix:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    Direct sample mixing device
dsnoop:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    Direct sample snooping device
hw:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    Direct hardware device without any conversions
plughw:CARD=Intel,DEV=0
    HDA Intel, STAC92xx Analog
    Hardware device with all software conversions
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    HDMI Audio Output
dmix:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample mixing device
dmix:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 0
    Direct sample mixing device
dmix:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 0
    Direct sample mixing device
dmix:CARD=NVidia,DEV=9
    HDA NVidia, HDMI 0
    Direct sample mixing device
dsnoop:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 0
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 0
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=9
    HDA NVidia, HDMI 0
    Direct sample snooping device
hw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=9
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
plughw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 0
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 0
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=9
    HDA NVidia, HDMI 0
    Hardware device with all software conversions

Code:
per@xbmc:~$ lspci | grep Audio
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02)
01:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1)
Reply
#2
So I thought I'd post an update to this thread.

I did try some different approaches, incl probemasking ALSA (got audio configured, but the stutter persisted).
Force-reloading ALSA after a wakeup did fix the audio, but also ended the current XBMC session, so it wasn't exactly optimal...

As a final resort, I have now installed Ubuntu 12.04 with XMBC, and tried some different configurations.
To make a long story short: By not doing any audio configuration in Ubuntu (short of unmuting the NVidia channels in alsamixer), and setting the Settings -> System -> Audio output value for Custom passthrough device to "plughw:1,7", I am finally getting proper audio in videos after a suspend/wakeup.
I am, however, missing all skin-sounds. But the audio in videos and Music plays without a hitch.
And after a week without skin-sounds, I have found that I much prefer it so. Smile

/Per
Reply

Logout Mark Read Team Forum Stats Members Help
[SOLVED] XBMCbuntu Eden audio issues on resume0