버퍼에서 1채널 오디오 데이터를 읽고 재생을 위해 alsa에 쓰고 있습니다. 장치에 쓰기 전에 PCM 데이터를 모노에서 스테레오로 변환하고 싶습니다. 일부 ALSA 구성에서 자동으로 처리됩니까? 문서 asound.conf
:
type asym
playback.pcm {
type plug
slave.pcm {
type dmix
ipc_key 5978293 # must be unique for all dmix plugins!!!!
ipc_key_add_uid yes
slave {
pcm "hw:0,0"
channels 2
format S16_LE
}
bindings {
0 0
1 1
}
}
}
구성에서 채널 2를 지정하면 dmix 플러그인이 모노에서 스테레오로의 변환을 처리한다는 의미입니까?
답변1
아니요, 모든 종류의 변환(샘플링 속도, 채널 등)을 수행하려면 다른 ALSA 플러그인이 필요합니다.
또는 쉬운 경로로 가서 Pulseaudio(어쨌든 오늘날 대부분의 배포판의 일부임)를 사용할 수 있습니다. 주요 목적은 많은 응용 프로그램이 사운드 카드를 공유하고, 리샘플링하고, 채널 간 변환 등을 할 수 있도록 하는 것입니다. 으로 무엇을 하고 싶은지 들리네요 dmix
.
이것이라면XY 문제, 필요하다고 생각하는 것이 아니라 달성하려는 것으로 질문을 편집하십시오( dmix
채널 바인딩 사용).