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