在 ALSA 中使用環回時無法將取樣率設定為 44100 Hz

在 ALSA 中使用環回時無法將取樣率設定為 44100 Hz

我已經像這樣設定了 ALSA,以便在環回裝置上播放和錄製:

# output device
pcm.loopout {
  type dmix
  ipc_key 328211
  slave {
    pcm "hw:Loopback,0,0"
    period_size 1024
    buffer_size 2048
    rate 44100
  }
}

# input device
pcm.loopin {
  type dsnoop
  ipc_key 686592
  slave {
    pcm "hw:Loopback,1,0"
  }
}

# duplex plug device
pcm.loop {
  type plug
  slave {
    pcm {
      type asym
      playback.pcm "loopout"
      capture.pcm "loopin"
    }
  }
}

pcm.!default {
    type plug
    slave {
      pcm loop
      rate 44100
    }
}

但是,當我嘗試使用例如 sox 從循環中記錄時,例如使用

rec -b 16 -c 2 -r 44.1k test.flac silence 1 0.1 3% 1 3.0 3%

我收到訊息

rec WARN formats: can't set sample rate 44100; using 48000

我發現這非常奇怪,特別是因為我在 asound.conf 中將速率設定為 44100。

有任何想法嗎?

相關內容