まず、こんにちは皆さん!
私の名前はPrzemek Gajosで、これが私の最初の投稿です。
最近、オーディオキャプチャカード用のALSAドライバを作成しましたが、PULSEAUDIOがキャプチャソースとして認識するのに問題があります。
あなたのうちの誰かが過去にこのようなことを経験し、助けることができることを望むいくつかの事実は次のとおりです。
(1)キャプチャカードには、オーディオ入力(ステレオ)2個(HDMI 1個、アナログ1個)があります。 ALSAを直接使用すると、両方のサウンドをキャプチャできます。
(2)PULSEAUDIOコマンドを使用してオーディオキャプチャソースを一覧表示する場合:
$ pactl list | grep -A2 'Source #' | grep 'Name: ' | cut -d" " -f2
出力には以下が表示されます。これはオンボードデバイスであり、私のALSAドライバを使用しません。
alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
alsa_input.pci-0000_00_1b.0.analog-stereo
したがって、上記のように、私のデバイスはキャプチャソースとしてリストされていません。
(3) 私が使用するとき:
$ pactl list
出力には「my」ALSAカードが表示されます。以下の2つのサンプル出力を参照してください。 (a)オンボードカード(マイドライバーを使用しない)および(b)マイドライバーを使用するカード:
(a) 機内カード:
Card #0
Name: alsa_card.pci-0000_00_1b.0
Driver: module-alsa-card.c
Owner Module: 4
Properties:
alsa.card = "10"
alsa.card_name = "HDA Intel PCH"
alsa.long_card_name = "HDA Intel PCH at 0xfbf20000 irq 67"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card10"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.name = "6 Series/C200 Series Chipset Family High Definition Audio Controller"
device.form_factor = "internal"
device.string = "10"
device.description = "Built-in Audio"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Profiles:
output:analog-stereo: Analogue Stereo Output (sinks: 1, sources: 0, priority. 6000)
output:analog-stereo+input:analog-stereo: Analogue Stereo Duplex (sinks: 1, sources: 1, priority. 6060)
output:analog-surround-40: Analogue Surround 4.0 Output (sinks: 1, sources: 0, priority. 700)
output:analog-surround-40+input:analog-stereo: Analogue Surround 4.0 Output + Analogue Stereo Input (sinks: 1, sources: 1, priority. 760)
output:analog-surround-41: Analogue Surround 4.1 Output (sinks: 1, sources: 0, priority. 800)
output:analog-surround-41+input:analog-stereo: Analogue Surround 4.1 Output + Analogue Stereo Input (sinks: 1, sources: 1, priority. 860)
output:analog-surround-50: Analogue Surround 5.0 Output (sinks: 1, sources: 0, priority. 700)
output:analog-surround-50+input:analog-stereo: Analogue Surround 5.0 Output + Analogue Stereo Input (sinks: 1, sources: 1, priority. 760)
output:analog-surround-51: Analogue Surround 5.1 Output (sinks: 1, sources: 0, priority. 800)
output:analog-surround-51+input:analog-stereo: Analogue Surround 5.1 Output + Analogue Stereo Input (sinks: 1, sources: 1, priority. 860)
input:analog-stereo: Analogue Stereo Input (sinks: 0, sources: 1, priority. 60)
off: Off (sinks: 0, sources: 0, priority. 0)
Active Profile: output:analog-stereo+input:analog-stereo
Ports:
analog-output: Analogue Output (priority 9900)
Part of profile(s): output:analog-stereo, output:analog-stereo+input:analog-stereo, output:analog-surround-40, output:analog-surround-40+input:analog-stereo, output:analog-surround-41, output:analog-surround-41+input:analog-stereo, output:analog-surround-50, output:analog-surround-50+input:analog-stereo, output:analog-surround-51, output:analog-surround-51+input:analog-stereo
analog-input-microphone: Microphone (priority 8700)
Part of profile(s): output:analog-stereo+input:analog-stereo, output:analog-surround-40+input:analog-stereo, output:analog-surround-41+input:analog-stereo, output:analog-surround-50+input:analog-stereo, output:analog-surround-51+input:analog-stereo, input:analog-stereo
analog-input-linein: Line In (priority 8100)
Part of profile(s): output:analog-stereo+input:analog-stereo, output:analog-surround-40+input:analog-stereo, output:analog-surround-41+input:analog-stereo, output:analog-surround-50+input:analog-stereo, output:analog-surround-51+input:analog-stereo, input:analog-stereo
(b)私のカードの1つ(カードが2つ以上あります):
Card #11
Name: alsa_card.1
Driver: module-alsa-card.c
Owner Module: 31
Properties:
alsa.card = "1"
alsa.card_name = "OEM_VISIONRGB_AV"
alsa.long_card_name = "OEM_VISIONRGB_AV Analog DGC dada"
device.bus_path = "/devices/virtual/sound/card1"
sysfs.path = "/devices/virtual/sound/card1"
device.string = "1"
device.description = "OEM_VISIONRGB_AV"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card"
Profiles:
input:analog-stereo: Analogue Stereo Input (sinks: 0, sources: 1, priority. 60)
off: Off (sinks: 0, sources: 0, priority. 0)
Active Profile: input:analog-stereo
Ports:
analog-input: Analogue Input (priority 10000)
Part of profile(s): input:analog-stereo
私のカードと機内カードは「名前」フィールドの形式が非常に異なりますのでご注意ください。私がテストしたものは次のとおりです。
alsa_card.pci-0000_00_1b.0(オンボードカード)でキャプチャすると正常に動作します。
alsa_card.1(マイカード)ではキャプチャできません。
私のALSAドライバにはまだいくつかの要素がありません。たとえば、ミキサー要素は含まれていません。これは、ALSAとPULSEAUDIOの間の協力が不足している理由かもしれないと思います。あなたの経験に照らして、PULSEAUDIOはALSAデバイスをキャプチャソースとして認証するためにミキサー要素が必要かどうかを知っていますか?
このように長いメッセージを送ってくれて申し訳ありません。それでも上記の内容が眉をひきつけるのか?
多くの助けとアドバイスをお願いします、
プシェミク