나는 8채널을 녹음하고 8채널을 통해 출력을 푸시할 수 있는 xmos-200 보드를 가지고 있습니다. 나는 출력에 집중할 것이다.
출력에는 각각 2채널의 3.5mm 잭 4개가 있습니다. 보드는 Linux에서 인식되며 aplay -L이 표시됩니다.
sysdefault:CARD=x20
xCORE USB Audio 2.0, USB Audio
Default Audio Device
front:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
Front speakers
surround40:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
Direct sample mixing device
dsnoop:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
Direct sample snooping device
hw:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
Direct hardware device without any conversions
plughw:CARD=x20,DEV=0
xCORE USB Audio 2.0, USB Audio
Hardware device with all software conversions
모든 출력 포트와 모든 채널을 사용하여 오디오 파일을 재생할 수 있습니다
aplay --device plughw:CARD=x20,DEV=0 camera.wav
4개의 스테레오 출력 중 어떤 것을 사용할지 선택하고 싶습니다. 이 작업을 수행하는 방법에 대한 도움이 필요합니까?
답변1
4개의 잭은 물리적으로 분리되어 있지만 소프트웨어에서는 8채널 장치만 볼 수 있습니다.
ALSA 플러그인을 사용하여 이 장치를 분할할 수 있습니다.
pcm_slave.eightchannels {
pcm "hw:x20,0"
channels 8
rate 48000 # or whatever
}
pcm.stereo1 {
type plug
slave.pcm {
type dshare
ipc_key 20160316 # any random but unique number
slave eightchannels
bindings [ 0 1 ]
}
}
pcm.stereo2 {
type plug
slave.pcm {
type dshare
ipc_key 20160316
slave eightchannels
bindings [ 2 3 ]
}
}
pcm.stereo3 {
type plug
slave.pcm {
type dshare
ipc_key 20160316
slave eightchannels
bindings [ 4 5 ]
}
}
pcm.stereo4 {
type plug
slave.pcm {
type dshare
ipc_key 20160316
slave eightchannels
bindings [ 6 7 ]
}
}
여러 애플리케이션이 동일한 스테레오 장치를 사용할 수 있도록 하려면 dshare
로 바꾸십시오 dmix
.