.asoundrc에서 dmix 및 dsnoop 장치를 사용하여 기본 장치를 어떻게 생성합니까?

.asoundrc에서 dmix 및 dsnoop 장치를 사용하여 기본 장치를 어떻게 생성합니까?

dmix 및 dsnoop을 사용하여 비대칭 기본 장치를 만들려고 합니다. 제가 사용하고 있는 애플리케이션은 USB 마이크와 오디오 출력에 대한 액세스를 계속 독점하고 있습니다. 또한 마이크를 오디오 출력에 동시에 연결하고 싶기 때문에 이를 허용하는 기본 장치를 생성하여 응용 프로그램이 여러 프로세스를 제공할 수 있는 장치를 사용하도록 해야 합니다(응용 프로그램은 입력을 열려고 시작합니다). 기본 장치 출력에서).

이것은 내가 현재 가지고 있는 .asoundrc입니다:

pcm.inout {
  type plug

  slave.pcm {
    type asym

    playback.pcm {
      type dmix

      ipc_key 4323

      slave.pcm: "hw:0,1"
    }

    capture.pcm {
      type dsnoop
      ipc_key 5432
      slave.pcm "hw:1,0"
    }
  }
}

ctl.inout {
  type hw
  card 0
}

pcm.!default "inout"
ctl.!defualt "inout"

그러나 응용 프로그램을 실행하면 alsaloop -C default -P default -c 1 -t 50000다음과 같은 결과가 나타납니다.

ALSA lib pcm_direct.c:1524:(_snd_pcm_direct_get_slave_ipc_offset) Invalid type 'dmix' for slave PCM

또한 ALSA가 실행 시 자동으로 dmix 장치를 생성하는 것을 보는데 aplay -L어떻게 사용하는지 모르겠습니다. alsaloop -C default -P dmix:0,1 -c 2 -t 50000오류는 발생하지 않지만 헤드폰을 통해 아무 소리도 들리지 않습니다.

관련 정보