Direction Capture
HWChannels "${var:DirectCaptureChannels}"
Channels 1
- Channel0 10
+ Channel0 "${var:SpdifInCh0}"
ChannelPos0 MONO
}
}
Direction Capture
HWChannels "${var:DirectCaptureChannels}"
Channels 1
- Channel0 11
+ Channel0 "${var:SpdifInCh1}"
ChannelPos0 MONO
}
}
# Digital (Professional) Inputs
-#
-# Gen 1/2 have 18 capture channels (ADAT 1-6), Gen 3+ have 20 (ADAT 1-8).
-# Channel indices 18-19 are out of bounds when DirectCaptureChannels is 18,
-# so conditionally size the ADAT capture device.
-
-If.adat_in_18ch {
- Condition {
- Type String
- String1 "${var:DirectCaptureChannels}"
- String2 "18"
- }
- True.SectionDevice."Direct 2" {
- Comment "ADAT Optical Input"
-
- Value {
- CapturePriority 48
- }
- Macro.pcm_split.SplitPCMDevice {
- Name "18i20_adat_in"
- Direction Capture
- HWChannels "${var:DirectCaptureChannels}"
- Channels 6
- Channel0 12
- Channel1 13
- Channel2 14
- Channel3 15
- Channel4 16
- Channel5 17
- ChannelPos0 UNKNOWN
- ChannelPos1 UNKNOWN
- ChannelPos2 UNKNOWN
- ChannelPos3 UNKNOWN
- ChannelPos4 UNKNOWN
- ChannelPos5 UNKNOWN
- }
- }
- False.SectionDevice."Direct 2" {
- Comment "ADAT Optical Input"
+SectionDevice."Direct 2" {
+ Comment "ADAT Optical Input"
- Value {
- CapturePriority 48
- }
+ Value {
+ CapturePriority 48
+ }
- Macro.pcm_split.SplitPCMDevice {
- Name "18i20_adat_in"
- Direction Capture
- HWChannels "${var:DirectCaptureChannels}"
- Channels 8
- Channel0 12
- Channel1 13
- Channel2 14
- Channel3 15
- Channel4 16
- Channel5 17
- Channel6 18
- Channel7 19
- ChannelPos0 UNKNOWN
- ChannelPos1 UNKNOWN
- ChannelPos2 UNKNOWN
- ChannelPos3 UNKNOWN
- ChannelPos4 UNKNOWN
- ChannelPos5 UNKNOWN
- ChannelPos6 UNKNOWN
- ChannelPos7 UNKNOWN
- }
+ Macro.pcm_split.SplitPCMDevice {
+ Name "18i20_adat_in"
+ Direction Capture
+ HWChannels "${var:DirectCaptureChannels}"
+ Channels 8
+ Channel0 "${var:AdatInCh0}"
+ Channel1 "${var:AdatInCh1}"
+ Channel2 "${var:AdatInCh2}"
+ Channel3 "${var:AdatInCh3}"
+ Channel4 "${var:AdatInCh4}"
+ Channel5 "${var:AdatInCh5}"
+ Channel6 "${var:AdatInCh6}"
+ Channel7 "${var:AdatInCh7}"
+ ChannelPos0 UNKNOWN
+ ChannelPos1 UNKNOWN
+ ChannelPos2 UNKNOWN
+ ChannelPos3 UNKNOWN
+ ChannelPos4 UNKNOWN
+ ChannelPos5 UNKNOWN
+ ChannelPos6 UNKNOWN
+ ChannelPos7 UNKNOWN
}
}
Define.DirectPlaybackChannels 20
Define.DirectCaptureChannels 20 # fallback; overridden per generation
+# Digital (S/PDIF + ADAT) capture-input channel indices.
+# Default = 20-channel (3rd/4th gen) layout. The 18-channel 1st/2nd gen
+# capture stream omits the two extra channels at 8-9, so its S/PDIF and
+# ADAT inputs sit two channels lower (overridden in the gen1/gen2 blocks).
+Define.SpdifInCh0 10
+Define.SpdifInCh1 11
+Define.AdatInCh0 12
+Define.AdatInCh1 13
+Define.AdatInCh2 14
+Define.AdatInCh3 15
+Define.AdatInCh4 16
+Define.AdatInCh5 17
+Define.AdatInCh6 18
+Define.AdatInCh7 19
+
If.gen1 {
Condition {
Type RegexMatch
}
True.Define {
DirectCaptureChannels 18
+ # 18-ch capture: S/PDIF in = 8,9 ; ADAT in = 10..17
+ SpdifInCh0 8
+ SpdifInCh1 9
+ AdatInCh0 10
+ AdatInCh1 11
+ AdatInCh2 12
+ AdatInCh3 13
+ AdatInCh4 14
+ AdatInCh5 15
+ AdatInCh6 16
+ AdatInCh7 17
}
}
True.Define {
Generation "2nd"
DirectCaptureChannels 18
+ # 18-ch capture: S/PDIF in = 8,9 ; ADAT in = 10..17
+ SpdifInCh0 8
+ SpdifInCh1 9
+ AdatInCh0 10
+ AdatInCh1 11
+ AdatInCh2 12
+ AdatInCh3 13
+ AdatInCh4 14
+ AdatInCh5 15
+ AdatInCh6 16
+ AdatInCh7 17
}
}