Debian Busterにルーツを置かないと音は出ません。

Debian Busterにルーツを置かないと音は出ません。

Debian SID コンピュータで dist アップグレードを行いましたが、音が消えました。

ルートではオーディオファイルを再生できますが、通常のユーザーでは再生できません。私は「オーディオ」グループに属していることを確認しました。実行して沈黙が発生したことを確認しました。アルサミキサーしかし、すべてのラインが動作しています。

これは私のコンピュータのオーディオ出力です。

$ lspci  | grep Audio
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
01:00.1 Audio device: NVIDIA Corporation GK107 HDMI Audio Controller (rev a1)

HDMI出力(NVIDIAコントローラー)が外れています。私のオーディオヘッダーはIntelコントローラに接続されています。走るとこのドライバーを見ることができます。アルサミキサーしかし、私のグラフィックカードのHDMI出力のみを見ることができます。勉強コントロール出力デバイス。

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

オーディオレシーバーを一覧表示すると、空のデバイスのみが表示されます。

$ pacmd list-sinks
1 sink(s) available.
  * index: 2
    name: <auto_null>
    driver: <module-null-sink.c>
    flags: DECIBEL_VOLUME LATENCY FLAT_VOLUME DYNAMIC_LATENCY
    state: IDLE
    suspend cause: 
    priority: 1000
    volume: front-left: 56362 /  86% / -3,93 dB,   front-right: 55706 /  85% / -4,23 dB
            balance -0,01
    base volume: 65536 / 100% / 0,00 dB
    volume steps: 65537
    muted: no
    current latency: 5,63 ms
    max request: 6 KiB
    max rewind: 6 KiB
    monitor source: 2
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stéréo
    used by: 0
    linked by: 1
    configured latency: 40,00 ms; range is 0,50 .. 2000,00 ms
    module: 20
    properties:
        device.description = "Sortie factice"
        device.class = "abstract"
        device.icon_name = "audio-card"

私はDebianでサウンドシステムがどのように機能するかをよく理解していませんが、一般ユーザーがIntelチップにアクセスできないことを理解していると思います。これから詰まって何をするのかわかりません...

編集する:

alsamixerで自動ミュートを無効にしてサウンドを復元しました。この設定はシステムアップデート中にある程度変更されました。

しかし、再起動後に問題が再び現れましたが、自動ミュートはまだオフになっていました。

dirktの答えのおかげで、この問題の原因を見つけたようです。ランタイムプレイ-L一般ユーザーとrootユーザーとして、私はいくつかの違いを見つけました。

$ aplay -L
default
    Playback/recording through the PulseAudio sound server
sysdefault:CARD=PCH
    HDA Intel PCH, ALC887-VD Analog
    Default Audio Device
$ sudo aplay -L 
default:CARD=PCH
    HDA Intel PCH, ALC887-VD Analog
    Default Audio Device
sysdefault:CARD=PCH
    HDA Intel PCH, ALC887-VD Analog
    Default Audio Device

シンプルユーザーとして実行するとベースカードが違うようです。選ぶと少し音がすることがあります。システムデフォルト変える基本一般ユーザーカード。

$ aplay -D sysdefault sound.wav

でも今はちょっと閉じ込められました。問題の原因を正確に見つけたようですが、解決策がわかりません...

答え1

次のコマンドを実行して問題を解決しました。

sudo apt-get remove --purge timidity

これが削除されていることを確認してください気になるそして臆病な悪魔。私が理解しているように、デーモンは起動時にいくつかのリソースを獲得し、他のサービスがサウンドカードを見つけるのを防ぎます。気になることはMIDIファイルに関連していると思うので、パッケージをアンインストールするときにそのファイルが不要であることを確認し、削除したいものが何であるかを確認してください。

これにより、一部のユーザーの問題が解決されることを願っています。上記の問題が解決したら、後でtimidityを再インストールしたいかもしれません。

答え2

サウンドの概要:サウンドハードウェアはカーネルドライバ(以前のALSAの一部)によって管理され、ALSAはカーネルドライバにアクセスするためのライブラリを提供し(alsamixerで見られるもの)、PulseaudioはALSAの上で実行されます。 1つの理由は、ALSAデバイスは追加の努力なしに単一のプログラムでのみ使用できることですが、Pulseaudioはトランスポート層を提供することで、複数のプログラムがハードウェアを使用できるようにすることです。

Pulseaudioに受信機がないことは、PulseaudioがALSAデバイスを取得できないことを意味します。おそらく、(1)権限が間違っているか、(2)別のものがすでに使用されているか、(3)まったく異なるものが間違っているからです。

したがって、最初のステップはPulseaudioを停止し、それを使用してaplay -LALSAデバイスを表示してaplay -D ... audio_file.wavデバイスに直接アクセスできることを確認することです。結果に応じて、次のステップは、デバイスをブロックするもの(他のものが早く開始され、それを使用している)を確認するか、PulseaudioがALSAデバイスを使用しない理由(ロード中など)を調べることです。モジュール alsa カード自分で使用してくださいpacmd。エラーメッセージ/ログエントリを参照してください。 Pulseaudioを停止する方法は、systemdを使用するか、デスクトップシステムを介してログインして起動した方法によって異なります。

などを使用して実行中のプロセスのコマンドラインを確認すると、上記のヒントが表示され、ps axuPulseaudioが正しく停止し、それ自体が再起動されていないことを確認できます。

答え3

トラブルシューティング:アップグレード後、何らかの理由で出力が自動的にミュートされます。 alsamixerで変更するだけです。

時には深く掘る必要はありません。

答え4

実際、問題は、PulseAudioとBlobを備えたNVidia GPUを使用しているときに発生します。

回避策には、/etc/pulse/daemon.confにガベージを挿入してPulseAudioが起動しないようにすることが含まれます(ファイルの末尾に文字を挿入するだけです)。これにより、AlsaMixerを介してのみボリュームを設定できますが、少なくとも音は再び出てきます。

この問題についてチケット#918522を送信しました。自由に貢献してください。

関連情報