[alsa-devel] snd-hda-intel support for SPDIF-in wiht vt1708 card?

Takashi Iwai tiwai at suse.de
Wed Jan 9 17:29:13 CET 2008


At Wed, 09 Jan 2008 02:06:53 -0800,
John Stile wrote:
> 
> On Wed, 2008-01-09 at 08:39 +0100, Takashi Iwai wrote:
> > Thanks.
> You are welcome.  Thank you for your patience.
> 
> > You can put alsa-driver and alsa-kernel in the same directory level.
> > Make in alsa-driver will create a symlink automatically from
> > ../alsa-kernel.
> My procedure is changed:
> cd /usr/src/
> rm -rf alsa-lib
> rm -rf alsa-utils
> rm -rf alsa-driver
> rm -rf alsa-driver
> hg clone http://hg-mirror.alsa-project.org/alsa-lib alsa-lib
> hg clone http://hg-mirror.alsa-project.org/alsa-utils alsa-utils
> hg clone http://hg-mirror.alsa-project.org/alsa-kernel alsa-kernel
> hg clone http://hg-mirror.alsa-project.org/alsa-driver alsa-driver
> pushd alsa-lib
> ./hgcompile && make install

To be sure: you are using 32bit version, right?
For 64bit, the library path might be /usr/lib64, instead of /usr/lib
(depending on distro).

> popd
> pushd alsa-utils
> ./hgcompile && make install 
> popd
> cd alsa-driver
> ./hgcompile && make install
> popd
> # Build completed successfully. Yay.
> /usr/sbin/alsaconf
> # Chose 'hda-intel VIA Technologies, Inc. VIA High Definition Audio Controller"
> /usr/bin/alsamixer -Vall

So far so good.

> 
> IEC958 shows
>  ┌──┐
>  │MM│ 
> L└──┘R
> CAPTUR
> 
> There are 2 'CAPTURE' columns where I maxed levels.
> 'Input So' is set to 'Stereo M'

Attach the generated file via "alsactl -f somefile store" instead of
ascii art.  This contains the all mixer information.


> Play tests all work
> songs="/usr/share/sounds/alsa/Front_Right.wav
>  /usr/share/sounds/alsa/Rear_Right.wav
>  /usr/share/sounds/alsa/Rear_Left.wav
>  /usr/share/sounds/alsa/Rear_Center.wav
>  /usr/share/sounds/alsa/Front_Left.wav
>  /usr/share/sounds/alsa/Noise.wav
>  /usr/share/sounds/alsa/Side_Right.wav
>  /usr/share/sounds/alsa/Side_Left.wav
>  /usr/share/sounds/alsa/Front_Center.wav"
> echo "not setting hardware"
> for song in $songs;
> do
>   aplay  $song
> done
> 
> arecord -l
> **** List of CAPTURE Hardware Devices ****
> card 0: VT82xx [HDA VIA VT82xx], device 0: VT1708 Analog [VT1708 Analog]
>   Subdevices: 2/2
>   Subdevice #0: subdevice #0
>   Subdevice #1: subdevice #1
> card 0: VT82xx [HDA VIA VT82xx], device 1: VT1708 Digital [VT1708
> Digital]
>   Subdevices: 1/1
>   Subdevice #0: subdevice #0
> 
> One digital device is listed with: arecord -L  
> iec958:CARD=VT82xx,DEV=0
>    HDA VIA VT82xx, VT1708 Digital
>    IEC958 (S/PDIF) Digital Audio Output
> null
>     Discard all samples (playback) or generate zero samples (capture)
> 
> Arecord without specifying -D makes a pulsing screech.
> arecord -d 10 -f dat -t wav |aplay
> 
> This records 10 seconds and ends in an I/O error:
> arecord -D hw:0,1     -d 10 -f dat -t wav |aplay
> 
> Recording WAVE 'stdin' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
> Playing WAVE 'stdin' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
> arecord: pcm_read:1324: read error: Input/output error
> 
> All these record tests fail.
> arecord -D cards.pcm.Digital -d 10 -f dat -t wav |aplay
> ALSA lib pcm.c:2121:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.Digital
> arecord: main:540: audio open error: No such file or directory
> aplay: playback:1995: read error
> 
> arecord -D cards.pcm.iec958  -d 10 -f dat -t wav |aplay
> 
> ALSA lib dlmisc.c:118:(snd_dlsym_verify) unable to verify version for symbol _snd_pcm_hook_ctl_elems_install
> ALSA lib pcm_hooks.c:392:(snd_pcm_hook_add_conf) symbol _snd_pcm_hook_ctl_elems_install is not defined inside (null)
> arecord: main:540: audio open error: No such device or address
> aplay: playback:1995: read error
> 
> arecord -D hwplug:0,1        -d 10 -f dat -t wav |aplay
> 
> ALSA lib pcm.c:2121:(snd_pcm_open_noupdate) Unknown PCM hwplug:0,1
> arecord: main:540: audio open error: No such file or directory
> aplay: playback:1995: read error

It's a user error :)  The usage below, -D plug:spdif, is correct,
though.


> arecord -D plug:spdif        -d 10 -f dat -t wav |aplay
> 
> ALSA lib dlmisc.c:118:(snd_dlsym_verify) unable to verify version for symbol _snd_pcm_hook_ctl_elems_install

OK, this is a bug in the recent alsa-lib.
I fixed it now on HG tree.  Please update your alsa-lib repo (maybe
better from hg.alsa-project.org).


Takashi


More information about the Alsa-devel mailing list