Blob Blame History Raw
#
#  Hardware output from 5.0 speakers.
#  Samples must be positioned:
#    chn0 - front left
#    chn1 - front right
#    chn2 - rear left
#    chn3 - rear right
#    chn4 - center
#

pcm.!surround50 {
	@args [ CARD DEV ]
	@args.CARD {
		type string
		default {
			@func getenv
			vars [
				ALSA_SURROUND50_CARD
				ALSA_PCM_CARD
				ALSA_CARD
			]
			default {
				@func refer
				name defaults.pcm.surround50.card
			}
		}
	}
	@args.DEV {
		type integer
		default {
			@func igetenv
			vars [
				ALSA_SURROUND50_DEVICE
			]
			default {
				@func refer
				name defaults.pcm.surround50.device
			}
		}
	}
	type route
	slave.pcm {
		@func refer
		name {
			@func concat
			strings [
				"cards."
				{
					@func card_driver
					card $CARD
				}
				".pcm.surround51." $DEV ":CARD=" $CARD
			]
		}
	}
	ttable.0.FL 1
	ttable.1.FR 1
	ttable.2.RL 1
	ttable.3.RR 1
	ttable.4.FC 1
	hint {
		description "5.0 Surround output to Front, Center and Rear speakers"
		device_output $DEV
		omit_noargs true
	}
}