Hi Takashi,
I'm very sorry for my late reply.
You are correct about the available input and outputs, but I'm not sure that I understand your routing scheme very well.
* The currently active digital input can be selected with "Digital Input Capture Route", like this: o AES/EBU: amixer -c 0 cset numid=3,iface=MIXER,name='Digital Input Capture Route' 0 o S/PDIF RCA: amixer -c 0 cset numid=3,iface=MIXER,name='Digital Input Capture Route' 1 o S/PDIF toslink: amixer -c 0 cset numid=3,iface=MIXER,name='Digital Input Capture Route' 2 When playing sound from stream input, it doesn't make any difference which one the above is currently selected. * The clock can be selected independently from the current input with AV/C [1]. * The 2-channel output can be routed to all the digital and analog outputs simultaneously (but analog outputs are only available if the DAC is connected). One can choose which outputs are active or not with the "Output Playback Switch": o AES/EBU on: amixer -c 0 cset numid=6,iface=MIXER,name='XLR::XLR Output Playback Switch' 1 AES/EBU off: amixer -c 0 cset numid=6,iface=MIXER,name='XLR::XLR Output Playback Switch' 0 o S/PDIF RCA on: amixer -c 0 cset numid=7,iface=MIXER,name='RCA::RCA Output Playback Switch' 1 S/PDIF RCA off: amixer -c 0 cset numid=7,iface=MIXER,name='RCA::RCA Output Playback Switch' 0 o DAC on: amixer -c 0 cset numid=10,iface=MIXER,name='DAC::DAC Output Playback Switch' 1 DAC off: amixer -c 0 cset numid=10,iface=MIXER,name='DAC::DAC Output Playback Switch' 0 * There is no hardware mixer capability, i.e. the inputs cannot be routed directly to the outputs.
Our preamp mode works like this:
1. A digital input source is selected with AV/C (Toslink, or RCA, or XLR), i.e. with "Digital Input Capture Route" 2. Clock input source is set to the same as audio input source with AV/C [1] 3. DICE clock rate is set to external clock rate [2] 4. A simple 2-channel ALSA loopback with digital volume control is created between input and output
I hope this answers your questions, otherwise please let me know.
Kind regards, Michele Perrone
[1] https://github.com/weiss-engineering/snd-dice/blob/avc/dice-avc.c#L474 [2] https://github.com/weiss-engineering/snd-dice/blob/avc/dice-avc.c#L549
On 21/01/24 15:07, Takashi Sakamoto wrote:
Hi Michele Perrone, Michele Perrone,
I restart my work to support Weiss models[1] as I have enough time after some tasks. After implementing control elements for your MAN301, I have some questions about internal routing. Would I ask your advices about them?
I think the model has below inputs/outputs.
- inputs
- spdif-opt-input-1/2
- spdif-coax-input-1/2
- aesebu-xlr-input-1/2
- stream-input-1/2
- outputs:
- stream-output-1/2
- spdif-coax-output-1/2
- aesebu-xlr-output-1/2
- analog-xlr-output-1/2
- analog-coax-output-1/2
And at present I guess its internal routing is like[2]:
spdif-opt-input-1/2 ---+ spdif-coax-input-1/2 --(or)--> digital-input-1/2 -----------------> stream-output-1/2 aesebu-xlr-input-1/2 ---+ | v stream-input-1/2 --------------------(or)--+----------------------> spdif-coax-output-1/2 +----------------------> aesebu-xlr-output-1/2 +--analog-output-1/2 --> analog-xlr-output-1/2 +-----------> analog-coax-output-1/2
Then I have some questions.
- The signal source designated for stream-output-1/2
I think it is any type of digital input designated by control element "Digital Input Capture Route", or source ID block which generates silence.
- The signal sources designated for the outputs
According to the manual of MAN301, the sources are selectable somehow. There are two ways at least for pre-amp and player modes. I guess that any interface is defined to configure internal router for the purpose.
[1]https://github.com/alsa-project/snd-firewire-ctl-services/tree/topic/weiss-s... [2]https://github.com/alsa-project/snd-firewire-ctl-services/blob/topic/weiss-s...
Thanks
Takashi Sakamoto