„Madsonic“: įdiekite muzikos transliacijos serverį į „Raspberry Pi“

Šioje pamokoje paaiškinsiu, kaip įdiegti muzikos srautinio perdavimo serverį (pamišėlis) Aviečių Pi su „Arch Linux“ ARM.
Norėdami pamatyti instrukciją, kaip įdiegti Arch Linux ant „Raspberry Pi“ galite pažvelgti į tai paštu.

„Raspberry Pi“ rekomenduojama neįdiegti grafinės aplinkos, nes ji naudoja daug atminties. Geriau visada dirbti naudojant ssh jungtį.

Pagrindiniai madsonic bruožai yra šie:

  • Intuityvi interneto sąsaja
  • Palaiko kodavimą įvairiais formatais (pvz., FLAC> mp3)
  • Jame yra „Android“ ir „iOS“ klientų

Riboti RAM GPU ir apsikeitimo srities kūrimui (SWAP)

Šie veiksmai yra neprivalomi, tačiau rekomenduoju juos atlikti, kad „Raspberry“ netrūktų RAM.

„Madsonic“ serveris veikia su „Java“, todėl 256 MB RAM „Raspberry Pi“ naudoja apie 50% RAM. Šiuo atveju rekomenduoju sukurti mainų zona (sukeisti), kad „Raspberry Pi“ atmintyje netrūktų.

1. Sukuriame failą, kuris bus naudojamas kaip failų mainų sritis, ir priskiriame 512 MB erdvę

# fallocate -l 512M / apsikeitimo failas

2. Failui priskiriame skaitymo ir rašymo teises.

# chmod 600 / swapfile

3. Formatuojame kaip apsikeitimą

# mkswap / swapfile

3. Įjungiame apsikeitimą

# swapon / swapfile

4. Į failą pridedame šią eilutę / etc / fstab automatiškai įdiegti apsikeitimo sandorį.

/ swapfile none swap numatytieji 0 0

5. Mes modifikuojame failą /etc/sysctl.d/99-sysctl.conf kad apsikeitimo rašymas būtų atliekamas tik tuo atveju, jei turime mažai laisvos RAM. Pridedame šią eilutę

vm.pasikeitimas = 10

6. Naudojant komandą nemokama -h mes patikriname turimą RAM kiekį.
Srautinė RAM


7. Mes modifikuojame failą /boot/config.txt atsižvelgiant į mūsų turimą „Raspberry Pi“ modelį, apriboti grafikai skiriamos RAM kiekį.

SAUGOKIS! Jei GPU įdėsime per mažai RAM, „Raspberry“ nebus paleista ir turėsime įdiegti SD kortelę kompiuteryje, kad galėtume pataisyti failą /boot/config.txt

Grafikai skirsime 64 MB RAM.

  • „Raspberry Pi“ A modeliui (su 256 MB RAM) modifikuojame liniją gpu_mem_256 = 128 iki gpu_mem_256 = 64
  • „Raspberry Pi“ B modeliui (su 512 MB RAM) modifikuojame liniją gpu_mem_512 = 316 iki gpu_mem_512 = 64

Įsijungimas (neprivaloma)

Norint išvengti aviečių perkaitimo, rekomenduoju naudoti aušinimo šaltinį

Redaguosime failą /boot/config.txt ir mes atkreipsime dėmesį į kai kurias failo gale esančias „overclock“ parinktis.

##Modest
arm_freq=800
core_freq=300
sdram_freq=400
over_voltage=0
##Medium
#arm_freq=900
#core_freq=333
#sdram_freq=450
#over_voltage=2
##High
#arm_freq=950
#core_freq=450
#sdram_freq=450
#over_voltage=6
##Turbo
#arm_freq=1000
#core_freq=500
#sdram_freq=500
#over_voltage=6

Aš naudojau „Modest“ parinktį (800 greičių), tokiu greičiu aš Aviečių Pi Tai gerai veikia.

„Madsonic“ instaliacija

Madsonic yra „Arch Linux“ naudotojo saugykla (AUR), todėl mums reikia bazinio vystymo paketo, kad galėtume sudaryti AUR programas.

Mes įdiegiame reikiamus paketus:

# pacman -S wget curl base-devel yajl Java Runtime libcups

Mes kuriame katalogą kompiliavimui ir atsisiunčiame iš madsonic iš AUR.

$ mkdir build $ cd build $ wget https://aur.archlinux.org/packages/ma/madsonic/madsonic.tar.gz

Mes išskleidžiame failus ir redaguojame failą PKGBUILD pridėti palaikymą ARM procesoriams. Mes ieškome linijos arch = ('i686' 'x86_64') ir mes pridedame
„armv6h“.

$ tar zxf madsonic.tar.gz $ cd madsonic $ nano PKGBUILD ... arch = ('i686' x86_64 'armv6h')

Mes naudojame komandą makepkg atsisiųsti ir sukompiliuoti beprotišką kodą. Tai gali užtrukti ilgai. Būk kantrus.

$ makepkg -g >> PKGBUILD $ makepkg

Įsakymas makepkg Tai sugeneruos failą su .xz plėtiniu, šį failą galima įdiegti naudojant „pacman“.

# pacman -U madsonic-5.0.3860-1-armv6h.pkg.tar.xz

„Java Oracle for ARM“ diegimas

Įdiegęs madsonic aš tai pastebėjau openjdk naudoja beveik 100% procesorių, todėl tai reiškia prastą „Raspberry Pi“ našumą.

Šios problemos sprendimas yra naudoti „Oracle Java“ ARM architektūrai. Norėdami gauti daugiau informacijos šia tema, galite peržiūrėti „Oracle“ straipsnį, kuriame jie rodo „Oracle Java“ ir „OpenJDK“ etalonus. ryšys.

Mes atsisiųsime „Java Oracle“ ARM architektūrai

wget --no-cookies \ --no-check-certificate - header "Slapukas: gpw_e24 = http% 3A% 2F% 2Fwww.oracle.com% 2F; \ oraclelicense = accept-securebackup-cookie" \ "http: / /download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-arm-vfp-hflt.tar.gz "

Išpakuokite failą kelyje / opt / java-oracle /

 # mkdir / opt / java-oracle # tar -zxf jdk-7u55-linux-arm-vfp-hflt.tar.gz -C / opt / java-oracle

Sukuriame „Java Home“ aplinkos kintamąjį ir sukuriame atsarginę „OpenJDK Java“ vykdomųjų failų kopiją.

# JHome = / opt / java-oracle / jdk1.7.0_55 # test -L / usr / bin / java && mv /usr/bin/java[,.backup}

Kuriame simbolines nuorodas į Java y javiečių.

# ln -sf /opt/java-oracle/jdk1.7.0_55/bin/java / usr / bin / java # ln -sf /opt/java-oracle/jdk1.7.0_55/bin/javac / usr / bin / javac

Dabar galime patikrinti „Java“ diegimą naudodami komandą java -version

[eroland @ alarmpi ~] $ java -versija java versija "1.7.0_55" Java (TM) SE vykdymo laiko aplinka (komponavimas 1.7.0_55-b13) Java HotSpot (TM) kliento VM (24.55-b03 komponavimo versija, mišrus režimas)

Mes redaguojame madsonic konfigūracijos failą taip, kad jame būtų naudojama „Java Oracle“, o ne „Java OpenJDK“.

# nano /var/madsonic/madsonic.sh

Ir mes modifikuojame liniją JAVA_HOME kad jis būtų toks:

JAVA_HOME = / opt / java-oracle / jdk1.7.0_55 / jre: / usr / lib / jvm / java-7-openjdk

Madsono konfigūracija

Madsonic konfigūracija atliekama byloje /var/madsonic/madsonic.sh, pirmiausia mes tai palaikome.

cp /var/madsonic/madsonic.sh[,.backup}

Šiame faile galite modifikuoti prievadą, kurį naudos „madsonic“ (pagal nutylėjimą jis naudoja 4040 prievadą), aplanko, kuriame bus saugomos dainos, kelią ir kt.

Pridėsime a Išorinis kietasis diskas prijungtas USB jungtimi, kur mes grosime dainas.

Jei standusis diskas yra suformatuotas NTFS, norint įdiegti diską, turite įdiegti paketą ntfs-3g.

# pacman -S ntfs -3g

Sukuriame aplanką, kuriame bus tvirtinamas kietasis diskas, ir suteikiame jam reikiamus leidimus

# mkdir / mnt / Data # chmod 775 / mnt / Data

Mes gauname savo tvirtinimo tašką Kietasis diskas

$ ls -l / dev / disk / by-label / total 0 lrwxrwxrwx 1 šaknies šaknis 10 m. gruodžio 31 d. duomenys -> ../../sda1969 lrwxrwxrwx 2 šaknies šaknis 1 m. gruodžio 10 d. PS31 -> ../../ sda1969

Mano atveju mane domina diskas su etikete „Data“ / dev / sda2

Tačiau naudoti etiketę diskui tvirtinti nerekomenduojama, nes jei keičiasi etiketė, disko negalima pritvirtinti.

Gauname unikalų identifikatorių (UUID) iš mūsų kietojo disko.

ls -l / dev / disk / by-uuid /

Turėsime panašų rezultatą:

[eroland @ alarmpi ~] $ ls -l / dev / disk / by-uuid / total 0 lrwxrwxrwx 1 šaknies šaknis 10 31 1969 19F4-1917 -> ../../sda1 lrwxrwxrwx 1 šaknies šaknis 15 m. -31E1969 -> ../../mmcblk2300p4 lrwxrwxrwx 18 šaknies šaknis 0 gruodžio 1 d. 1F10AA31F1969AA58D6 -> ../../sda78 lrwxrwxrwx 6 šaknies šaknis 55 m. Gruodžio 2 d. B2cde1-15a31-1969e471-acce-e8a2a15 / mmcblk44p7

Mes užrašome kietojo disko UUID (šiuo atveju 58F6AA78F6AA55D2)

Failo pabaigoje pridedame šią eilutę / etc / fstab

UUID = 58F6AA78F6AA55D2 / mnt / Data ntfs-3g numatytasis 0 0
Nepamirškite pakeisti UUID, gauto iš aukščiau nurodytų komandų

Mes iš naujo paleisime „Raspberry Pi“ ir standusis diskas bus automatiškai pritvirtintas.

Galiausiai pradedame madsonic tarnybą:

# systemctl pradėti madsonic.service

Jei norime, kad paslauga būtų paleista automatiškai kiekvieną kartą, kai sistema įkeliama.

# systemctl įgalinti madsonic.service

O voila, mes turime savo muzikos srautinio perdavimo serverį.

Kartą pamišėlis, mes galime įvesti iš mūsų pageidaujamos naršyklės į mūsų Raspberry Pi IP adresą kartu su 4040 prievadu, mano atveju tai yra 192.168.17.1:4040 ir mes įvedame naudodamiesi duomenimis vartotojas = administratorius slaptažodis = administratorius.

pamišėlis

Žiniatinklio sąsajoje galime pridėti naujų vartotojų ir pakeisti numatytąjį slaptažodį.

Na, tai mano pirmasis indėlis, tikiuosi, kad jums tai patiks.

Šaltiniai:
http://d.stavrovski.net/blog/post/set-up-home-media-streaming-server-with-madsonic-archlinux-and-cubieboard2
http://www.techjawab.com/2013/06/how-to-setup-mount-auto-mount-usb-hard.html


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   x11tete11x sakė

    Aš neturiu „rasp“, bet jei jūs naudojate namų srautinį serverį xD, ar jūs kada nors naudojate mediatombą? Jei taip, ką galite man pasakyti, palyginti su šiuo? Aš naudoju mediatombą, iš pirmo žvilgsnio madsonic sąsaja suteikia xD mediatombui tūkstantį apsisukimų , Kas mane labai domintų, būtų žinoti, ar galite perduoti srautą per „WAN“ ir ar per geresnį saugų protokolą, nes „mediatomb“ leidžia jį valdyti per internetą, bet ne naudojant „https“, taip pat (iki šiol) Radau tik klientą, skirtą „Android“). Aš galiu transliuoti mediatomb per WAN (jei iš mobiliojo telefono, būdamas bet kur, kur galiu groti muziką iš savo namų serverio), nes abejoju protokolo saugumu, įdedu slaptažodžius, kurie neišlaiko santykis su tais, kuriuos paprastai naudoju, ir tam pačiam mediatombui suteikiami leidimai, kad jei kas nors pasiektų, jis negalėtų nieko paliesti xD

    1.    erolandas sakė

      Sveiki, aš nenaudojau mediatombo. Kalbant apie jūsų klausimus, be abejo, galite naudoti madsonic per WAN, aš naudoju madsonic per WAN ir man tai labai gerai. „Madsonic“ leidžia naudoti „https“, jūs tiesiog turite tai įgalinti savo konfigūracijos faile: madsonic_https_port = 8443 ir voila 🙂
      Kalbant apie „Android“ skirtas programas, aš naudoju ultragarso skambutį, tai yra labai gerai, tai leidžia saugoti dainas talpykloje, kad galėtumėte klausytis be ryšio xD

      Sveikinimai.

    2.    Ronal sakė

      Drauge, kokią patirtį turi su „Arch ARM“? Aš esu „Arch“ vartotojas .. įdiekite „rasbian“. Bet man atsibodo problemos dėl atpirkimo. Noriu Arch. Ką apie paketus, kurių nėra oficialioje repo. Pavyzdžiui, ar juos galima kompiliuoti AUR paketus?

  2.   tanrax sakė

    Labai įdomus straipsnis!
    Atlikau greitą paiešką norėdamas pamatyti jūsų klientą „Android“ sistemoje ir pamačiau, kad jis mokamas. Ar yra nemokama alternatyva?

    1.    erolandas sakė

      Sveiki, jei yra nemokamų alternatyvų, naudoju ultragarsą.
      https://play.google.com/store/apps/details?id=com.thejoshwa.ultrasonic.androidapp&hl=es

      Sveikinimai.

  3.   MSX sakė

    Subsonic yra žvėris ir nenaudoja Java mėšlo. Jei neklystu, „ownCloud“ taip pat gali transliuoti garso ir vaizdo įrašus ir yra labai lengvas - bent jau lyginant su tuo, kad veikia JVM ir kita programa yra sunki.

    „Java“ turi mirti - tas pats, kas „Flash“.

    1.    erolandas sakė

      Iš tikrųjų „ownCloud“ turi pagrindinę srautinio perdavimo paslaugą, o pranašumas, kurį matau, yra garsinis, yra galimybė perkoduoti, jei, pavyzdžiui, jie turi daug „flac“ muzikos. Jūs taip pat teisus, „Java“ naudojimas yra sunki programa, tačiau kol kas neturėjau jokių problemų naudodama 256 MB RAM „Raspberry“.

      1.    3000 sakė

        Na, „OpenJDK 7“ (o ne 6, kaip rodo „Oracle“) yra daug stabilesnis, kalbant apie našumą. Tačiau jei yra versija be „Java“, sveikiname (bent jau tai yra gera „Spotify“ alternatyva).

        Ir, beje, ar OWnCloud turi srautą? Tai jau atrodo 4 dalijamasi.

  4.   rolo sakė

    Aš naudoju „minidlna“, jis nieko nevartoja ir jūs galite turėti prieigą prie vaizdo įrašų, nuotraukų ir muzikos, o aš juos užfiksuoju iš vaizdo grotuvo kompiuteryje ar televizoriuje, taip pat suteikiama galimybė įdėti labai ribotą tinklalapį.

    Kitas dalykas, „Madsonic“ yra tai, kad srautinio perdavimo paslauga ar srauto srautas? «...„ Madsonic “yra internetinis žiniasklaidos srautas ir„ Subsonic “muzikinė šakutė ... , „Madsonic“ palaiko praktiškai bet kokio garso formato konversiją ir srautinį perdavimą… »Aš nežinau, kiek yra skirtumas tarp vieno ir kito termino

    1.    erolandas sakė

      Nesu tikras, koks skirtumas, man atrodo, kad „streamer“ yra naudojamas sakyti, kad programinė įranga gali perduoti srautą, bet aš kartoju, aš nesu tikras, kad xD

  5.   Op sakė

    Šiuo metu naudoju „Amson“ iš „Subsonic“, nes mačiau, kad tai nemokama programinė įranga, GPL3 licencija, tačiau jei norite turėti visas savybes, turite sumokėti licencijos raktą už serverį, kuris yra sumontuotas su ikigarsiniu, nes „madsonic“ aš to nežinojau , tai bus bandymo klausimas, galėtumėte pasakyti, kokius privalumus galėčiau turėti, jei vietoj ampache naudosiu madsonic.

    1.    erolandas sakė

      Sveiki, madsonic yra ikigarsinis šakutė, tik madsonic nereikia mokėti už raktą. Kalbant apie „Ampache“, aš jo nenaudojau, - ir negalėjau pasakyti, kokie yra „madsonic“ pranašumai, atsižvelgiant į ampache. „Google“ radau šią nuorodą, galbūt tai galėtų būti naudinga: http://www.brunobense.com/2013/04/subsonic_ftw/.