[alsa-devel] SPDIF audio / non-audio bit

Ben Stanley Ben.Stanley at exemail.com.au
Fri Aug 15 17:56:14 CEST 2008

On Fri, 2008-08-15 at 16:59 +0200, Takashi Iwai wrote:
> At Sat, 16 Aug 2008 00:45:33 +1000,
> Ben Stanley wrote:
> > Could you please clarify 
> > 'independent PCM IEC958 status bits' vs 
> > 'default IEC958 status bits', 
> > perhaps by pointing out some drivers implementing each type?
> Run the following:
> 	grep -r 'IEC958.*PCM_STREAM' sound/pci
> These drivers have "IEC958 Playback PCM Stream" controls.  These
> controls are assigned to PCM streams, and changed individually from
> the "IEC958 Playback Default" control.  When the PCM stream is closed,
> it's back to the status of "IEC958 Playback Default".
Thanks for the info.
> > > You can change the status easily via iecset program in alsa-utils.
> > I note here that iecset does not accept --device=hw:0,1 for example. Any
> > reason for this?
> Because it's invalid.  The --device option is for a control device,
> not for a PCM device.  If you want to change the secondary control
> (i.e. "IEC958 Playback Default" with index=1), pass "-n 1" to iecset.
um, that doesn't work either.

mythtv at mythtv:~$ iecset -D=hw:0 -n 1 audio on
iecset: invalid option -- n
Usage: iecset [options] [cmd arg...]
    -D device   specifies the control device to use
    -c card     specifies the card number to use (equiv. with -Dhw:#)
    -x          dump the dump the AESx hex code for IEC958 PCM
    -i          read commands from stdin
    professional (common)
    off = consumer mode, on = professional mode
    audio (common)
    on = audio mode, off = non-audio mode
    rate (common)
    sample rate in Hz
    emphasis (common)
    0 = none, 1 = 50/15us, 2 = CCITT
    lock (prof.)
    off = rate unlocked, on = rate locked
    sbits (prof.)
    sample bits 2 = 20bit, 4 = 24bit, 6 = undef
    wordlength (prof.)
    0=no, 2=22-18bit, 4=23-19bit, 5=24-20bit, 6=20-16bit
    category (consumer)
    copyright (consumer)
    off = non-copyright, on = copyright
    original (consumer)
    off = 1st-gen, on = original

I see that I have alsa-utils 1.0.15-3ubuntu2 (from ubuntu 8.04). Perhaps
my version is too old?

I will use my clunky old method for now, but I would like to clear up
this iecset issue.


More information about the Alsa-devel mailing list