Impossibile impostare il dispositivo audio di input e output predefinito su Raspberry jessie


12

Sto affrontando un problema simile a quello descritto in questa domanda . Tuttavia sto eseguendo Jessie su Raspberry Pi e che non ha un /etc/modprobe.d/alsa-base.conffile.

Quindi qualcuno può dirmi dove e come impostare il dispositivo audio di input e output predefinito su Jessie.


Potresti semplicemente provare a creare quel file; Non so se sia stato rimosso a causa di qualcosa a che fare con l'albero dei dispositivi, e in tal caso se ciò farà alcuna differenza. Ciò che vengono chiamati in realtà non importa (oltre a determinare l'ordine in cui vengono letti), purché finiscano .conf. È ciò che conta in loro.
riccioli d'oro

ok lo creerò ma poi quale sarà il contenuto dello stesso. Devo aggiungere solo una riga "opzioni snd-usb-audio index = 0" ??
Parth Doshi,

Penso che ci siano due linee suggerite lì, quella e options snd_bcm2835 index=1.
riccioli d'oro

Ciao, ho provato ad aggiungere lo stesso, ma il valore predefinito è solo snd_bcm2835. Ho anche fatto un riavvio
Parth Doshi il

Lascialo lì e, se non stai usando la struttura dei dispositivi per qualcosa (ad es. I2C), prova ad aggiungere device_tree=(senza nulla dopo) /boot/config.txtper disabilitarlo, quindi riavvia nuovamente. Se ciò non funziona, puoi anche rimuovere quella linea da config.txtnon dimenticare più tardi.
riccioli d'oro

Risposte:


9

Ok, prima cancella il file /etc/modprobe.d/alsa-base.confRaspbian Jessie non usa questo file di configurazione come ha fatto Wheezy.

Per trovare l'indirizzo utilizzato dal tuo dispositivo devi prima inserire il comando che aplay -lmostra tutti i dispositivi di uscita audio e il loro indirizzo. Ad esempio, la mia scheda audio USB viene visualizzata come dispositivo 1 nell'output che assomiglia a questo.

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: 0/1
  Subdevice #0: subdevice #0

Ora, per impostare il dispositivo sulla scheda predefinita, sarà necessario modificare il file /usr/share/alsa/alsa.confcon il comando sudo nano /usr/share/alsa/alsa.confscorrere verso il basso fino a trovare le linee

defaults.ctl.card 0
defaults.pcm.card 0

e cambiali in (se il tuo dispositivo è elencato anche come dispositivo 1, in caso contrario cambia 1 in qualsiasi indirizzo sia elencato)

defaults.ctl.card 1
defaults.pcm.card 1

Spiegazione: Le schede audio USB sono registrate come scheda 1 su Raspbian Jessie. Su Wheezy sarebbero stati registrati come carta -2 per impostazione predefinita e la modifica lo /etc/modprobe.d/alsa-base.confavrebbe cambiato.

Non so se questo passaggio successivo sia necessario ma senza di esso la mia carta non funzionerebbe.

Crea e modifica il file ~/.asoundrcusando il comando sudo nano ~/.asoundrce modificalo in modo che legga solo questo:

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw
    card 1
}

Ora l'uscita audio predefinita (altoparlanti) e l'ingresso audio (microfono) sono il dispositivo USB.


@ParthDoshi Ho modificato la domanda, nel caso in cui non si stia utilizzando una scheda audio USB.
Patrick Cook,

grazie Patrick per la rapida risposta. Controllerò questo e ti farò sapere. Sto usando un microfono USB come input e altoparlanti audio come output. I miei altoparlanti sono collegati tramite un jack audio da 3,5 mm.
Parth Doshi,

@ParthDoshi in modo che i tuoi altoparlanti utilizzino la scheda audio standard sul pi?
Patrick Cook,

sì, stanno usando la scheda audio standard. Ho fatto un test eseguendo il comando speaker-test ... Sono in grado di riprodurre un file mp3 di esempio sul mio PI che posso sentire chiaramente attraverso i miei altoparlanti, L'unico problema è il microfono al momento
Parth Doshi

Ok, allora non hai bisogno di cambiare una delle linee in quei file, sto scoprendo quale linea in questo momento.
Patrick Cook,

4

La domanda si riferisce a un altro post che ha già una risposta che afferma semplicemente che con Jessie non è necessario modificare /usr/share/alsa/alsa.conf, basta creare ~/.asoundrce digitare

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw
    card 1
}

PS: l'ho appena testato con un'installazione pulita su un raspberry 2 collegato con gli altoparlanti Logitech Z-5, funziona perfettamente


3

Se si dispone di un dispositivo diverso per l'ingresso e l'uscita (ad es. Microfono USB e altoparlante audio da 3,5 mm), è possibile scrivere in questo modo nel proprio ~ / .asoundrc:

pcm.!default {
  type asym
  playback.pcm
  {
    type hw
    card 0
    device 0
  }
  capture.pcm
  {
    type hw
    card 1
    device 0
  }
}
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.