2013-10-13, 18:26
A further saga of this thread...
TL;DR: installed 64-bit Debian, dropped XBMC on it and now can't get sound through XBMC to work.
Background: on forth install of XBMC:
Some diagnostic info about the kit:
and...The two devices I'm interested in are the analogue out (speakers driven by the phone jack out the Zotac's front) and the HDMI out (sound to the TV), which are listed as "default" and "hw:1,7" respectively.
"alsamixer" shows volume controls all up to full, nothing unmuted. Sound checks work, too, i.e.:
I can get stuff to play out of the speakers okay with:
And the TV sings out with:
(I've no idea why "hw:1,7" didn't work with aplay, but plughw did).
I recall I originally messed around with /etc/asound.conf and .asoundrc files until I could get sound squirted down the HDMI cable. The guides I originally followed are either outdated or unsuitable for my situation (and the device names differ between distro so just copying over the files won't work) but it seemed various entries in these files simply routed any sound destined for the default device out to the HDMI, e.g:
And now, having done all that...
1. I log into LXDE; command-line stuff can play out to speakers and TV but firing up mplayer only plays out through speakers. I can't see a way of redirecting it out to the HDMI.. Both both analogue and HDMI show up in the graphical volume control tool, but there seems to be no way of setting one to be default.
2. XBMC has "Analog/HDMI/Optical" against "Audio Output" and a list of different names under "Audio output device". I'm unsure which to pick (what's the difference between "audio output" and "audio output device"?) I've tried several different combinations but none of them seem to work - I've had an MP3 playing whilst trying to get sound out, and an MKV pops up "can't initialise sound device". I've had "HDA NVidia - hdmi - 7 (ALSA)" show up in this drop-down list, as well as "iec958" and "default" - where does XBMC get these names from?
I know all cables are working fine since XBMCbuntu played sound okay.
Any ideas, any further tests I can try?
Does XBMC use the "asound" config files, or does it bypass these at all?
Bit more OS info:
Any other info required?
TL;DR: installed 64-bit Debian, dropped XBMC on it and now can't get sound through XBMC to work.
Background: on forth install of XBMC:
- RaspBMC - dropped this on a Pi, worked okay for most things (struggled a bit when trying to do several things at once, like update my library and play video at the same time). Couldn't get the remote to work properly - some Lirc tools didn't exist for RaspBMC.
- OpenELEC - on the advice of a friend, tried this out and it ran a lot smoother, with the remote doing a lot of things by default without needing to mess around with keymaps.xml and other files. But it still struggled.
- XBMCbuntu - went for a full-blown distro on a Zotac. Worked well, apart from the issue with sound that the Pi lacked. Couldn't get custom keypresses to work on the remote - that's another tale of woe - but it's 32-bit, and the H/W is 64
Some diagnostic info about the kit:
Code:
~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC892 Digital [ALC892 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: 1/1
Subdevice #0: subdevice #0
Code:
$ aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=Intel
HDA Intel, ALC892 Analog
Default Audio Device
sysdefault:CARD=Intel
HDA Intel, ALC892 Analog
Default Audio Device
front:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
Front speakers
surround40:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Intel,DEV=0
HDA Intel, ALC892 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Intel,DEV=0
HDA Intel, ALC892 Digital
IEC958 (S/PDIF) Digital Audio Output
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
"alsamixer" shows volume controls all up to full, nothing unmuted. Sound checks work, too, i.e.:
I can get stuff to play out of the speakers okay with:
Code:
aplay noise.wav
speaker-test -t wav -c2 -l3
And the TV sings out with:
Code:
aplay -D plughw:1,7 noise.wav
speaker-test -t wav -c2 -l3 -D hw:1,7
I recall I originally messed around with /etc/asound.conf and .asoundrc files until I could get sound squirted down the HDMI cable. The guides I originally followed are either outdated or unsuitable for my situation (and the device names differ between distro so just copying over the files won't work) but it seemed various entries in these files simply routed any sound destined for the default device out to the HDMI, e.g:
Code:
~$ more /etc/asound.conf
##
## taken from https://bbs.archlinux.org/viewtopic.php?pid=789152
##
## seems to reroute all default sound through plug
## and to 1,7 (aplay -l = shows hardware)
##
## Using this config file, can ignore all .asoundrc in $HOME directories
##
## ----- to test:
##
## aplay -D plughw:default noise.wav <-- comes through speakers okay.
## aplay -D plughw:1,7 noise.wav <-- coming through TV.
##
## aplay noise.wav <-- should use "default" and come through TV.
## speaker-test -c2 -t wav -l 3<-- use both channels, three times, through TV now.
pcm.!default
{
type plug
slave.pcm "dmix:1,7"
}
And now, having done all that...
1. I log into LXDE; command-line stuff can play out to speakers and TV but firing up mplayer only plays out through speakers. I can't see a way of redirecting it out to the HDMI.. Both both analogue and HDMI show up in the graphical volume control tool, but there seems to be no way of setting one to be default.
2. XBMC has "Analog/HDMI/Optical" against "Audio Output" and a list of different names under "Audio output device". I'm unsure which to pick (what's the difference between "audio output" and "audio output device"?) I've tried several different combinations but none of them seem to work - I've had an MP3 playing whilst trying to get sound out, and an MKV pops up "can't initialise sound device". I've had "HDA NVidia - hdmi - 7 (ALSA)" show up in this drop-down list, as well as "iec958" and "default" - where does XBMC get these names from?
I know all cables are working fine since XBMCbuntu played sound okay.
Any ideas, any further tests I can try?
Does XBMC use the "asound" config files, or does it bypass these at all?
Bit more OS info:
Code:
$ uname -a
Linux smudge 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 7.1 (wheezy)
Release: 7.1
Codename: wheezy
$ dpkg -l xbmc
ii xbmc 2:11.0~git201 all XBMC Media Center (arch-independent da