hallo,
ich betreibe einen htpc auf basis von xbmc und gebe stereo signale über den spdif (toslink) an einen stereo verstärker aus. ac3/dts signale laufen per passthrough über hdmi an einen avr. soweit so gut, grundsätzlich gibt es bei der ausgabe an sich keine probleme, es trällert über beide ausgänge.
nun zum problem:
cds haben ja eine abtastrate von 44100 Hz während die audiospur von dvds in 48000 Hz vorliegt. soweit ich informiert bin wird über hdmi grundsätzlich 48000 Hz ausgegeben, während es bei iec958 möglich ist 44100 Hz oder 48000 Hz auszugeben. nun bin ich mir allerdings nicht ganz sicher ob cds tatsächlich per 44100 Hz ausgegeben werden oder ob intern die abtastrate bei der ausgabe über iec958 (toslink) auf 48000 Hz neuberechnet wird.
starte ich das system frisch und sehe mir die ausgabe von "iecset" an, wird folgendes für iec958 angegeben:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
|
iecset -c 0 -n 0
Mode: consumer
Data: audio
Rate: 44100 Hz
Copyright: permitted
Emphasis: none
Category: PCM coder
Original: original
Clock: 1000 ppm
|
sobald ich eine cd mit xbmc abspiele ändert sich in der ausgabe von "iecset" allerdings die abtastrate auf 48000 Hz. stoppe ich die wiedergabe bleibt die abtastrate laut "iecset" auf 48000 Hz stehen. auch macht sich der wechsel der abtastrate durch ein knacksen in den lautsprechern bemerkbar. ebenso findet anscheinend ein wechsel der abtastrate statt, wenn von einem track zum nächsten gewechselt wird (knacksen).
woran kann das liegen? an xbmc, an irgendeinem fehler im setup? kann man für die iec958 device irgendwie auf 44100 Hz beschränken?
anbei einigen angaben zum alsa setup:
- kernel:
|
Quellcode
|
1
2
|
uname -a
Linux XBMC 2.6.34-gentoo #3 SMP PREEMPT Thu May 27 18:09:59 CEST 2010 i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux
|
- alsa version:
|
Quellcode
|
1
2
|
cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.22.1
|
- keine module, alles fest im kernel:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
grep -i snd /usr/src/linux/.config
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=y
CONFIG_SND_JACK=y
CONFIG_SND_SEQUENCER=y
CONFIG_SND_SEQ_DUMMY=y
CONFIG_SND_HRTIMER=y
CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
CONFIG_SND_VERBOSE_PROCFS=y
CONFIG_SND_VMASTER=y
CONFIG_SND_DMA_SGBUF=y
CONFIG_SND_PCI=y
CONFIG_SND_HDA_INTEL=y
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
CONFIG_SND_HDA_INPUT_JACK=y
CONFIG_SND_HDA_CODEC_VIA=y
CONFIG_SND_HDA_CODEC_NVHDMI=y
CONFIG_SND_HDA_ELD=y
CONFIG_SND_HDA_GENERIC=y
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
|
- devices:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=NVidia
HDA NVidia, VT1708S Analog
Default Audio Device
front:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
Front speakers
surround40:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=NVidia,DEV=0
HDA NVidia, VT1708S Digital
IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=NVidia,DEV=0
HDA NVidia, NVIDIA HDMI
HDMI Audio Output
|
gruß,
hal2050