Placa USB como meu dispositivo de áudio padrão

32

Comprei uma pequena placa de som USB. Meu Pi reconhece o dispositivo:

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

Se eu executar alsamixere definir o áudio como USB PnP Sound Device, posso ouvi-lo através da placa de som USB. Para torná-lo permanente, digite:

$ sudo alsactl store

Porém, após a reinicialização, o padrão não é mais a placa de som USB.

insira a descrição da imagem aqui

Então, eu tento ver uma lista de dispositivos de reprodução:

$ 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

Eu edito /etc/asound.confpara ficar assim para definir o padrão:

$ sudo nano /etc/asound.conf


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

Faça reboote ainda o meu padrão não é a placa de som USB.

Quando tento:

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

Eu ouço som do cartão USB.

Eu também tentei o seguinte:

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

altere o índice de -2 para 0:

options snd-usb-audio index=0

Reinicie e ainda não definiu o padrão. Eu até comentei a linha e sem sorte.

Então, como configuro o cartão USB como meu dispositivo de áudio padrão?

Editar

 dpkg -s pulseaudio

Exibe:

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.
 .

Então:

cat /proc/asound/modules

Exibe:

 0 snd_bcm2835
 1 snd_usb_audio
PhillyNJ
fonte
Pergunta ... você tem o pulseaudio instalado por acaso? Corra dpkg -s pulseaudiopara descobrir, ele dirá algo assim, dpkg-query: package 'pulseaudio' is not installed and no information is availablese não for. Você poderia executar esse comando e postar a saída?
RPiAwesomeness
Além disso, você pode executar cat /proc/asound/modulese postar a saída?
RPiAwesomeness
@RPiAwesomeness - Atualizado com as informações solicitadas.
precisa saber é o seguinte
1
Ok, você já tentou o seguinte options snd-usb-audio index=0 [PRESS ENTER] options snd_bcm2835 index=1:? Pelo que posso ver, você está apenas alterando o snd-usb-audioíndice e o sistema está mudando de volta porque não pode ter dois (usb e bcm2835) no mesmo índice?
RPiAwesomeness
2
Yay! : D Fico feliz em ter ajudado, e nunca tivemos que desinstalar o pulseaudio! Hurray for the internet :)
RPiAwesomeness

Respostas:

28

Acontece que o OP estava pensando no caminho correto com sua tentativa

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

e alterando o índice de -2 para 0 via adição options snd-usb-audio index=0ao arquivo. No entanto, isso não estava funcionando.

A maneira correta de fazer isso é adicionar options snd-usb-audio index=0seguido por options snd_bcm2835 index=1.

Essencialmente, o que faz isso está forçando o módulo de som padrão ( snd_bcm2835) a ser desativado enquanto o módulo de som USB ( snd-usb-audio) está ativado.

O que eu acredito que estava acontecendo apenas com a adição de apenas options snd-usb-audio index=0era que o snd-usb-audiomódulo e o snd_bcm2835estavam em conflito, com os dois sendo ativados.

RPiAwesomeness
fonte
Sem problemas. Novamente, sempre feliz em ajudar: D
RPiAwesomeness
Doce! Isso corrigiu o problema para mim também. Eu tive que reiniciar depois de alterar o alsa-base.conf, FWIW.
Andrew Swan
@AndrewSwan De nada! Feliz em ajudar! :)
RPiAwesomeness
14

Com o Raspbian Jesse, alterar o dispositivo de áudio padrão é mais simples do que costumava ser.

Agora, basta usar este comando para listar suas placas de som detectadas pela alsa e anote o número da placa do seu dispositivo preferido.

aplay -l

Em seguida, crie / edite o arquivo de configuração alsa em ~/.asoundrcou o sistema em geral /etc/asound.confe cole estas linhas:

pcm.!default {
    type hw
    card 0
}

ctl.!default {
    type hw           
    card 0
}

mudando card 0para o número do cartão do seu dispositivo de som.

Use alsamixerpara verificar se o padrão foi definido corretamente.

Fonte:

semitons
fonte
1
@ Greenonline, re: minha 'pergunta' de ontem, eu realmente não consegui adicionar essa resposta na outra noite, porque era protegida pela comunidade e ainda não tinha 10 representantes! Obrigado pelo comentário amigável, porém, ele ajudou :)
semitons
Ah ok. Obrigado. Eu pensei que esta resposta parecia familiar ... :-)
Greenonline
A resposta aceita não funcionou para mim, mas isso funcionou! Muito obrigado.
Twiffy
2
Isso não funcionou para mim; em vez disso, escrevi isso no asound.conf "pcm.! Default {type plug slave {pcm" hw: 1,0 "}} ctl.! Default {type hw card 1} "From: linuxcircle.com/2013/05/08/…
Moulde 13/09/17