[PlanetCCRMA] Hammerfall HDSP 9652 Configuration Issues
Sebastian Doeweling
lists at inshadows.de
Wed Oct 13 08:27:04 PDT 2004
Hello,
as a starting point for my diploma thesis I'm trying to configure a
Hammerfall HDSP 9652 Soundcard. Yet I don't have to much knowledge about
professional audio.
I sticked to what I found on google and here on Planet CCRMA for
configuration and some things worked out fine. Still I have some issues
I cannot resolve.
For example alsamixer still shows "no mixer elements". I experimented a
bit with "jack" and there too I have some things not working as I
expected. For example jack comes up fine, if I have a sample rate below
48,100 Hz, but doesn't start if I go higher.
I append a bunch of data which I hope will be useful. Maybe someone has
got an idea where I'm doing wrong.
Best,
Sebastian
JACK output:
[root at brage root]# jackd -d alsa -d hw:0 -r 192000 -H -D
jackd 0.99.0
Copyright 2001-2003 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
loading driver ..
apparent rate = 192000
creating alsa driver ... hw:0|hw:0|1024|2|192000|0|0|hwmon|swmeter|-|32bit
control device hw:0
configuring for 192000Hz, period = 1024 frames, buffer = 2 periods
ALSA lib pcm_hw.c:324:(snd_pcm_hw_hw_params) SNDRV_PCM_IOCTL_HW_PARAMS
failed: Device or resource busy
ALSA: cannot set hardware parameters for capture
ALSA: cannot configure capture channel
cannot load driver module alsa
[root at brage root]# jackd -d alsa -d hw:0 -r 44100 -H -D
jackd 0.99.0
Copyright 2001-2003 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
loading driver ..
apparent rate = 44100
creating alsa driver ... hw:0|hw:0|1024|2|44100|0|0|hwmon|swmeter|-|32bit
control device hw:0
configuring for 44100Hz, period = 1024 frames, buffer = 2 periods
My alsa.conf-file:
#
# ALSA library configuration file
#
# pre-load the configuration files
@hooks [
{
func load
files [
"/etc/asound.conf"
"~/.asoundrc"
]
errors false
}
]
# load card-specific configuration files (on request)
cards. at hooks [
{
func load
files [
{
@func concat
strings [
{ @func datadir }
"/cards/aliases.conf"
]
}
]
}
{
func load_for_all_cards
files [
{
@func concat
strings [
{ @func datadir }
"/cards/"
{ @func private_string }
".conf"
]
}
]
errors false
}
]
# defaults
defaults.ctl.card 0
defaults.pcm.card 0
defaults.pcm.device 0
defaults.pcm.subdevice -1
defaults.pcm.front.card defaults.pcm.card
defaults.pcm.front.device defaults.pcm.device
defaults.pcm.rear.card defaults.pcm.card
defaults.pcm.rear.device defaults.pcm.device
defaults.pcm.center_lfe.card defaults.pcm.card
defaults.pcm.center_lfe.device defaults.pcm.device
defaults.pcm.surround40.card defaults.pcm.card
defaults.pcm.surround40.device defaults.pcm.device
defaults.pcm.surround41.card defaults.pcm.card
defaults.pcm.surround41.device defaults.pcm.device
defaults.pcm.surround50.card defaults.pcm.card
defaults.pcm.surround50.device defaults.pcm.device
defaults.pcm.surround51.card defaults.pcm.card
defaults.pcm.surround51.device defaults.pcm.device
defaults.pcm.iec958.card defaults.pcm.card
defaults.pcm.iec958.device defaults.pcm.device
defaults.rawmidi.card 0
defaults.rawmidi.device 0
defaults.rawmidi.subdevice -1
defaults.hwdep.card 0
defaults.hwdep.device 0
defaults.timer.class 2
defaults.timer.sclass 0
defaults.timer.card 0
defaults.timer.device 0
defaults.timer.subdevice 0
#
# PCM interface
#
pcm.hw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.pcm.subdevice
}
}
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
pcm.plughw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.pcm.subdevice
}
}
type plug
slave.pcm {
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
}
pcm.plug {
@args [ SLAVE ]
@args.SLAVE {
type string
}
type plug
slave.pcm $SLAVE
}
pcm.dmix {
@args [ SLAVE FORMAT RATE ]
@args.SLAVE {
type string
default "hw:0,0"
}
@args.FORMAT {
type string
default S16_LE
}
@args.RATE {
type integer
default 48000
}
type dmix
ipc_key 5678293
ipc_key_add_uid yes
slave {
pcm $SLAVE
format $FORMAT
rate $RATE
}
}
pcm.dsnoop {
@args [ SLAVE FORMAT RATE ]
@args.SLAVE {
type string
default "hw:0,0"
}
@args.FORMAT {
type string
default S16_LE
}
@args.RATE {
type integer
default 48000
}
type dsnoop
ipc_key 5778293
ipc_key_add_uid yes
slave {
pcm $SLAVE
format $FORMAT
rate $RATE
}
}
pcm.shm {
@args [ SOCKET PCM ]
@args.SOCKET {
type string
}
@args.PCM {
type string
}
type shm
server $SOCKET
pcm $PCM
}
pcm.tee {
@args [ SLAVE FILE FORMAT ]
@args.SLAVE {
type string
}
@args.FILE {
type string
}
@args.FORMAT {
type string
default raw
}
type file
slave.pcm $SLAVE
file $FILE
format $FORMAT
}
pcm.file {
@args [ FILE FORMAT ]
@args.FILE {
type string
}
@args.FORMAT {
type string
default raw
}
type file
slave.pcm null
file $FILE
format $FORMAT
}
pcm.null {
type null
}
pcm.default {
type plug
slave.pcm {
type hw
card {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
device {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
subdevice {
@func refer
name defaults.pcm.subdevice
}
}
}
# redirect to load-on-demand extended pcm definitions
pcm.cards cards.pcm
# some links for easy use
pcm.front cards.pcm.front
pcm.rear cards.pcm.rear
pcm.center_lfe cards.pcm.center_lfe
pcm.surround40 cards.pcm.surround40
pcm.surround41 cards.pcm.surround41
pcm.surround50 cards.pcm.surround50
pcm.surround51 cards.pcm.surround51
pcm.iec958 cards.pcm.iec958
pcm.spdif cards.pcm.iec958
#
# Control interface
#
ctl.hw {
@args[ CARD ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_CTL_CARD
ALSA_CARD
]
default {
@func refer
name defaults.ctl.card
}
}
}
type hw
card $CARD
}
ctl.shm {
@args [ SOCKET CTL ]
@args.SOCKET {
type string
}
@args.CTL {
type string
}
type shm
server $SOCKET
ctl $CTL
}
ctl.default {
type hw
card {
@func getenv
vars [
ALSA_CTL_CARD
ALSA_CARD
]
default {
@func refer
name defaults.ctl.card
}
}
}
#
# RawMidi interface
#
rawmidi.hw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_RAWMIDI_CARD
ALSA_CARD
]
default {
@func refer
name defaults.rawmidi.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_RAWMIDI_DEVICE
]
default {
@func refer
name defaults.rawmidi.device
}
}
}
@args.SUBDEV {
type integer
default -1
}
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
rawmidi.default {
type hw
card {
@func getenv
vars [
ALSA_RAWMIDI_CARD
ALSA_CARD
]
default {
@func refer
name defaults.rawmidi.card
}
}
device {
@func igetenv
vars [
ALSA_RAWMIDI_DEVICE
]
default {
@func refer
name defaults.rawmidi.device
}
}
}
rawmidi.virtual {
@args [ MERGE ]
@args.MERGE {
type string
default 1
}
type virtual
merge $MERGE
}
#
# Sequencer interface
#
seq.default {
type hw
}
seq.hw {
type hw
}
#
# HwDep interface
#
hwdep.hw {
@args [ CARD DEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_HWDEP_CARD
ALSA_CARD
]
default {
@func refer
name defaults.hwdep.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_HWDEP_DEVICE
]
default {
@func refer
name defaults.hwdep.device
}
}
}
type hw
card $CARD
device $DEV
}
hwdep.default {
type hw
card {
@func getenv
vars [
ALSA_HWDEP_CARD
ALSA_CARD
]
default {
@func refer
name defaults.hwdep.card
}
}
device {
@func igetenv
vars [
ALSA_HWDEP_DEVICE
]
default {
@func refer
name defaults.hwdep.device
}
}
}
#
# Timer interface
#
timer_query.hw {
type hw
}
timer_query.default {
type hw
}
timer.hw {
@args [ CLASS SCLASS CARD DEV SUBDEV ]
@args.CLASS {
type integer
default {
@func refer
name defaults.timer.class
}
}
@args.SCLASS {
type integer
default {
@func refer
name defaults.timer.sclass
}
}
@args.CARD {
type string
default {
@func refer
name defaults.timer.card
}
}
@args.DEV {
type integer
default {
@func refer
name defaults.timer.device
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.timer.subdevice
}
}
type hw
class $CLASS
sclass $SCLASS
card $CARD
device $DEV
subdevice $SUBDEV
}
timer.default {
type hw
class {
@func refer
name defaults.timer.class
}
sclass {
@func refer
name defaults.timer.sclass
}
card {
@func refer
name defaults.timer.card
}
device {
@func refer
name defaults.timer.device
}
subdevice {
@func refer
name defaults.timer.subdevice
}
}
My .asoundrc:
#
# ALSA library configuration file
#
# pre-load the configuration files
@hooks [
{
func load
files [
"/etc/asound.conf"
"~/.asoundrc"
]
errors false
}
]
# load card-specific configuration files (on request)
cards. at hooks [
{
func load
files [
{
@func concat
strings [
{ @func datadir }
"/cards/aliases.conf"
]
}
]
}
{
func load_for_all_cards
files [
{
@func concat
strings [
{ @func datadir }
"/cards/"
{ @func private_string }
".conf"
]
}
]
errors false
}
]
# defaults
defaults.ctl.card 0
defaults.pcm.card 0
defaults.pcm.device 0
defaults.pcm.subdevice -1
defaults.pcm.front.card defaults.pcm.card
defaults.pcm.front.device defaults.pcm.device
defaults.pcm.rear.card defaults.pcm.card
defaults.pcm.rear.device defaults.pcm.device
defaults.pcm.center_lfe.card defaults.pcm.card
defaults.pcm.center_lfe.device defaults.pcm.device
defaults.pcm.surround40.card defaults.pcm.card
defaults.pcm.surround40.device defaults.pcm.device
defaults.pcm.surround41.card defaults.pcm.card
defaults.pcm.surround41.device defaults.pcm.device
defaults.pcm.surround50.card defaults.pcm.card
defaults.pcm.surround50.device defaults.pcm.device
defaults.pcm.surround51.card defaults.pcm.card
defaults.pcm.surround51.device defaults.pcm.device
defaults.pcm.iec958.card defaults.pcm.card
defaults.pcm.iec958.device defaults.pcm.device
defaults.rawmidi.card 0
defaults.rawmidi.device 0
defaults.rawmidi.subdevice -1
defaults.hwdep.card 0
defaults.hwdep.device 0
defaults.timer.class 2
defaults.timer.sclass 0
defaults.timer.card 0
defaults.timer.device 0
defaults.timer.subdevice 0
#
# PCM interface
#
pcm.hw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.pcm.subdevice
}
}
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
pcm.plughw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.pcm.subdevice
}
}
type plug
slave.pcm {
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
}
pcm.plug {
@args [ SLAVE ]
@args.SLAVE {
type string
}
type plug
slave.pcm $SLAVE
}
pcm.dmix {
@args [ SLAVE FORMAT RATE ]
@args.SLAVE {
type string
default "hw:0,0"
}
@args.FORMAT {
type string
default S16_LE
}
@args.RATE {
type integer
default 48000
}
type dmix
ipc_key 5678293
ipc_key_add_uid yes
slave {
pcm $SLAVE
format $FORMAT
rate $RATE
}
}
pcm.dsnoop {
@args [ SLAVE FORMAT RATE ]
@args.SLAVE {
type string
default "hw:0,0"
}
@args.FORMAT {
type string
default S16_LE
}
@args.RATE {
type integer
default 48000
}
type dsnoop
ipc_key 5778293
ipc_key_add_uid yes
slave {
pcm $SLAVE
format $FORMAT
rate $RATE
}
}
pcm.shm {
@args [ SOCKET PCM ]
@args.SOCKET {
type string
}
@args.PCM {
type string
}
type shm
server $SOCKET
pcm $PCM
}
pcm.tee {
@args [ SLAVE FILE FORMAT ]
@args.SLAVE {
type string
}
@args.FILE {
type string
}
@args.FORMAT {
type string
default raw
}
type file
slave.pcm $SLAVE
file $FILE
format $FORMAT
}
pcm.file {
@args [ FILE FORMAT ]
@args.FILE {
type string
}
@args.FORMAT {
type string
default raw
}
type file
slave.pcm null
file $FILE
format $FORMAT
}
pcm.null {
type null
}
pcm.default {
type plug
slave.pcm {
type hw
card {
@func getenv
vars [
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.card
}
}
device {
@func igetenv
vars [
ALSA_PCM_DEVICE
]
default {
@func refer
name defaults.pcm.device
}
}
subdevice {
@func refer
name defaults.pcm.subdevice
}
}
}
# redirect to load-on-demand extended pcm definitions
pcm.cards cards.pcm
# some links for easy use
pcm.front cards.pcm.front
pcm.rear cards.pcm.rear
pcm.center_lfe cards.pcm.center_lfe
pcm.surround40 cards.pcm.surround40
pcm.surround41 cards.pcm.surround41
pcm.surround50 cards.pcm.surround50
pcm.surround51 cards.pcm.surround51
pcm.iec958 cards.pcm.iec958
pcm.spdif cards.pcm.iec958
#
# Control interface
#
ctl.hw {
@args[ CARD ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_CTL_CARD
ALSA_CARD
]
default {
@func refer
name defaults.ctl.card
}
}
}
type hw
card $CARD
}
ctl.shm {
@args [ SOCKET CTL ]
@args.SOCKET {
type string
}
@args.CTL {
type string
}
type shm
server $SOCKET
ctl $CTL
}
ctl.default {
type hw
card {
@func getenv
vars [
ALSA_CTL_CARD
ALSA_CARD
]
default {
@func refer
name defaults.ctl.card
}
}
}
#
# RawMidi interface
#
rawmidi.hw {
@args [ CARD DEV SUBDEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_RAWMIDI_CARD
ALSA_CARD
]
default {
@func refer
name defaults.rawmidi.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_RAWMIDI_DEVICE
]
default {
@func refer
name defaults.rawmidi.device
}
}
}
@args.SUBDEV {
type integer
default -1
}
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
rawmidi.default {
type hw
card {
@func getenv
vars [
ALSA_RAWMIDI_CARD
ALSA_CARD
]
default {
@func refer
name defaults.rawmidi.card
}
}
device {
@func igetenv
vars [
ALSA_RAWMIDI_DEVICE
]
default {
@func refer
name defaults.rawmidi.device
}
}
}
rawmidi.virtual {
@args [ MERGE ]
@args.MERGE {
type string
default 1
}
type virtual
merge $MERGE
}
#
# Sequencer interface
#
seq.default {
type hw
}
seq.hw {
type hw
}
#
# HwDep interface
#
hwdep.hw {
@args [ CARD DEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_HWDEP_CARD
ALSA_CARD
]
default {
@func refer
name defaults.hwdep.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_HWDEP_DEVICE
]
default {
@func refer
name defaults.hwdep.device
}
}
}
type hw
card $CARD
device $DEV
}
hwdep.default {
type hw
card {
@func getenv
vars [
ALSA_HWDEP_CARD
ALSA_CARD
]
default {
@func refer
name defaults.hwdep.card
}
}
device {
@func igetenv
vars [
ALSA_HWDEP_DEVICE
]
default {
@func refer
name defaults.hwdep.device
}
}
}
#
# Timer interface
#
timer_query.hw {
type hw
}
timer_query.default {
type hw
}
timer.hw {
@args [ CLASS SCLASS CARD DEV SUBDEV ]
@args.CLASS {
type integer
default {
@func refer
name defaults.timer.class
}
}
@args.SCLASS {
type integer
default {
@func refer
name defaults.timer.sclass
}
}
@args.CARD {
type string
default {
@func refer
name defaults.timer.card
}
}
@args.DEV {
type integer
default {
@func refer
name defaults.timer.device
}
}
@args.SUBDEV {
type integer
default {
@func refer
name defaults.timer.subdevice
}
}
type hw
class $CLASS
sclass $SCLASS
card $CARD
device $DEV
subdevice $SUBDEV
}
timer.default {
type hw
class {
@func refer
name defaults.timer.class
}
sclass {
@func refer
name defaults.timer.sclass
}
card {
@func refer
name defaults.timer.card
}
device {
@func refer
name defaults.timer.device
}
subdevice {
@func refer
name defaults.timer.subdevice
}
}
Output of amixer controls:
numid=23,iface=HWDEP,name='ADAT Lock Status',index=1
numid=24,iface=HWDEP,name='ADAT Lock Status',index=2
numid=25,iface=HWDEP,name='ADAT Lock Status',index=3
numid=20,iface=HWDEP,name='ADAT Sync Lock Status'
numid=26,iface=HWDEP,name='Analog Extension Board'
numid=14,iface=HWDEP,name='AutoSync Reference'
numid=9,iface=HWDEP,name='IEC958 Emphasis Bit'
numid=10,iface=HWDEP,name='IEC958 Non-audio Bit'
numid=7,iface=HWDEP,name='IEC958 Output also on ADAT1'
numid=8,iface=HWDEP,name='IEC958 Professional Bit'
numid=22,iface=HWDEP,name='Line Out'
numid=5,iface=HWDEP,name='Mixer'
numid=21,iface=HWDEP,name='Passthru'
numid=13,iface=HWDEP,name='Preferred Sync Reference'
numid=19,iface=HWDEP,name='SPDIF Lock Status'
numid=15,iface=HWDEP,name='SPDIF Sample Rate'
numid=12,iface=HWDEP,name='System Clock Mode'
numid=16,iface=HWDEP,name='System Sample Rate'
numid=18,iface=HWDEP,name='Word Clock Lock Status'
numid=3,iface=MIXER,name='IEC958 Playback Con Mask'
numid=4,iface=MIXER,name='IEC958 Playback Pro Mask'
numid=17,iface=PCM,name='External Rate'
numid=6,iface=PCM,name='IEC958 Input Connector'
numid=1,iface=PCM,name='IEC958 Playback Default'
numid=2,iface=PCM,name='IEC958 Playback PCM Stream'
numid=11,iface=PCM,name='Sample Clock Source'
Output of amixer contents:
numid=23,iface=HWDEP,name='ADAT Lock Status',index=1
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=24,iface=HWDEP,name='ADAT Lock Status',index=2
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=25,iface=HWDEP,name='ADAT Lock Status',index=3
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=20,iface=HWDEP,name='ADAT Sync Lock Status'
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=26,iface=HWDEP,name='Analog Extension Board'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=14,iface=HWDEP,name='AutoSync Reference'
; type=ENUMERATED,access=r----,values=1,items=7
; Item #0 'Word'
; Item #1 'ADAT Sync'
; Item #2 'IEC958'
; Item #3 'None'
; Item #4 'ADAT1'
; Item #5 'ADAT2'
; Item #6 'ADAT3'
: values=2
numid=9,iface=HWDEP,name='IEC958 Emphasis Bit'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=10,iface=HWDEP,name='IEC958 Non-audio Bit'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=7,iface=HWDEP,name='IEC958 Output also on ADAT1'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=8,iface=HWDEP,name='IEC958 Professional Bit'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=22,iface=HWDEP,name='Line Out'
; type=BOOLEAN,access=rw---,values=1
: values=on
numid=5,iface=HWDEP,name='Mixer'
; type=INTEGER,access=rw---,values=3,min=0,max=65536,step=1
: values=0,0,0
numid=21,iface=HWDEP,name='Passthru'
; type=BOOLEAN,access=rw---,values=1
: values=off
numid=13,iface=HWDEP,name='Preferred Sync Reference'
; type=ENUMERATED,access=rw---,values=1,items=6
; Item #0 'Word'
; Item #1 'IEC958'
; Item #2 'ADAT1'
; Item #3 'ADAT Sync'
; Item #4 'ADAT2'
; Item #5 'ADAT3'
: values=2
numid=19,iface=HWDEP,name='SPDIF Lock Status'
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=15,iface=HWDEP,name='SPDIF Sample Rate'
; type=ENUMERATED,access=r----,values=1,items=7
; Item #0 '32000'
; Item #1 '44100'
; Item #2 '48000'
; Item #3 '64000'
; Item #4 '88200'
; Item #5 '96000'
; Item #6 'None'
: values=6
numid=12,iface=HWDEP,name='System Clock Mode'
; type=ENUMERATED,access=r----,values=1,items=2
; Item #0 'Master'
; Item #1 'Slave'
: values=0
numid=16,iface=HWDEP,name='System Sample Rate'
; type=INTEGER,access=r----,values=1,min=0,max=0,step=0
: values=44100
numid=18,iface=HWDEP,name='Word Clock Lock Status'
; type=ENUMERATED,access=r----,values=1,items=3
; Item #0 'No Lock'
; Item #1 'Lock'
; Item #2 'Sync'
: values=0
numid=3,iface=MIXER,name='IEC958 Playback Con Mask'
; type=IEC958,access=r----,values=1
: values=?
numid=4,iface=MIXER,name='IEC958 Playback Pro Mask'
; type=IEC958,access=r----,values=1
: values=?
numid=17,iface=PCM,name='External Rate'
; type=ENUMERATED,access=r----,values=1,items=7
; Item #0 '32000'
; Item #1 '44100'
; Item #2 '48000'
; Item #3 '64000'
; Item #4 '88200'
; Item #5 '96000'
; Item #6 'None'
: values=6
numid=6,iface=PCM,name='IEC958 Input Connector'
; type=ENUMERATED,access=rw---,values=1,items=3
; Item #0 'Optical'
; Item #1 'Coaxial'
; Item #2 'Internal'
: values=1
numid=1,iface=PCM,name='IEC958 Playback Default'
; type=IEC958,access=rw---,values=1
: values=?
numid=2,iface=PCM,name='IEC958 Playback PCM Stream'
; type=IEC958,access=rw---,values=1
: values=?
numid=11,iface=PCM,name='Sample Clock Source'
; type=ENUMERATED,access=rw---,values=1,items=7
; Item #0 'AutoSync'
; Item #1 'Internal 32.0 kHz'
; Item #2 'Internal 44.1 kHz'
; Item #3 'Internal 48.0 kHz'
; Item #4 'Internal 64.0 kHz'
; Item #5 'Internal 88.2 kHz'
; Item #6 'Internal 96.0 kHz'
: values=2
More information about the PlanetCCRMA
mailing list