Minulla on vadelma pi 3, jossa on usb-dac-liitin mikrofonin kytkemiseen, ja minulla on myös USB-kaiutin. p> Asensin pi-, mopidy- ja muuhun litle-projektiini.
Muutin ~/.asoundsrc
-tunnusta
pcm.!default { type asym playback.pcm { type plug slave.pcm "hw:1,0" } capture.pcm { type plug slave.pcm "hw:0,0" } }
Kaikki toimii ja uudelleenkäynnistyksen yhteydessä uusi kokoonpano lisätään .asoundrc
-tiedostoni loppuun
pcm.!default { type asym playback.pcm { type plug slave.pcm "hw:1,0" } capture.pcm { type plug slave.pcm "hw:0,0" } } pcm.!default { type hw card 2 } ctl.!default { type hw card 2 }
Tällä muunnoksella litle-projektini ei toimi, minun on poistettava
pcm.!default { type hw card 2 } ctl.!default { type hw card 2 }
Tiedätkö miksi, tämä kokoonpano lisätään joka toinen vuosi käynnistä uudelleen?
Ehkä tämä, voisitko auttaa sinua auttamaan minua 🙂
cat /proc/asound/modules 0 snd_usb_audio 1 snd_usb_audio 2 snd_bcm2835
Kiitos
Kommentit
Vastaa
Kumoa mitä pyysin sinua tekemään. Tämän jälkeen käynnistä se uudelleen. Kun RPi on varmuuskopioitu, anna tiedostojen luoda:
sudo nano /etc/asound.conf
Aseta tämä tiedostoon kyseiseen tiedostoon:
pcm.!default { type asym playback.pcm { type plug slave.pcm "hw:1,0" } capture.pcm { type plug slave.pcm "hw:0,0" } }
Kun olet valmis, tallenna tiedosto ja käynnistä se uudelleen.
Kommentit
- Kiitos Jason, mutta ei. kukaan ei muuta minulla on jo
pcm.!default
jactl.!default
Yritän poistaa/home/pi/.asoundrc
mutta pcm et ctl palaa ilman määrityksiäni/etc/asound.conf
Vastaa
tapa, jolla ratkaisin tämän ongelman, oli ajaa sudo raspi-config
ja siirtyä sitten Lisäasetukset ja sitten Ääni. Tämä asetus oli Automaattinen. Kun vaihdoin tämän vaihtoehdon ”Pakota 3,5 mm: n kuulokeliitäntä”, se lopetti .asoundrc-tiedoston korvaamisen uudelleenkäynnistyksen yhteydessä.
Kommentit
- Yritin tätä, jokin silti korvaa
.asoundrc
tiedosto jokainen käynnistys.
Vastaa
Tämä on vanha ongelma, joka säännöllisesti uudelleen, viimeksi päivityksen jälkeen uusimpaan ytimeen ja laiteohjelmistoon, Raspian Stretch , 4.14.30-v7+
.
Vaikuttaa siltä, että sillä voi olla jotain tekemistä sen kanssa, miten Raspberry Pi käyttää systemd -palveluja käynnistettäessä ja sammutettaessa ja miten ALSA-deemonit ja palvelut on määritetty alun perin (tai järjestelmän päivityksen jälkeen). Paras arvaukseni on, että jotain asennuksen jälkeiset komentosarjat eivät tunnista, että sinulla on jo /home/pi/.asoundrc
-tiedosto, ja yrittää sitten palauttaa sen johonkin oletusarvoon. On epäselvää, mistä tämä oletus tulee. Varmasti ei sitä, mitä on kirjoitettu monien ALSA- tai järjestelmäpalvelu -määritystiedostojen tai niihin liittyvien man-sivujen kommentteihin. Mutta se näyttää olevan peräisin vikasta lxpanels-volyymisovelluksessa. seuraavat näyttävät ratkaisseet ongelman:
- Poista ensin Volume Applet lxpanel ista ja sitten:
# Make sure your .asoundrc is correct, then do: alsactl kill save_and_quit sudo shutdown now
PS. Näyttää myös tärkeältä käyttää sammutusta eikä käynnistää uudelleen !
virheenkorjausyritykset
Jos yllä olevat eivät toimi, lue tämä.
Puolena näyttää siltä, että bugi siitä, miten systemctl käsittelee palveluja. Pi: n FS on erilainen (puuttuvien osien mukaan) kuin muut Debian-pohjaiset järjestelmät, joten palvelupalkkien sijainti ja käsittely ei ole täysin omien man-sivujen mukaista.
Jos haluat nähdä asiaankuuluvat ALSA-palvelut, , tee:
sudo systemctl status alsa-restore alsa-state
Normaalioloissa sinun pitäisi pystyä sammuttamaan epäillyt staattiset palvelut jollakin seuraavista tavoista:
sudo systemctl mask --system alsa-state.service --now sudo systemctl mask --system alsa-restore.service --now
[system,user,runtime, global]
: n ajonaikaiset sijainnit ovat kuitenkin:
/etc/systemd/system-preset/*.preset /run/systemd/system-preset/*.preset /lib/systemd/system-preset/*.preset /etc/systemd/user-preset/*.preset /run/systemd/user-preset/*.preset /usr/lib/systemd/user-preset/*.preset
ei kunnioiteta kohdassa man systemd.preset
kuvatulla tavalla.
Jos haluat nähdä kaikki palvelut ja niiden nykyisen tilan, käytä:
systemctl list-unit-files -t service -all
Voit myös kääntää riippuvuudet seuraavasti:
systemctl list-dependencies --reverse alsa-restore.service alsa-restore.service ● └─basic.target ● └─multi-user.target ● └─graphical.target
Joka tapauksessa, kun poistat palvelun käytöstä koodilla mask
, sen tulisi korvata tiedosto symlinkillä osoitteeseen /dev/null
, vain että tätä ei tapahdu oikeassa paikassa (yllä olevan mukaisesti). Joten meidän on sen sijaan poistettava tiedosto manuaalisesti (varmuuskopioi se ennen) ja luotava sitten linkki.
cp /etc/systemd/system/alsa-restore.service ~/alsa-restore_service.bak cd /etc/systemd/system/ sudo rm alsa-restore.service sudo ln -s /dev/null alsa-restore.service # It should look something like: ls -al /lib/systemd/system |grep alsa lrwxrwxrwx 1 root root 9 Apr 25 13:23 alsa-restore.service -> /dev/null lrwxrwxrwx 1 root root 9 Apr 25 13:26 alsa-state.service -> /dev/null lrwxrwxrwx 1 root root 9 Jan 23 2017 alsa-utils.service -> /dev/null
Toista nyt yllä olevat kohdat myös kohdille alsa-state.service
ja samat tiedostot hakemistossa: /lib/systemd/system/
jos niitä ei vielä ole.
VASTUUVAPAUSLAUSEKE
Yllä oleva ei todennäköisesti ole oikea tapa tehdä tätä, joten pidä tätä erittäin kokeellisena ongelmanratkaisuna, kunnes buginen Beahviour on ratkaistu. Se voi todennäköisesti rikkoa ALSA-toiminnot kokonaan.
Vastaa
Olin ratkaissut samanlaisen tilanteen päivittämällä Vadelma pi -ympäristön. vaiheet ovat,
- Varmuuskopioi tietosi Raspberry pi -palvelusta
- tarkista nykyinen versio $ uname -a
- päivitä paketin tiedot $ sudo apt-get päivitä
- päivitä asennetut paketit $ sudo apt-get upgrade
- päivitä uusimpaan jakeluun $ sudo apt-get dist-upgrade
- päivitä vadelma pi firmware $ sudo rpi-päivitys
- Käynnistä $ sudo uudelleenkäynnistys uudelleen
- tarkista uusin versio $ uname -a
Sen jälkeen Raspberry pi -laitteellani ratkaistiin sellainen kuten ”muokattu .asoundrc kirjoitettiin uudelleenkäynnistyksen jälkeen”. NOOBS-versio päivitettiin versioon 2.8.1 24.4.2018. Vain mielestäni, että se oli eräänlainen ALSA-vika, koska yritin epäonnistua ja keräsin tietoja näistä ilmiöistä.
Vastaa
Ok, joten minulla oli samanlainen ongelma, olin yhteydessä Pi-laitteeseeni Bluetooth-kaiuttimella, jos kaiutin ei ollut päällä ennen käynnistystä, se asetti .asoundrc-tiedoston uudelleen. Niin ärsyttävää. Yritin kaikkia edellä mainittuja, ajattelin, mitä jos asetan vain oikeat asetukset, teen sen vain luettavaksi. Kumma kyllä tämä toimi. Ainoa mitä tein, oli: sudo chmod 0444 ./.asoundrc ja siinä kaikki. Kaikki on nyt hyvin.
Kommentit
- Tämä toimi minulle Raspbian Stretchissä. On outoa, että käyttöoikeuksien asettaminen toimii, koska olisin luullut, että järjestelmä (ts. juuri) muuttaa tiedostoa.
- Vaikka nyt saan alla olevan virheen kutsuttaessa pyaudiota. toimimaan. ” Lauseke ’ alsa_snd_pcm_hw_params_set_period_size_near (pcm, hwParams, & alsaP & dir) ’ epäonnistui ryhmässä ’ src / hostapi / alsa / pa_linux_alsa.c ’, rivi: 924 ”
vastaus
Jos vaihdat oletusaudiolaitteen valikosta> Asetukset> Äänilaitteen asetukset> Äänikortti valitse Äänikortti> tee oletusasetukseksi ~ / .asoundrc -tiedostosi muuttuu
Kommentit
- Tämä näyttää olevan minun ongelmani. Korvaa .asoundrc uudelleenkäynnistyksessä Stretchillä. Onko ideoita, joissa voin ’ kumota ’ tämän ruudun valinnan, jotta järjestelmä ei enää korvaa?
pcm.!default
jactl.!default
Älä ’ ole korttia 2, mutta kortti 0.