Mercurial > repos > rliterman > csp2
diff CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/alsa/cards/USB-Audio.conf @ 68:5028fdace37b
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 16:23:26 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/alsa/cards/USB-Audio.conf Tue Mar 18 16:23:26 2025 -0400 @@ -0,0 +1,495 @@ +# +# USB-Audio.conf - configuration for USB Audio devices +# +# +# DO NO EDIT; this is an internal ALSA file. +# If you want to add your own definitions, put them into /etc/asound.conf or +# ~/.asoundrc, with "cards." before the "USB-Audio", e.g.: +# +# cards.USB-Audio.pcm.use_dmix."NoiseBlaster 3000" no +# +# If your device requires such a definition to work correctly, please report it +# to <alsa-devel@alsa-project.org>. + + +# If a device has sample formats not supported by dmix, dmix can be disabled +# here. +USB-Audio.pcm.use_dmix { + "AudioPhile" no # uses big-endian 24-bit samples + "Audiophile USB (tm)" no +} + +# If a device does not have a four-channel mode for the front/rear outputs, +# other modes can be selected here. +# six_channels - for devices that route the last two of the four channels +# to the center/LFE outputs +# two_stereo_devices - for devices that have two stereo audio interfaces +USB-Audio.pcm.surround40_type { + "AudioPhile" two_stereo_devices + "Audiophile USB (tm)" two_stereo_devices + "OmniStudio" two_stereo_devices + "Quattro" two_stereo_devices + "SB Audigy 2 NX" six_channels + "USB AudioSport Quattro (tm)" two_stereo_devices +} + +# If a device does not use the first PCM device for digital data, the device +# number for the iec958 device can be changed here. +USB-Audio.pcm.iec958_device { + # "NoiseBlaster 3000" 42 + "USB Sound Blaster HD" 1 + "Xonar U7" 1 + "ASUS XONAR U5" 1 + "XONAR U5" 1 + "XONAR SOUND CARD" 1 + + # The below don't have digital in/out, so prevent them from being opened. + "Andrea PureAudio USB-SA Headset" 999 + "Blue Snowball" 999 + "C-Media USB Headphone Set" 999 + "HP Digital Stereo Headset" 999 + "GN 9330" 999 + "Logitech Speaker Lapdesk N700" 999 + "Logitech G35 Headset" 999 + "Logitech USB Headset" 999 + "Logitech USB Headset H540" 999 + "Logitech Wireless Headset" 999 + "Plantronics GameCom 780" 999 + "Plantronics USB Headset" 999 + "Plantronics Wireless Audio" 999 + "SB WoW Headset" 999 + "Scarlett 2i2 USB" 999 + "Scarlett 2i4 USB" 999 + "Sennheiser USB headset" 999 + "SWTOR Gaming Headset by Razer" 999 + "Thunderbolt Dock Audio Headset" 999 + "Thunderbolt Dock Audio Module" 999 + "USB Device 0x46d_0x821" 999 + "USB Device 0x46d_0x992" 999 + "WD15 Dock" 999 + "WD19 Dock" 999 +} + +# Second iec958 device number, if any. +USB-Audio.pcm.iec958_2_device { + "PHIREE U2" 1 # 0 = PCM S/PDIF, 1 = non-PCM S/PDIF + "PHIREE U2SX" 1 # 0 = PCM S/PDIF, 1 = non-PCM S/PDIF +} + + +# If a device requires non-standard definitions for front, default, surround40, +# surround51, surround71 or iec958, they can be defined here. + +# M-Audio AudioPhile USB: +# device 0: analog output, digital input +# device 1: digital output, analog input +USB-Audio."AudioPhile".pcm.default "cards.USB-Audio.Audiophile USB (tm).pcm.default" +USB-Audio."Audiophile USB (tm)".pcm.default { + @args [ CARD ] + @args.CARD { type string } + type asym + playback.pcm { + type plug + slave.pcm { + type hw + card $CARD + device 0 + } + } + capture.pcm { + type plug + slave.pcm { + @func concat + strings [ "dsnoop:DEV=1,CARD=" $CARD ] + } + } +} +USB-Audio."AudioPhile".pcm.iec958 "cards.USB-Audio.Audiophile USB (tm).pcm.iec958" +USB-Audio."Audiophile USB (tm)".pcm.iec958 { + @args [ CARD AES0 AES1 AES2 AES3 ] + @args.CARD { type string } + @args.AES0 { type integer } + @args.AES1 { type integer } + @args.AES2 { type integer } + @args.AES3 { type integer } + type asym + playback.pcm { + type hw + card $CARD + device 1 + } + capture.pcm { + type hw + card $CARD + device 0 + } +} + +# For this card we can (and must to get IEC61937) set AES bits +USB-Audio."MicroII".pcm.iec958 "cards.USB-Audio.Audio Advantage MicroII.pcm.iec958" +USB-Audio."Audio Advantage MicroII".pcm.iec958 { + @args [ CARD AES0 AES1 AES2 AES3 ] + @args.CARD { type string } + @args.AES0 { type integer } + @args.AES1 { type integer } + @args.AES2 { type integer } + @args.AES3 { type integer } + + type hooks + slave.pcm { + type hw + card $CARD + } + + hooks.0 { + type ctl_elems + hook_args [ + { + interface PCM + name "IEC958 Playback Default" + preserve true + optional true + value [ $AES0 $AES1 $AES2 $AES3 ] + } + { + name "IEC958 Playback Switch" + lock true + preserve true + value 1 + } + ] + } +} + +################################################################################ + +<confdir:pcm/front.conf> + +USB-Audio.pcm.front.0 { + @args [ CARD ] + @args.CARD { type string } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.front:CARD=" $CARD + ] + } + default { + # We could use softvol, but the driver might have guessed a + # wrong name for the real volume control. + type hw + card $CARD + device 0 + } +} + +USB-Audio.pcm.default { + @args [ CARD ] + @args.CARD { type string } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.default:CARD=" $CARD + ] + } + default { + type asym + playback.pcm { + type plug + slave.pcm { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.default_playback_dmix_" + { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.use_dmix." + { @func card_name card $CARD } + ] + } + default yes + } + ":CARD=" $CARD + ] + } + } + } + capture.pcm { + type plug + slave.pcm { + @func concat + strings [ "dsnoop:" $CARD ] + } + } + } +} + +USB-Audio.pcm.default_playback_dmix_yes { + @args [ CARD ] + @args.CARD { type string } + @func concat + strings [ "dmix:" $CARD ] +} + +USB-Audio.pcm.default_playback_dmix_no { + @args [ CARD ] + @args.CARD { type string } + type hw + card $CARD + device 0 +} + +<confdir:pcm/surround40.conf> + +USB-Audio.pcm.surround40.0 { + @args [ CARD ] + @args.CARD { type string } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.surround40:CARD=" $CARD + ] + } + default { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.surround40_" + { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.surround40_type." + { @func card_name card $CARD } + ] + } + default default + } + ":CARD=" $CARD + ] + } + } +} + +USB-Audio.pcm.surround40_default { + @args [ CARD ] + @args.CARD { type string } + type hw + card $CARD + device 0 +} + +USB-Audio.pcm.surround40_six_channels { + @args [ CARD ] + @args.CARD { type string } + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + slave { + pcm { + type hw + card $CARD + device 0 + } + channels 6 + } +} + +USB-Audio.pcm.surround40_two_stereo_devices { + @args [ CARD ] + @args.CARD { type string } + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.2 1 + ttable.3.3 1 + slave.pcm { + type multi + slaves { + a { + pcm { + type hw + card $CARD + device 0 + } + channels 2 + } + b { + pcm { + type hw + card $CARD + device 1 + } + channels 2 + } + } + bindings [ + { slave a channel 0 } + { slave a channel 1 } + { slave b channel 0 } + { slave b channel 1 } + ] + } +} + +<confdir:pcm/surround21.conf> +<confdir:pcm/surround41.conf> +<confdir:pcm/surround50.conf> +<confdir:pcm/surround51.conf> + +USB-Audio.pcm.surround51.0 { + @args [ CARD ] + @args.CARD { type string } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.surround51:CARD=" $CARD + ] + } + default { + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + ttable.4.2 1 + ttable.5.3 1 + slave { + pcm { + type hw + card $CARD + device 0 + } + channels 6 + } + } +} + +<confdir:pcm/surround71.conf> + +USB-Audio.pcm.surround71.0 { + @args [ CARD ] + @args.CARD { type string } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.surround71:CARD=" $CARD + ] + } + default { + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + ttable.4.2 1 + ttable.5.3 1 + ttable.6.6 1 + ttable.7.7 1 + slave { + pcm { + type hw + card $CARD + device 0 + } + channels 8 + } + } +} + +<confdir:pcm/iec958.conf> + +USB-Audio.pcm.iec958.0 { + @args [ CARD AES0 AES1 AES2 AES3 ] + @args.CARD { type string } + @args.AES0 { type integer } + @args.AES1 { type integer } + @args.AES2 { type integer } + @args.AES3 { type integer } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.iec958:CARD=" $CARD + ",AES0=" $AES0 ",AES1=" $AES1 ",AES2=" $AES2 ",AES3=" $AES3 + ] + } + default { + # FIXME: we cannot set the AES parameters + type hw + card $CARD + device { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.iec958_device." + { @func card_name card $CARD } + ] + } + default 0 + } + } +} + +USB-Audio.pcm.iec958.1 { + @args [ CARD AES0 AES1 AES2 AES3 ] + @args.CARD { type string } + @args.AES0 { type integer } + @args.AES1 { type integer } + @args.AES2 { type integer } + @args.AES3 { type integer } + @func refer + name { + @func concat + strings [ + "cards.USB-Audio." + { @func card_name card $CARD } + ".pcm.iec958_2:CARD=" $CARD + ",AES0=" $AES0 ",AES1=" $AES1 ",AES2=" $AES2 ",AES3=" $AES3 + ] + } + default { + # FIXME: we cannot set the AES parameters + type hw + card $CARD + device { + @func refer + name { + @func concat + strings [ + "cards.USB-Audio.pcm.iec958_2_device." + { @func card_name card $CARD } + ] + } + default 999 + } + } +} + +# vim: ft=alsaconf