AMD E1にはアナログオーディオはありません。 HDMIが「引き継ぎ」します。

AMD E1にはアナログオーディオはありません。 HDMIが「引き継ぎ」します。

UbuntuとXubuntu(14と16)、Kubuntu 16、Ubuntu Studio(14と15)、Elementary(0.32)、MINT(17.3 CinnamonとMATE)を使用しているため、すべてのディストリビューションで自分のラップトップのオーディオ設定に問題が発生しました。関連する問題とすべてのディストリビューションにはログイン後にHDMIのみが機能するため、アナログオーディオに関連する問題が表示されます(ログインサウンドがあるシステムではログインするとサウンドは機能しますが、しばらくするとアナログサウンドは機能しなくなります)。

私のラップトップはAMD APUを搭載したAcer E1 421です。アナログ出力とHDMI出力の両方が同じオーディオモジュールを使用しているように見え、HDMIはALSA付きの0カードであり、動作のみ可能です。

私のものlspci audio

lspci | grep Audio
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Wrestler HDMI Audio
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 01)

私のものaplay -l

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: CX20584 Analog [CX20584 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0

問題を「修正」するためのいくつかの解決策も見つかりましたが、「修正」は一時的であるか、パルスオーディオを削除してタスクバーのボリュームアイコンが消えるなど、状況がさらに悪化したため運がありませんでした。

それでは、デバイスを復元する方法はありませんか?システムがカード0(HDMI)に直接オーディオを送信しているようです。デバイスの順序を復元できるようにこの問題を解決することは可能ですか?

ここ(Stackexchangeで)デバイスの順序を変更するスクリプトも見つかりました。 サウンドカードとHDMIの両方がIntel HDAドライバを使用している場合、サウンドは機能しません。デバイスのロード順序を変更するには?

それは次のとおりです

alias char-major-116 snd
alias snd-card-0 snd-hda-intel
alias snd-card-1 snd-hda-intel

options snd cards_limit=2

options snd-hda-intel id=SB index=0
options snd-hda-intel id=HDMI index=1

しかし、私のシナリオでどのように機能するのかわかりません。シーケンスを復元するためにスクリプトを使用しても、シミュレートされたオーディオはまったく機能しません。

サウンド構成には表示されますが、テスト結果のオーディオは表示されず、サウンド構成にはオーディオアクティビティが表示されますが、スピーカーから音は聞こえません。

それ以外の場合は、HDMI出力をブロックする方法はありますか?どちらの出力も同じモジュールを使用するため、モジュール自体をブラックリストに追加することはできません。

メニュー設定を変更して、HDMIサポートなしでカーネルを再コンパイルすることについて話している人を見ました。

可能であれば、新しいカーネルを再コンパイルして使用するために何ができるかを教えてください。私のお気に入りのディストリビューションであるMintとElementaryで少なくとも再コンパイルする方法は?

ターカス

ベストアンサー1

基本的なALSAサウンドデバイスを変更する必要があると思います。

しばらく前にSound Blaster Audigy 2で同様の問題が発生しました。

これをあなた/etc/asound.conf(または~/.asoundrcあなただけのために)に入れ、存在しない場合はファイルを作成してください。

pcm.!default {
    type plug
    slave.pcm {
        @func getenv
        vars [ ALSAPCM ]
        default "hw:Generic_1"
    }
}

これにより、2番目のデバイス(名前がエミュレートされたCX20584 Generic_1)をデフォルトのデバイスに設定する必要があり、デバイスIDが変更されても変更されない名前を見つけます。

ALSAPCMまた、プログラムを開始する前に環境変数を設定して、出力に使用するデバイスを変更することもできます。

おすすめ記事