Mengapa output audio (suara) saya tidak berfungsi?

58

Saya tidak bisa menjalankan audio. Saya tidak mendengar apa-apa dan tidak bisa memainkan apa pun.

Apakah ada solusi untuk mengaktifkan audio?

Itay Grudev
sumber
7
Silakan tambahkan lebih banyak informasi untuk menjadikan ini pertanyaan yang lebih berguna untuk masa depan, bahkan jika sudah dijawab.
ramblinjan
Diperlukan tag distro. Serta apa output audio yang Anda coba gunakan.
Jivings
1
Panduan: stackoverflow.com/questions/how-to-ask Untungnya jawaban terbaik saat ini cukup luas untuk menjawab pertanyaan Anda. Namun, lebih baik bagi pengguna situs di masa mendatang jika Anda memberikan pengaturan khusus untuk memungkinkan jawaban tertentu.
ramblinjan
Masalah saya adalah volume rendah untuk output master.

Jawaban:

66

Suara tidak berfungsi dengan monitor HDMI

Ini disebabkan oleh beberapa monitor komputer yang memilih mode DVI bahkan jika kabel HDMI terhubung. Perbaikan ini mungkin diperlukan bahkan jika perangkat HDMI lain bekerja dengan baik pada monitor (atau TV) yang sama! Edit file konfigurasi - lihat instruksi di File Konfigurasi Raspberry-Pi .
Tambahkan baris berikut ke file konfigurasi:

hdmi_drive=2

Suara tidak berfungsi sama sekali, atau dalam beberapa aplikasi

Suara dinonaktifkan secara default karena driver suara ALSA masih "alpha" (belum sepenuhnya diuji) pada R-Pi. Untuk mencoba suara, dari prompt perintah sebelum "startx", ketik

 sudo apt-get install alsa-utils
 sudo modprobe snd_bcm2835
 sudo aplay /usr/share/sounds/alsa/Front_Center.wav

Secara default output akan otomatis (HDMI jika HDMI mendukung audio, jika tidak analog). Anda bisa memaksanya dengan:

sudo amixer -c 0 cset numid=3 <n>

di mana n adalah 0 = otomatis, 1 = headphone, 2 = HDMI. ( sumber ) Jika Anda menjalankan Debian, coba

cd /opt/vc/src/hello_pi
 make -C libs/ilclient
 make -C libs/vgfont
cd hello_audio
 make
 ./hello_audio.bin

untuk menguji output analog. Dan untuk menguji HDMI.

./hello_audio.bin 1

Perhatikan juga bahwa Anda mungkin harus menambahkan pengguna Anda ke grup 'audio' untuk mendapatkan izin untuk mengakses kartu suara.

Membuat perubahan permanen

sudo apt-get install alsa-utilspermanen, tetapi sudo modprobe snd_bcm2835hanya menginisialisasi driver untuk sesi saat ini. Untuk memastikan modul diinisialisasi saat boot, tambahkan snd_bcm2835ke /etc/modules( sumber ).

Itay Grudev
sumber
4
aplay -l juga merupakan perintah yang berguna untuk enumerasi jika ada perangkat ALSA.
stsquad
2
Ini adalah informasi yang sudah ketinggalan zaman pada Januari 2013. alsa-utils diinstal secara default, dan lsmod menunjukkan snd_bcm2835 ada di sana tanpa harus melakukan apa pun.
CaptSaltyJack
Mungkin begitu, tetapi masalahnya mungkin masih terjadi pada perangkat lama dan beberapa distro
Itay Grudev
1
Aku sudah snd-bcm2835masuk /etc/modulesketika seharusnya snd_bcm2835. Begitu saya mengubahnya, itu berhasil.
daviewales
1
Anda juga mungkin perlu mengubah volume mixer jika tidak berjalan di lingkungan desktop dengan kontrol GUI untuk itu. Saya tidak tahu apakah itu hanya pi saya, atau apakah itu masalah umum, tetapi volume saya disetel ke -25dB, yang hampir tidak terdengar. amixer cset numid=1 0mengembalikannya ke tingkat yang wajar.
Jules
9

Saya rasa saya punya cara untuk menyelesaikan masalah Anda, coba ketik omxplayer -o local xxx.mp3(untuk file mp3) atau omxplayer -o local xxx.mp4(untuk file mp4) untuk mendengar suara dari raspi melalui headphone Anda. Dan Anda juga dapat mengetik omxplayer --helpuntuk penggunaan lebih lanjut tentang omxplayer.

chinashieh
sumber
9

Saya juga mengalami masalah yang sama dengan Raspberry Pi 2. Saya menghubungkan Pi saya ke TV HD melalui kabel HDMI. Solusi saya:

Atur output audio menggunakan perintah berikut:

amixer cset numid=3 2

Saya menguji output suara menggunakan perintah berikut, tetapi tidak ada suara yang terdengar:

speaker-test -c2 -t wav

Untuk mengaktifkan suara HDMI, saya mengikuti petunjuk yang ditemukan di sini

sudo [your favourite editor] /boot/config.txt

Garis komentar komentar #hdmi_drive=2

Reboot Pi menggunakan perintah berikut:

sudo shutdown -r 0
pengguna29132
sumber
Saya tidak perlu melakukan dua langkah pertama, dan saya tidak yakin mereka bahkan perlu menjawab, tetapi sisanya bekerja untuk saya dengan Raspberry Pi 2.
James Skemp
4

Ini adalah bug umum. Saya pikir apa yang melanggar ALSA adalah PulseAudio. Jika Anda ingin menggunakan ALSA (Default, anjurkan oleh Tux) gunakansudo apt-get remove PulseAudio

Untuk perbaikan lainnya, coba wiki. Semuanya tergantung. Coba ini dulu (karena ini yang paling umum)

Algo
sumber
Bug apa yang Anda maksud? Apakah Anda punya referensi?
bzeaman
Ini memperbaikinya untuk saya. Saya menggunakan PuleAudio untuk memutar suara ke headset bluetooth. Ketika saya mencoba menggunakan port audio analog, saya tidak bisa membuatnya berfungsi, dan semua yang ada di konfigurasi saya sudah benar. Saya menghapus PulseAudio, dan port audio analog berfungsi. Sayang sekali saya harus membatalkan instalasi dan menginstal ulang paket untuk beralih antara bluetooth dan jack 3,5 mm.
MidnightJava
2

Hipotesis kerja saya saat ini adalah, bagi saya setidaknya, audio tergantung pada lingkungan desktop. Saya memiliki Raspberry Pi 2, menjalankan Raspbian, diinstal dari NOOBS. Saya sudah membersihkannya dan menginstal ulang Raspbian puluhan kali. Suara bekerja ketika saya pertama kali menginstal Raspbian. Hal berikutnya yang biasa saya lakukan adalah menghapus lingkungan desktop LXDE dan menggantinya dengan lingkungan desktop XFCE, dan beberapa saat setelah itu, saya perhatikan bahwa suara telah berhenti berfungsi. Beralih lingkungan desktop harus merusak audio saya. Saya tidak tahu apakah itu menghapus LXDE atau menginstal XFCE yang merusaknya.

Mungkin orang itu benar yang menyarankan bahwa pelakunya adalah PulseAudio, dan menginstal XFCE menginstal PulseAudio. Saat ini, "lxde" diinstal, "xfce4" tidak diinstal, "pulseaudio" tidak diinstal, dan suara bekerja.

Daniel
sumber
1

Saya mengalami masalah di mana suara tidak berfungsi atau statis diputar, bukan rekaman saya. Tapi itu masalah dengan pendekatan saya, bukan Pi itu sendiri. Saya menggunakan Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).

Terutama, saya mencoba memutar file MP3 aplay, yang sepertinya hanya mendukung WAV. Juga, beberapa file MP3 yang saya gunakan mungkin belum dibuat dengan codec yang kompatibel. Untuk menguji output suara pada Pi Anda, saya menemukan yang terbaik untuk sampel file audio yang datang dengan OS Raspbian. Pastikan juga Anda menggunakan pemutar yang sesuai untuk format audio. Sebagai contoh:

  • Gunakan aplayuntuk file .wav. Sebagai contoh: aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav(ada banyak sampel file audio di / usr / share / scratch / Media / Sounds).
  • Gunakan omxplayeratau mpg123untuk file .mp3. Misalnya: gunakan omxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3atau sebagai alternatif mpg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3(Jika Anda belum memilikinya mpg123, Anda harus dapat menginstalnya dengan perintah sudo apt-get install mpg123).
  • Gunakan amixeruntuk mengontrol output volume. Misalnya: amixer cset numid=1 50%mengatur output volume jack headphone ke lima puluh persen.

Untuk informasi lebih lanjut tentang perintah audio out, saya menemukan situs web berikut berguna: http://blog.scphillips.com/2013/01/sound-configuration-on-raspberry-pi-with-alsa

Untuk apa nilainya, saya juga mengalami suara letupan yang disebabkan oleh lonjakan tegangan ketika audio mulai dan berhenti . Masalah itu sekarang telah diperbaiki dalam firmware Pi.

Steve HHH
sumber
AFAIK bug yang seharusnya diperbaiki di salah satu pembaruan driver audio ...
Itay Grudev
1
Kamu benar. Saya mungkin hanya melakukan kesalahan, tetapi orang lain mungkin memiliki masalah yang sama, jadi saya memperbarui posting saya dengan temuan saya. Terima kasih teknologi!
Steve HHH
1

Pada Raspberry Pi saya, "speaker-test" berfungsi tanpa tambahan perangkat keras tambahan. Lalu saya menambahkan beberapa webcam. Perangkat default telah berubah dan saya menemukan pertanyaan ini. Bagaimana membuat Alsa memilih perangkat suara yang disukai secara otomatis? dari mana solusi # 1 bekerja untuk saya.

... buat /etc/asound.confdengan berikut: ...

Ganti "kartu 1" dengan jumlah kartu Anda yang ditentukan di atas.

Menandai
sumber
1

Saya mengalami masalah dengan output audio analog sendiri. Datang ke utas ini antara lain untuk mencoba menyelesaikannya. Pada akhirnya, ternyata saya hanya perlu mengklik kanan ikon audio di bilah alat dan mengubah pilihan dari HDMI ke Analog. Ini mungkin tidak menyelesaikan masalah Anda, tetapi mungkin membantu orang lain yang tidak mendengar audio dan yang melewatkan solusi mudah itu.

Alex Skarulis
sumber
0

Saya mengalami masalah ini ketika mencoba untuk membuat Amazon Voice Services bekerja pada Raspberry Pi 3/3 +. Saya memastikan bahwa audio analog dipilih. Juga menggunakan aplay bekerja.

Ternyata AVS menggunakan elemen autoaudiosink, yang pada gilirannya memilih elemen omxhdmiaudiosink, yang memiliki prioritas lebih tinggi daripada elemen alsasink. Dalam file /etc/xdg/gstomx-rpi.conf ada bagian untuk omxhdmiaudiosink yang saya hanya berkomentar. Setelah melakukannya, AVS bekerja dengan baik (sebagian besar - tanggapannya dipotong pendek sekitar ~ 0,25 detik).

Saya kira saya bisa mengubah prioritas juga.

Bill Tonnies
sumber
-1

Jika Anda ingin jawaban sederhana ada 3 opsi:

  1. HDMI: omxplayer -o hdmi filename.mp4
  2. kedua: omxplayer -o both filename.mp4
  3. lokal: omxplayer -o local filename.mp4

Jika Anda ingin itu diputar melalui monitor Anda

omxplayer -o hdmi

Jika Anda ingin keduanya maka lakukan

omxplayer -o both

Jika Anda memiliki headphone dan Anda ingin mencolokkannya di Raspberry Anda

omxplayer -o local

dan kemudian tambahkan nama file Anda dan itu dia; itu mudah

segera
sumber
Jika Anda membaca jawaban yang diterima masalahnya adalah bahwa suara tidak diaktifkan di tingkat papan sehingga pengaturan khusus program tidak akan berfungsi. Kedua, apa yang harus dilakukan omxplayer dengan pertanyaan aslinya?
Steve Robillard
Ini bekerja untuk saya, saya dapat memutar file wav tetapi mp3 tidak bekerja dengan perintah omxplayer. Saya memakai -o bendera lokal itu berfungsi. Masih mencari tahu mengapa ... karena saya sudah mengatur output saya ke headphone dan mencoba semua hal lainnya
Taran J