オーディオジャックイベントのテスト

オーディオジャックイベントのテスト

IEC958まず、ステレオ ジャックのオーディオ出力が/デバイスとして検出/リストされていますが、これは光出力ではなく、標準のステレオ ジャックであることを明確にしておきますS/PDIF。これがすでに問題の原因になっている可能性があります。

Windows では、プラグの抜き差しの検出は正常に機能し、Linux (Mint 4.10.0-35-generic を使用) では以前は機能していましたが、現在使用している他の WM では機能していません。WMi3とは無関係で、その間に何か他のものが変更された可能性があります。オーディオ用のドライバーをインストールした覚えはありませんが、すでに機能しています。

問題

オーディオ ジャックのプラグイン/アンプラグ イベントを発生させることができません。

何が機能するか

を手動でpavucontrolデジタルステレオ (IEC958) 出力 ( ) に切り替えるとiec985-stereo-output、スピーカー ( ) がミュートされanalog-output-speaker、ジャックでオーディオと音量をコントロールできるようになります。いいですね。

IEC958リストには、ジャックに排他的なオーディオを提供する(つまりスピーカーをミュートする)他のオプションはありません。(出力に切り替える必要があることがわかるまで、最初に対処していたこの他の問題以外に:オーディオの音量は aux で 0 から 100 まで調整できます (基本的にはオン/オフのみ)https://forums.linuxmint.com/viewtopic.php?f=48&t=256467&p=1391958#p1391958しかし、それはまったく別の話になりますが、とにかく。

オーディオジャックイベントのテスト

イベントをテストする方法は尽きたと思う

EVテスト:

Available devices:
/dev/input/event0:  Lid Switch
/dev/input/event1:  Sleep Button
/dev/input/event2:  Power Button
/dev/input/event3:  Power Button
/dev/input/event4:  AT Translated Set 2 keyboard
/dev/input/event5:  Video Bus
/dev/input/event6:  Video Bus
/dev/input/event7:  Logitech MX Master 2S
/dev/input/event8:  ETPS/2 Elantech Touchpad
/dev/input/event9:  Metadot - Das Keyboard Das Keyboard
/dev/input/event10: Metadot - Das Keyboard Das Keyboard
/dev/input/event11: MSI WMI hotkeys
/dev/input/event12: NEC HD WebCam
/dev/input/event13: HDA Intel PCH Mic
/dev/input/event14: HDA Intel PCH HDMI/DP,pcm=3
/dev/input/event15: HDA Intel PCH HDMI/DP,pcm=7
/dev/input/event16: HDA Intel PCH HDMI/DP,pcm=8

14、15、16 はまったく何も検出しません。13 はマイクに接続するとトリガーされるので、少なくとも 1 つは動作します。

acpi_listen

❱ acpi_listen

何もありません...マイクに関しては:

jack/microphone MICROPHONE plug
jack/microphone MICROPHONE unplug

異なるイベント

私の理解では、次の方法でイベントをモックすることができます。

sudo cat /proc/asound/card0/codec\#0 > unplugged
sudo cat /proc/asound/card0/codec\#0 > plugged
diff unplugged plugged

しかし、diff は何も出力しません。

ハードウェア

パックド

❱ pacmd list-sinks | grep -e 'name' -e 'index'

  * index: 68
    name: <alsa_output.pci-0000_00_1f.3.iec958-stereo>
        alsa.name = "ALC898 Digital"
        alsa.subdevice_name = "subdevice #0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xdf120000 irq 133"
        alsa.driver_name = "snd_hda_intel"
        device.vendor.name = "Intel Corporation"
        device.profile.name = "iec958-stereo"
        alsa.mixer_name = "Realtek ALC898"
        device.icon_name = "audio-card-pci"

より長いリスト

❱ pacmd list-sinks                            

1 sink(s) available.
  * index: 68
    name: <alsa_output.pci-0000_00_1f.3.iec958-stereo>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    state: RUNNING
    suspend cause: 
    priority: 9958
    volume: front-left: 44895 /  69% / -9.86 dB,   front-right: 44895 /  69% / -9.86 dB
            balance 0.00
    base volume: 65536 / 100% / 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 19.98 ms
    max request: 4 KiB
    max rewind: 64 KiB
    monitor source: 82
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stereo
    used by: 1
    linked by: 5
    configured latency: 23.22 ms; range is 0.50 .. 371.52 ms
    card: 0 <alsa_card.pci-0000_00_1f.3>
    module: 6
    properties:
        alsa.resolution_bits = "16"
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "ALC898 Digital"
        alsa.id = "ALC898 Digital"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "1"
        alsa.card = "0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xdf120000 irq 133"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:00:1f.3"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "a171"
        device.form_factor = "internal"
        device.string = "iec958:0"
        device.buffering.buffer_size = "65536"
        device.buffering.fragment_size = "32768"
        device.access_mode = "mmap+timer"
        device.profile.name = "iec958-stereo"
        device.profile.description = "Digital Stereo (IEC958)"
        device.description = "Built-in Audio Digital Stereo (IEC958)"
        alsa.mixer_name = "Realtek ALC898"
        alsa.components = "HDA:10ec0899,146211ac,00100003 HDA:8086280b,80860101,00100000"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    ports:
        iec958-stereo-output: Digital Output (S/PDIF) (priority 0, latency offset 0 usec, available: unknown)
            properties:

    active port: <iec958-stereo-output>

遊び

❱ aplay -l                                                                 
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC898 Analog [ALC898 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC898 Digital [ALC898 Digital]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

lsmod

❱ lsmod | grep '^snd' | column -t                  
snd_hda_codec_hdmi     49152   1
snd_hda_codec_realtek  90112   1
snd_hda_codec_generic  73728   1   snd_hda_codec_realtek
snd_hda_intel          36864   7
snd_hda_codec          126976  4   snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_core           81920   5   snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hwdep              16384   1   snd_hda_codec
snd_pcm                102400  6   snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
snd_seq_midi           16384   0
snd_seq_midi_event     16384   1   snd_seq_midi
snd_rawmidi            32768   1   snd_seq_midi
snd_seq                65536   2   snd_seq_midi_event,snd_seq_midi
snd_seq_device         16384   3   snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              32768   2   snd_seq,snd_pcm
snd                    77824   23  snd_hda_intel,snd_hwdep,snd_seq,snd_hda_codec,snd_timer,snd_rawmidi,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_seq_device,snd_hda_codec_realtek,snd_pcm

関連性があるかどうかはわかりませんが、とにかく共有します。

Alsa ミキサーは S/PDIF を 0 で表示します:

AlsaミキサーはS/PDIFを0で表示します

pavucontrolがオーディオジャックの正しい音量を表示している間

ここに画像の説明を入力してください

alsamixer にはデバイスが 1 つだけあります。

ここに画像の説明を入力してください

ああ、アナログ ステレオ デュプレックス/出力を選択すると、 の下で別のポートを選択できずOutput Devices、「スピーカー」のみが表示されます。オーディオ ジャックがポートとしてリストされるはずだと思いますが、そうではありません。

また、シナモンのオーディオ設定を開くと、次の 2 つだけが個別のオーディオ ソースとして表示されます。 ここに画像の説明を入力してください

アップデート

出力:

hdajacksenseテスト

❱ sudo hdajacksensetest
Pin 0x18 (Black Mic, Rear side): present = Yes

hdajackretask

ここに画像の説明を入力してください

上書きを試みたhdajackretask

ここに画像の説明を入力してください

しかし、まだ検出されません...

ミキサー

❱ amixer
Simple mixer control 'Master',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 0 [0%] [-65.25dB] [off]
Simple mixer control 'PCM',0
  Capabilities: pvolume
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 255
  Mono:
  Front Left: Playback 255 [100%] [0.00dB]
  Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Front',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Surround',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Center',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'LFE',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Side',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Mic',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Mic Boost',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 3
  Front Left: 0 [0%] [0.00dB]
  Front Right: 0 [0%] [0.00dB]
Simple mixer control 'IEC958',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'IEC958 Default PCM',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'IEC958',1
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'IEC958',2
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'IEC958',16
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'Beep',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 63
  Front Left: Capture 50 [79%] [20.25dB] [on]
  Front Right: Capture 50 [79%] [20.25dB] [on]
Simple mixer control 'Loopback Mixing',0
  Capabilities: enum
  Items: 'Disabled' 'Enabled'
  Item0: 'Disabled'

答え1

推測: BIOS がジャックの割り当てについて誤りを犯しており、それを回避するためのドライバーの「癖」が欠落しているか、更新したときに状況に適合しない癖が発生しました。

Windows では、プリインストールされたドライバーが BIOS 情報を無視し、正しい (既知の) 割り当てを使用するため、これは問題になりません。

hdajackretaskおよびhdajacksensetest(Debian などのパッケージ)を見てalsa-tools-gui、割り当てを修正できるかどうかを確認してください。割り当てがコーデックによって何を意味するかについての情報は、 で見つけることができますcat /proc/asound/card*/codec\#*。また、ジャックが「非要求イベント」(プラグ イベントとも呼ばれます) を発行するように設定されているかどうかも確認できます。

関連情報