alsaloop와 alsa 캡처 장치 공유

alsaloop와 alsa 캡처 장치 공유

프로그램이 액세스할 수 있도록 마이크 입력을 "공유"하려고 합니다.


순진한 초기 시도.

터미널에서:

alsaloop -C hw:1,0 -P hw:0,0 -t 500 -c1 -A 5 -T-1 --resample -v

다른 터미널에서:

$ arecord -D hw:1,0 -d 5 -f S16_LE > silence.wav
arecord: main:722: audio open error: Device or resource busy

인용하다:

hw:1,0 - microphone input
hw:0,0 - output

나는 다음이 나에게 필요한 것이라고 생각합니다.http://alsa.opensrc.org/Dsnoop

하지만 내 것을 올바르게 구성하는 방법을 잘 모르겠습니다 .asoundrc.

나는 다음을 시도했다:

pcm.dsnooped {
    type dsnoop
    ipc_key 1024
    slave {
        pcm "hw:1,0"
        channels 1
        rate 48000
    }
}

pcm.foo {
    type plug
    slave.pcm "dsnooped" # use our new PCM here

다음이 작동합니다: arecord -D foo -d 5 -f S16_LE > recording.wav

그리고 재생할 수 있습니다:aplay recording.wav

하지만 그때 alsaloop나는 인식하지 못하는 것 같았습니다 foo.

alsaloop -C foo -P hw:0,0 -t 500 -c1 -A 5 -T-1 --resample -v

실제로 이것은 중단된 것 같아서 다음과 같이 종료해야 합니다.pkill -9 alsaloop


이 작업을 수행하는 방법에 대한 아이디어나 제안이 있는 사람이 있습니까?

관련 정보