Kartu USB sebagai Perangkat Audio default saya

32

Saya membeli kartu suara USB kecil. Pi saya mengenali perangkat:

$ lsusb
Bus 001 Device 004: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller

Jika saya menjalankan alsamixerdan mengatur audio USB PnP Sound Device, saya dapat mendengar audio melalui kartu suara USB. Untuk membuatnya permanen saya ketik:

$ sudo alsactl store

Namun setelah reboot, standarnya bukan lagi kartu suara USB.

masukkan deskripsi gambar di sini

Jadi saya mencoba melihat daftar perangkat pemutaran:

$ aplay -l

    **** List of PLAYBACK Hardware Devices ****
  card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
  card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Saya mengedit /etc/asound.confagar terlihat seperti ini untuk menetapkan default:

$ sudo nano /etc/asound.conf


pcm.!default {
 type hw
 card 1
 device 0
}

Lakukan rebootdan masih standar saya bukan kartu suara USB.

Ketika saya mencoba:

$ aplay /usr/share/sounds/alsa/Front_Center.wav -D sysdefault:CARD=1

Saya mendengar suara dari kartu USB.

Saya juga mencoba yang berikut:

$ sudo nano /etc/modprobe.d/alsa-base.conf

ubah indeks dari -2 menjadi 0:

options snd-usb-audio index=0

Nyalakan kembali dan tetap saja itu tidak menetapkan default. Saya bahkan berkomentar di luar garis dan tidak berhasil.

Jadi bagaimana cara mengatur kartu USB sebagai Perangkat Audio default saya?

Edit

 dpkg -s pulseaudio

Menampilkan:

Package: pulseaudio
Status: install ok installed
Priority: optional
Section: sound
Installed-Size: 4413
Maintainer: Pulseaudio maintenance team <[email protected]>
Architecture: armhf
Multi-Arch: foreign
Version: 2.0-6
Depends: libasound2 (>= 1.0.24.1), libc6 (>= 2.13-28), libcap2 (>= 2.10), libdbus-1-3 (>= 1.1.1), libfftw3-3, libgcc1 (>= 1:4.4.0), libice6 (>= 1:1.0.0), libltdl7 (>= 2.4.2), liborc-0.4-0 (>= 1:0.4.16), libpulse0 (= 2.0-6), libsamplerate0 (>= 0.1.7), libsm6, libsndfile1 (>= 1.0.20), libspeexdsp1 (>= 1.2~beta3.2-1), libstdc++6 (>= 4.1.1), libsystemd-daemon0 (>= 31), libsystemd-login0 (>= 31), libtdb1 (>= 1.2.7+git20101214), libudev0 (>= 146), libwebrtc-audio-processing-0, libx11-6, libx11-xcb1, libxcb1, libxtst6, adduser, lsb-base (>= 3.2-13), consolekit, udev (>= 143), libasound2-plugins
Recommends: pulseaudio-module-x11, gstreamer0.10-pulseaudio, rtkit
Suggests: pulseaudio-utils, pavumeter, pavucontrol, paman, paprefs
Breaks: libltdl3 (<< 1.5.24-1)
Conffiles:
 /etc/init.d/pulseaudio 8580c855e4547e8a3c84dca96d9bbd7e
 /etc/default/pulseaudio ee26e4427d72cf16a59b1a8ce2712c66
 /etc/xdg/autostart/pulseaudio.desktop 5e19ffbe14d21702be1edd3256c4265d
 /etc/xdg/autostart/pulseaudio-kde.desktop fd20c58d32035e908a0866784e4e3511
 /etc/pulse/system.pa 408f6d6119d7afce522ab1b394709134
 /etc/pulse/default.pa a9ac2a96744beae0913865fafd3d2582
 /etc/pulse/daemon.conf 6c9e4c973cabb406beee3ec81c63fcd7
 /etc/dbus-1/system.d/pulseaudio-system.conf 69d56dc5342bf589a2e199541709a452
Description: PulseAudio sound server
 PulseAudio, previously known as Polypaudio, is a sound server for POSIX and
 WIN32 systems. It is a drop in replacement for the ESD sound server with
 much better latency, mixing/re-sampling quality and overall architecture.
 .

Kemudian:

cat /proc/asound/modules

Menampilkan:

 0 snd_bcm2835
 1 snd_usb_audio
PhillyNJ
sumber
Pertanyaan ... apakah Anda sudah menginstal pulseaudio? Jalankan dpkg -s pulseaudiountuk mencari tahu, itu akan mengatakan sesuatu seperti itu dpkg-query: package 'pulseaudio' is not installed and no information is availablejika tidak. Bisakah Anda menjalankan perintah itu dan memposting output?
RPiAwesomeness
Juga, dapatkah Anda menjalankan cat /proc/asound/modulesdan memposting output?
RPiAwesomeness
@RPiAwesomeness - Diperbarui dengan info yang diminta.
PhillyNJ
1
Oke, sudahkah Anda mencoba ini options snd-usb-audio index=0 [PRESS ENTER] options snd_bcm2835 index=1:? Dari apa yang saya lihat, Anda hanya mengubah snd-usb-audioindeks, dan sistem mengubahnya kembali karena tidak dapat memiliki dua (usb dan bcm2835) pada indeks yang sama?
RPiAwesomeness
2
Yay! : D Senang telah membantu, dan kami tidak pernah mencopot pemasangan pulseaudio! Hore for the internet :)
RPiAwesomeness

Jawaban:

28

Ternyata OP berpikir di jalan yang benar dengan usahanya

$ sudo nano /etc/modprobe.d/alsa-base.conf

dan mengubah indeks dari -2 ke 0 melalui penambahan options snd-usb-audio index=0ke file. Namun, ini tidak berhasil.

Cara yang benar untuk melakukannya adalah menambahkan options snd-usb-audio index=0diikuti oleh options snd_bcm2835 index=1.

Pada dasarnya apa yang dilakukan ini adalah memaksa modul suara default ( snd_bcm2835) dinonaktifkan ketika modul suara usb ( snd-usb-audio) diaktifkan.

Apa yang saya percaya sebelumnya terjadi hanya dengan menambahkan options snd-usb-audio index=0adalah bahwa snd-usb-audiomodul dan snd_bcm2835keduanya saling bertentangan, dengan keduanya diaktifkan.

Kehadiran RPi
sumber
Tidak masalah. Sekali lagi, selalu dengan senang hati membantu: D
RPiAwesomeness
Manis! Ini memperbaiki masalah bagi saya juga. Saya harus reboot setelah mengubah alsa-base.conf, FWIW.
Andrew Swan
@AndrewSwan Sama-sama! Senang untuk membantu! :)
RPiAwesomeness
14

Dengan Raspbian Jesse, untuk mengubah perangkat audio standar lebih sederhana dari sebelumnya.

Sekarang, cukup gunakan perintah ini untuk mendaftar kartu suara yang terdeteksi alsa Anda, dan catat nomor kartu perangkat yang Anda pilih.

aplay -l

Kemudian buat / edit file konfigurasi alsa di ~/.asoundrc, atau sistem yang lebar di /etc/asound.conf, dan tempelkan baris ini:

pcm.!default {
    type hw
    card 0
}

ctl.!default {
    type hw           
    card 0
}

mengubah card 0nomor kartu perangkat suara Anda.

Gunakan alsamixeruntuk mengecek apakah default telah diatur dengan benar.

Sumber:

semitones
sumber
1
@ Greenonline, re: 'pertanyaan' saya dari kemarin, saya benar-benar tidak bisa menambahkan jawaban ini malam itu, karena itu dilindungi komunitas dan saya belum punya 10 perwakilan! Terima kasih atas komentar ramahnya, itu membantu :)
semitones
Ah baiklah. Terima kasih. Saya pikir jawaban ini tampak familier ... :-)
Greenonline
Jawaban yang diterima tidak berhasil untuk saya, tetapi ini berhasil! Terima kasih banyak.
Twiffy
2
Ini tidak berhasil untuk saya, saya malah membuatnya bekerja dengan menulis ini di asound.conf "pcm.! Default {type plug slave {pcm" hw: 1,0 "}} ctl.! Default {ketik hw card 1} "Dari: linuxcircle.com/2013/05/08/...
Moulde