Ubuntu 16,04 mengubah perangkat suara setelah ditangguhkan, bagaimana cara memperbaikinya?

17

Jadi pengaturan saya saat ini menggunakan monitor yang terhubung ke laptop saya melalui HDMI dan menggunakan speaker untuk audio bukan laptop inbuilt. Ketika mesin melakukan booting, ia menggunakan HDMI secara default, tetapi saya akan sering menangguhkan laptop sepanjang hari dan kapan pun ia melanjutkan, ia akan mengalihkan perangkat suara ke speaker inbuilt.

Ini bukan masalah besar seperti yang dapat Anda bayangkan tetapi menjengkelkan, saya bertanya-tanya apakah ada skrip yang dapat saya gunakan untuk memaksanya memilih kembali HDMI setelah melanjutkan atau menonaktifkan speaker inbuilt, atau mengaturnya secara default. FYI kedua speaker inbuilt berada di 'kartu suara' yang sama tetapi dua perangkat yang berbeda

Terima kasih atas bantuannya!

MattJC
sumber
Apa kartu videomu? Apakah Anda menggunakan driver berpemilik?
Marcos Silveira

Jawaban:

17

Jika Anda tidak ingin memulai ulang, cukup restart pulseaudio:

pulseaudio --kill; pulseaudio --start
rubo77
sumber
1
ini tidak berhasil untuk saya
Elliott
1
Ini membantu tanpa perintah mulai kedua. Saya harus menunggu beberapa detik dan harus mengaktifkan suara output .
coba-tangkap-akhirnya
PERINTAH PERTAMA INI BEKERJA !!!! BOOM itu kembali!
markackerman8-gmail.com
7

Saya memiliki masalah yang sama pada Ubuntu 17.10. Setelah menangguhkan, atau bahkan setelah meredupkan Layar, itu akan selalu mengubah output audio saya dari Digital Output (diinginkan) ke HDMI meskipun Tampilan saya tidak memiliki speaker. Mengomentari dialog

load-module module-switch-on-port-available

di /etc/pulse/default.pa lakukan trik seperti yang dijelaskan dalam Nonaktifkan suara melalui HDMI secara permanen .

Perhatikan bahwa pengaturan bak cuci default seperti yang ditunjukkan di atas tidak mengubah perilaku. Juga, skrip yang disediakan di atas untuk mengatur profil kartu audio setelah penangguhan adalah khusus pengguna.

sambura
sumber
1
Saya tahu ini cukup lama tetapi ini menonaktifkan auto-switching ketika mencolokkan headphone di sistem saya.
AmbientCyan
2

Lari:

$ pacmd list-cards

Untuk menampilkan indeks kartu Anda. Misalnya, kartu suara pci saya ada di indeks 2. Profil suara untuk output analog (sekali lagi sebagai contoh) dipanggil output:analog-stereo.

Kemudian:

$ pacmd set-card-profile 2 output:analog-stereo

Untuk mengatur ini sebagai output (cobalah). Untuk membuatnya permanen, edit /etc/pulse/default.padan tambahkan:

set-card-profile 2  output:analog-stereo
set-default-sink 2

Mulai ulang pulseaudio atau reboot untuk memeriksa kegigihan.

Jonathan Deal
sumber
Audio HDMI selalu tahan sebagai default saat reboot, itu hanya berubah menjadi speaker internal setelah melanjutkan dari tidur. Melakukan apa yang Anda katakan harus dilakukan tidak menghentikan perubahan HDMI ke speaker internal setelah bangun tidur. Apakah ada cara untuk menjalankan perintah set-card-profile ketika sistem melanjutkan dari tidur?
MattJC
2

Masalah ini mungkin terkait dengan masalah dengan Pulseaudio, versi 8, sebagaimana diuraikan dalam utas bug (panjang) ini di freedesktop.org .

Pada dasarnya, Pulseaudio mengalihkan suara ketika kehilangan kontak dengan HDMI dan tidak mengembalikannya setelah HDMI tersambung kembali. Ini diperbaiki dalam versi 9.

Untuk mengembalikan versi 8 ke perilaku versi sebelumnya, ikuti petunjuk ini dan reboot.

edit /etc/pulse/default.pauntuk berkomentar (tambahkan #ke awal) baris:

#load-module module-switch-on-port-available

Kemudian atur output suara dalam Pengaturan Suara dan periksa apakah ia bertahan dengan menangguhkan / melanjutkan atau mengosongkan layar. Itu berhasil bagi saya.

Paul H.
sumber
@ PaulH. , @Toalal Bagaimana Anda mengedit /etc/pulse/default.pafile? sudo gedittidak bekerja untuk saya.
Py-ser
gunakangksu gedit /etc/pulse/default.pa
rubo77
Sudah dikomentari - SNIF! tapi perintahnya .... pulseaudio --kill ..... berfungsi dengan baik!
markackerman8-gmail.com
1

Hal yang sama terjadi pada saya tetapi hanya jika monitor HDMI tidak "terjaga" ketika OS memulai atau melanjutkan: daftar perangkat di Pengaturan> Suara bahkan tidak menunjukkan HMDI / DisplayPort - Audio Built-in lagi.

Perbaikan untuk saya adalah menunda sesi, memastikan monitor HDMI menyala, melanjutkan sesi.

Menangguhkan di Ubuntu 18,04 LTS agak gila tersembunyi di balik tombol PowerOff di menu drop down: tahan mouse di atasnya, atau tekan Altuntuk mengubah tombol PowerOff menjadi Menangguhkan. Bicara tentang navigasi tersembunyi!

mr0
sumber
+1, dan terima kasih telah menjelaskan cara menemukan penangguhan tersembunyi! Beberapa (yang kebetulan memiliki terminal terbuka mungkin) mungkin lebih suka menjalankan perintah systemctl suspendsebagai gantinya!
Zanna
Maaf teman-teman, saya harus memilih komentar saya sendiri karena tampaknya benar-benar acak: apakah Audio HDMI muncul di daftar perangkat suara atau tidak :(
mr0
1

Memperbaiki PulseAudio mematikan suara HDMI pada Penangguhan

"Fitur tidak berdokumen" ini muncul dengan Ubuntu 16.04 dan versi baru PulseAudio 8.

Buat file baru /lib/systemd/system-sleep/tv-sounddan salin:

#!/bin/sh

case $1/$2 in
  pre/*)
    echo "Going to $2..."
    # Place your pre suspend commands here, or `exit 0`
    # if no pre suspend action required
    sleep 1
    ;;
  post/*)
    echo "Waking up from $2..."
    # Place your post suspend (resume) commands here, or `exit 0` 
    # if no post suspend action required
    sleep 2
    export PULSE_RUNTIME_PATH="/run/user/1000/pulse/"
    sudo -u rick -E pacmd set-card-profile 0 output:hdmi-stereo
    ;;
esac

CATATAN: ganti nama pengguna rick(baris ketiga dari bawah) dengan nama pengguna Anda.

Kemudian tandai itu dapat dieksekusi dengan perintah:

sudo chmod +x /lib/systemd/system-sleep/tv-sound

Langkah tambahan mungkin diperlukan jika output:hdmi-stereo(perangkat untuk kebanyakan orang) berbeda pada sistem Anda.

WinEunuuchs2Unix
sumber
maaf, tapi ini tidak memperbaikinya. Apakah saya harus melakukan lebih dari ini? mulai kembali apa saja? (Saya tidak ingin reboot, karena itu memperbaiki masalah pada sistem saya)
rubo77
@ rubo77 Apakah Anda mengubah ID pengguna rickke ID pengguna Anda sendiri?
WinEunuuchs2Unix
Tentu. Seperti yang Anda katakan 😃
rubo77
0

Saya memiliki masalah ini sejak Ubuntu 9.04. Tidak pernah berhasil dan sekarang bahwa anak-anak yang baru saja mendapatkan HDMI atau yang baru saja mendapatkan Ubuntu berpikir masalahnya adalah sesuatu yang baru sehingga orang yang mencoba melihat perubahan terbaru dalam pengaturan sedang disesatkan. Jadi, saya jelaskan: Masalah ini selalu ada dan tidak ada yang mengatasinya. Saya telah menghabiskan setidaknya 20 jam untuk meneliti masalah ini. Jadi apa yang telah saya lakukan di masa lalu:

  1. Mulai ulang
  2. Saat menyalakan TV (target HDMI) jika saya menggoyangkan mouse pada waktu yang tepat mengembalikan suara mungkin 50% dari waktu. Ini adalah masalah terkait waktu / handshaking.
  3. Di Ubuntu 14 saya akan mengubah resolusi layar menjadi sesuatu yang berbeda lalu kembali lagi. Ini sepertinya tidak berfungsi dengan Ubuntu 16
  4. Jangan biarkan hibernasi. Alternatifnya adalah hanya melakukan shutdown berjangka waktu. Kemudian Anda cukup mem-boot komputer Anda daripada mem-boot ulang. Ingat ini adalah masalah WAKTU, jadi saya menganggap salah satu ide di sini dapat bekerja jika waktunya tepat untuk menjalankan sistem Anda dengan benar.
Tamu
sumber