Ich habe eine kleine USB-Soundkarte gekauft. Mein Pi erkennt das Gerät:
$ lsusb
Bus 001 Device 004: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller
Wenn ich alsamixer
das Audio starte und auf stelle, USB PnP Sound Device
kann ich Audio über die USB-Soundkarte hören. Um es dauerhaft zu machen, tippe ich:
$ sudo alsactl store
Nach dem Neustart ist die USB-Soundkarte jedoch nicht mehr der Standard.
Also versuche ich eine Liste der Wiedergabegeräte zu sehen:
$ 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
Ich bearbeite /etc/asound.conf
, um wie folgt auszusehen, um den Standard festzulegen:
$ sudo nano /etc/asound.conf
pcm.!default {
type hw
card 1
device 0
}
Mache ein reboot
und mein Standard ist immer noch nicht die USB-Soundkarte.
Wenn ich versuche:
$ aplay /usr/share/sounds/alsa/Front_Center.wav -D sysdefault:CARD=1
Ich höre Ton von der USB-Karte.
Ich habe auch folgendes ausprobiert:
$ sudo nano /etc/modprobe.d/alsa-base.conf
Ändern Sie den Index von -2 auf 0:
options snd-usb-audio index=0
Neustart und trotzdem wurde der Standard nicht gesetzt. Ich habe sogar die Zeile auskommentiert und kein Glück.
Wie stelle ich die USB-Karte als Standard-Audiogerät ein?
Bearbeiten
dpkg -s pulseaudio
Zeigt an:
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.
.
Dann:
cat /proc/asound/modules
Zeigt an:
0 snd_bcm2835
1 snd_usb_audio
quelle
dpkg -s pulseaudio
, um herauszufinden, es wird so etwas sagen,dpkg-query: package 'pulseaudio' is not installed and no information is available
wenn es nicht ist. Könnten Sie diesen Befehl ausführen und die Ausgabe bereitstellen?cat /proc/asound/modules
die Ausgabe auch ausführen und veröffentlichen?options snd-usb-audio index=0 [PRESS ENTER] options snd_bcm2835 index=1
? Soweit ich sehen kann, ändern Sie nur densnd-usb-audio
Index, und das System ändert ihn zurück, weil es nicht zwei (usb und bcm2835) auf dem gleichen Index haben kann?Antworten:
Es stellt sich heraus, dass der OP mit seinem Versuch den richtigen Weg eingeschlagen hat
$ sudo nano /etc/modprobe.d/alsa-base.conf
und Ändern des Index von -2 auf 0 durch Hinzufügen
options snd-usb-audio index=0
zur Datei. Dies funktionierte jedoch nicht.Die richtige Methode ist das Hinzufügen von
options snd-usb-audio index=0
gefolgt vonoptions snd_bcm2835 index=1
.Im Wesentlichen bewirkt dies, dass das Standard-Soundmodul (
snd_bcm2835
) deaktiviert wird, während das USB-Soundmodul (snd-usb-audio
) aktiviert ist.Ich glaube, dass es beim Hinzufügen früher nur zu Konflikten zwischen
options snd-usb-audio index=0
demsnd-usb-audio
Modul und demsnd_bcm2835
kam, da beide aktiviert waren.quelle
Mit Raspbian Jesse ist das Ändern des Standard-Audiogeräts einfacher als früher.
Verwenden Sie jetzt einfach diesen Befehl, um Ihre alsa erkannten Soundkarten aufzulisten und die Kartennummer Ihres bevorzugten Geräts zu notieren.
Dann erstelle / bearbeite die alsa Konfigurationsdatei
~/.asoundrc
unter oder die systemweite/etc/asound.conf
unter und füge diese Zeilen ein:Ändern
card 0
der Kartennummer Ihres Audiogeräts.Verwenden Sie
alsamixer
diese Option, um zu überprüfen, ob die Standardeinstellung korrekt ist.Quelle:
quelle