web-dev-qa-db-ja.com

Ubuntu 16.04スピーカーから音が出ない、ヘッドフォンのみが機能する

私はこの問題で機知に富んでいます。私はこの問題を何百回も見たことがあることを知っていますが、どの解決策もうまくいかないようです。

Windows 8.1でデュアルブートされたASUSラップトップを使用していますが、15.10から16.04にアップグレードし、スピーカーを使用できなくなりました。サウンドカードは、これらのスクリーンショットから明らかなように、ヘッドフォンが接続されていると常に考えています。

alsamixer

pavucontrol

これはハードウェアの問題ではありません。1)Windows 8.1でサウンドが動作する2)hdajackretaskを使用してヘッドフォンジャックを無効にすることでスピーカーを動作させることができる(オーバーライドを設定してから "未接続"に設定する)が、ホットキーを使用できない音量を変える

Alsaをリロードし、alsaをパージして再インストールしようとしました。

とにかく、Windows 8パーティションを実際に削除する予定です。私はここで見ました: Windows 8.1を起動した後、Ubuntu 14.04でラップトップスピーカーから音が出ない Windowsが問題を引き起こしている可能性がある。パーティションを削除すると問題が解決しますか?

編集:その質問で提案されているように、すでにハイブリッドブートを無効にしています。

8
jhutch

また、Xubuntu 14.04をXubuntu 16.04にアップグレードしたときにもこの問題が発生しました(ヘッドフォンは音を生成しましたが、スピーカーは生成しませんでした)。 Realtek ALC259チップを搭載したHD Intelサウンドカードがあります。 3.13.Xから4.10.Xまでのさまざまなカーネルで起動した場合、問題は解決しませんでした。

しかし、私はそれを修正しました、そしてここに方法があります:

Pulseaudio(PA)はUbuntuのデフォルトのサウンドコントロールシステムであり、そのほとんど(すべて?)がバリアントであることを理解することが重要です。 PAは、本質的に、コアALSAサウンドシステムの上にオーバーレイされます。したがって、PAで行われるすべてのアクションに対して、ALSA内で後続の反応があります。 PA内で定義された各出力(ポート)に対して、ALSAシステムに定義された調整があります。この調整は「混合パス」として知られています。

!!!重要!!!

続行する前に、これが実際にあなたの問題であり、スピーカーが機能しない理由が他にないことを確認する良い機会です。次のテストを行うことで、非常に簡単に行うことができます。 (サウンドシステムをいじっていた場合、テストする前にデフォルトに戻すことをお勧めします):

  1. 動作していないスピーカーを除き、ヘッドフォンまたはその他のサウンドデバイスを取り外します。
  2. 現在ではありませんが、通常はスピーカーから音を生成するオーディオファイルの再生を開始します。次に、
  3. ターミナルを開き、次のコマンドを実行します。

    alsamixer
    

以下が表示されるはずです。

alsamixer サウンドカードの違いにより、お使いのデバイスは画像のものとは少し異なります。私の場合、そして問題を修正する前に、私のalsamixerは上の画像のように見えました。

  1. 現在ミュートされているデバイスのミュートを解除します(「m」キーを使用してミュートを切り替えます)。次に、100%ではないデバイスのボリュームスライダーを上げます。

スピーカーから音が聞こえる場合、この修正はあなたのためです!

音が聞こえない場合は、「The Google」に戻って検索を続けてください。この方法は役に立ちません。


上記のテストから正常にサウンドを取得できた場合、次に行う必要があるのは、alsamixerの設定で遊ぶことです。

  1. 実際にスピーカーの音量を制御するデバイスの音量コントロール
  2. スピーカーを機能させるには、どのデバイスをミュート解除する必要がありますか。複数のデバイスをミュート解除する必要がある場合があります。

スピーカーが動作するALSA設定がわかったら、この情報を使用してPAミキサーパスに必要な変更を加えることができます。

私の場合、ヘッドフォンとスピーカーがALSA内で次のようにリンクされていることを発見しました。

  1. ヘッドフォンの音量は、「ヘッドフォン」デバイスによって制御されます。
  2. ヘッドフォンからサウンドを取得するには、「マスター」デバイスと「ヘッドフォン」デバイスのミュートを解除する必要があります。
  3. 私のスピーカーの音量も「ヘッドフォン」デバイスによって制御されます。 (ALSAスピーカーの音量設定は、スピーカーの音量に驚くほど影響しません。)
  4. スピーカーからサウンドを取得するには、「マスター」デバイスと「スピーカー」デバイスのミュートを解除する必要があります。

PulseAudio(PA)内のスピーカーのデフォルトのミキサーパスは、スピーカーがヘッドフォンから独立していると想定していました。上記の観測3で示したように、これは事実ではありませんでした。その後、私のスピーカーのPA内のデフォルトミキサーパスは、スピーカー出力がPA内で選択されるたびに、ALSA内で次の問題のある変更を行いました。

  1. ヘッドフォンの音量を0に落としました。
  2. スピーカーデバイスをボリュームコントロールとして設定します。

前述のように、ALSAのスピーカーとヘッドフォンのリンケージをどのように観察したかを考えると、ALSAに対するこれらの変更により、スピーカーから音が出なくなります。

したがって、この問題の解決策は、スピーカーのミキサーパスを変更することによって得られます。

PAミキサーのパスファイルは次の場所にあります。

/ usr/share/pulseaudio/alsa-mixer/paths /

スピーカーを制御するミキサーパスファイルを決定するには、次の手順を実行する必要があります。

  1. スピーカー出力がPA内で選択されていることを確認してください(ヘッドフォンではありません)。 enter image description here

  2. ターミナルを開き、次のコマンドを実行します。

    pactl list | grep 'Active Port.*output.*'
    
  3. 次のような出力が表示されます。

    アクティブポート:audiotype-output -device

つまり.

enter image description here

「アクティブポート」は、現在ALSA設定を制御しているPAポートです。スピーカーをPA出力としてすでに選択しているため、ターミナルコマンドからのこの出力は、ミキサーパスファイルaudiotype-output -device。confを編集する必要があることを示しています。私の場合、ミキサーパスファイルはanalog-output-speaker.confでした。

正しいミキサーパスファイルが用意できたので、変更を加える必要があります。

注:このミキサーパスフォルダー内には、「analog-output.conf.common」という名前のファイルがあります。このファイルの内容は、ミキサーパスファイルの解釈方法を説明しています。以下の変更を理解したい場合は、ミキサーパスを編集する前にこのファイルを確認することを強くお勧めします!

各ミキサーパスファイルには、多数の「要素」が含まれています。理想的には、各ファイル内に、コンピューター上の各ALSAデバイスを表す要素があります。おそらくあなたが持っていない要素もあります。これは正常です。

私の場合、analog-output-speaker.confのミキサーパス内のヘッドフォン要素とスピーカー要素を次の方法で変更する必要がありました。

  1. PAの音量でヘッドフォンのALSAの音量を調整できます。

オリジナル:

[Element Headphone]
switch = off
volume = off

編集済み:

[Element Headphone]
switch = off
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
  1. (オプション)スピーカーの音量をオフに設定し、PAの音量がALSAの音量に影響しないようにします。 (これを行わなくてもサウンドは機能しますが、ALSA内のスピーカー設定は不注意に跳ね返ります。)

オリジナル:

[Element Speaker]
required-any = any
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right

編集済み:

[Element Speaker]
required-any = any
switch = mute
volume = off

次に、次を実行してPAを再起動します。

pulseaudio -k && pulseaudio --start

ほら!

7
notorious.dds