우리는 .asoundrc mulit pcm을 사용하여 두 개의 alsa 루프백을 병합하고 싶었고 이를 따랐습니다.ALSA 프로젝트 - C 라이브러리 참조
alsa 루프백 엔터티는 다음 명령을 사용하여 생성됩니다.
sudo modprobe snd-aloop 활성화=1,1 인덱스=10,11
.asoundrc는 다음과 같습니다.
pcm.quad { 다양한 유형
slaves.a.pcm "hw:10,0" slaves.a.channels 16 slaves.b.pcm "hw:11,0" slaves.b.channels 16 bindings.0.slave a bindings.0.channel 0 bindings.1.slave a bindings.1.channel 1 bindings.2.slave a bindings.2.channel 2 bindings.3.slave a bindings.3.channel 3 ... bindings.14.channel 14 bindings.15.slave a bindings.15.channel 15 bindings.16.slave b bindings.16.channel 0 ... bindings.31.slave b bindings.31.channel 15 hint.description "Composite multi stream" }
ctl.quad {입력 하드웨어 카드 0}
다음 로깅 명령을 실행하는 경우:
arecord -Dquad -f S24_LE -d 15 레코드.wav
출력은 다음과 같습니다
Recording WAVE 'recorded.wav': 서명된 24비트 Little Endian, 속도 8000Hz, 모노 레코드: set_params: 1339: 이 PCM에 대한 손상된 구성: 사용 가능한 구성이 없습니다.
루프백 인스턴스에서 직접 기록하는 경우-d 하드웨어:10,0좋은 결과. 멀티 스트리밍을 사용할 수 없습니다.