Include.pcm_split.File "/common/pcm/split.conf"

Macro [
	{
		SplitPCM {
			Name "revelator_stereo_out"
			Direction Playback
			Channels 2
			HWChannels 6
			HWChannelPos0 FL
			HWChannelPos1 FR
			HWChannelPos2 FL
			HWChannelPos3 FR
			HWChannelPos4 FL
			HWChannelPos5 FR
		}
	}
	{
		SplitPCM {
			Name "revelator_stereo_in"
			Direction Capture
			Channels 2
			HWChannels 8
			HWChannelPos0 FL
			HWChannelPos1 FR
			HWChannelPos2 FL
			HWChannelPos3 FR
			HWChannelPos4 FL
			HWChannelPos5 FR
			HWChannelPos6 FL
			HWChannelPos7 FR
		}
	}
	{
		SplitPCM {
			Name "revelator_mono_in"
			Direction Capture
			Channels 1
			HWChannels 8
			HWChannelPos0 MONO
			HWChannelPos1 MONO
			HWChannelPos2 MONO
			HWChannelPos3 MONO
			HWChannelPos4 MONO
			HWChannelPos5 MONO
			HWChannelPos6 MONO
			HWChannelPos7 MONO
		}
	}
]

SectionDevice."Line1" {
	Comment "Playback L/R"

	Value {
		PlaybackPriority 100
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_out"
		Direction Playback
		HWChannels 6
		Channels 2
		Channel0 0
		Channel1 1
		ChannelPos0 FL
		ChannelPos1 FR
	}
}

SectionDevice."Line2" {
	Comment "Virtual Output A L/R"

	Value {
		PlaybackPriority 200
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_out"
		Direction Playback
		HWChannels 6
		Channels 2
		Channel0 2
		Channel1 3
		ChannelPos0 FL
		ChannelPos1 FR
	}
}

SectionDevice."Line3" {
	Comment "Virtual Output B L/R"

	Value {
		PlaybackPriority 300
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_out"
		Direction Playback
		HWChannels 6
		Channels 2
		Channel0 4
		Channel1 5
		ChannelPos0 FL
		ChannelPos1 FR
	}
}

SectionDevice."Mic1" {
	Comment "Microphone"

	Value {
		CapturePriority 100
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_mono_in"
		Direction Capture
		HWChannels 8
		Channels 1
		Channel0 0
		ChannelPos0 MONO
	}
}

SectionDevice."Mic2" {
	Comment "Headset Mic"

	Value {
		CapturePriority 200
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_mono_in"
		Direction Capture
		HWChannels 8
		Channels 1
		Channel0 1
		ChannelPos0 MONO
	}
}

SectionDevice."Line4" {
	Comment "Line In L/R"

	Value {
		CapturePriority 300
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_in"
		Direction Capture
		HWChannels 8
		Channels 2
		Channel0 2
		Channel1 3
		ChannelPos0 FL
		ChannelPos1 FR
	}
}

SectionDevice."Line5" {
	Comment "Stream Mix A L/R"

	Value {
		CapturePriority 400
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_in"
		Direction Capture
		HWChannels 8
		Channels 2
		Channel0 4
		Channel1 5
		ChannelPos0 FL
		ChannelPos1 FR
	}
}

SectionDevice."Line6" {
	Comment "Stream Mix B L/R"

	Value {
		CapturePriority 500
	}

	Macro.pcm_split.SplitPCMDevice {
		Name "revelator_stereo_in"
		Direction Capture
		HWChannels 8
		Channels 2
		Channel0 6
		Channel1 7
		ChannelPos0 FL
		ChannelPos1 FR
	}
}
