Blame src/conf/cards/USB-Audio.conf

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