COOKIES

This site may be using cookies to melk you with your own data. I, ben0bi, am not the owner of this web service and I also do not maintain their servers. But the EU and the owner of this service think, that the user (me) has the responsibility to inform the consumer (you), that this website uses cookies. Again: I, ben0bi, NEVER use cookies. I am not responsible for the setup of this web service. I just present some information here and do not intend to spy on you for whatever reason ever. But (also again), I do not host this website nor do I maintain any servers related to this website nor do I benefit from using the cookies maintained from this service. I hereby give the responsibility for using cookies on blogspot back to the owners of blogspot.

Freitag, 16. November 2018

Raspi Music Server Tutorial

Die Intention hierbei war, dass ich von jedem Gerät aus Musik auf der [einen] Stereoanlage abspielen kann.

Es besteht aus mehreren "Teilen":

+ Musikserver Mopidy
+ Frontend RompR
+ Mein File-Upload-Frontend.

+ Eventuell dann noch ein paar Scripts um die Dateisystemscans zu automatisieren und...so...

First things first:

System

Wir installieren erstmal das Standard Raspian auf dem Raspi:
Hier herunterladen: https://www.raspberrypi.org/downloads/raspbian/
(Es braucht nur die Lite-Version, ohne Desktop)

...und mit Etcher auf die MicroSD-Karte gebrannt:
https://www.balena.io/etcher/

So, nun stopfen wir die microSD in den Raspi und schalten den mal an (inkl. Bildschirm und Tastatur).

Login: pi
Password: raspberry (Deutsche Tastatur: raspberrz)

Erstmal richten wir die Maschine richtig ein:

sudo raspi-config

Dort dann erstmal das WLAN einrichten und eventuell SSH aktivieren. Desweiteren ändern wir das Passwort.

SSH kann man unter "Interfacing Options" einrichten.

Unter "Advanced Options" wird dann noch die Option "Expand Filesystem" ausgewählt.

Danach rebooten wir mal:

sudo reboot

Webserver

Dann machen wir ein update und installieren erstmal Apache. Die Verzeichnisse von Apache benutzen wir dann auch für die Musik.

sudo apt-get update
sudo apt-get upgrade

sudo apt-get install apache2 php

mit "ifconfig" findet man die aktuelle IP heraus. Damit mal testen...Webseite sollte auftauchen.

Dateisystem-Interface

Nun laden wir mein Filesystem-Frontend in das Apache-Webverzeichnis.

Dazu brauchen wir git:

sudo apt-get install git

cd /var/www/html
sudo git clone https://github.com/ben0bi/ben0biUploader.git

Unter [IP]/ben0biUploader ist dieser dann zu finden. Du kannst das Verzeichnis auch umbenennen.
Wir müssen hier noch einiges einstellen:

Öffne die Konfigurationsdatei mit einem Editor:

sudo nano ben0biUploader/index.php

Unkommentiere dort die zwei Zeilen unter dem SHOW-Kommentar. Diese musst du später wieder ein-kommentieren. Damit siehst du auf der Webseite den SHA1-String des Passwortes, welches du eingibst. Speichere diesen String und schreibe ihn in

ben0biUploader/config/pageconfig.json

hinein. Schreibe dort auch den richtigen Pfad unter "REAL_UPLOAD_PATH" hinein.

Dieser Pfad muss nun noch dem www-data user zugehörig gemacht werden:

sudo chown www-data:www-data /var/www/html/ben0biUploader/FILESYS

Bei nano kannst du mit Ctrl-O speichern und mit Ctrl-X beenden.

Nun solltest du mit deinem Passwort reinkommen. Kommentiere die zwei Zeilen in index.php wieder ein. Du solltest eine Datei "empty.empty" sehen. Diese dient dazu, das Verzeichnis für git "sichtbar" zu machen. Mit dieser kannst du testen, ob alles geht (rename, delete). Erstellte neue Verzeichnisse kannst du auch wieder löschen.

Nun müssen wir höchstwahrscheinlich noch ein paar PHP-Variablen ändern:

Mache in /var/www/html eine Datei phpinfo.php und schreibe folgendes hinein:

<?php
phpinfo();
?>

Wenn du diese nun im Browser aufrufst, siehst du die PHP-Variablen deines Systems.

[IP]/phpinfo.php

Die Zahl bei upload_max_filesize ist vieeel zu tief. :)
Und zusätzlich müssen wir noch post_max_size verändern. Diese Zahl sollte ein bisschen höher als die upload_max_filesize sein.

Dazu öffnen wir das php-Konfigurationsfile:
In der PhpInfo steht ganz oben auch, wo das Konfigurationsfile zu finden ist. WARNUNG: Das System selbst gibt einen falschen Pfad an mit "php --ini". Die Datei in der phpinfo ist richtig.

Darin suchen wir mit CTRL-W nach den obigen Werten und schreiben was grösseres rein:
upload_max_filesize = 120M
post_max_size = 128M

Wieder speichern mit CTRL-O und Apache neu starten:

sudo apache2ctl restart

Mopidy Musik Server

Ich halte mich hier an folgende Artikel:
https://docs.mopidy.com/en/latest/installation/raspberrypi/#how-to-for-raspbian
http://blog.scphillips.com/posts/2013/01/sound-configuration-on-raspberry-pi-with-alsa/

Ok, erstmal schalten wir den Sound auf den Audio-Jack anstatt auf HDMI. Später wird er dann noch auf die externe USB-Soundkarte geschaltet, doch erstmal den Jack:

sudo raspi-config

Hier findest du unter "Advanced Options" einen Eintrag "Audio". Wähle dort "Force 3.5mm headphone jack".

Unter "Memory Split" geben wir noch eine kleinere Zahl ein (RAM für die Graphik), damit die Musik mehr RAM hat. 16 sollte reichen, vielleicht geht es sogar mit 8.

Reboote nun die Maschine.

Mit "alsamixer" kannst du die Systemlautstärke erhöhen.

Um die Lautstäke bei jedem boot einzurichten, schreiben wir folgendes in die Datei
/etc/rc.local, und zwar VOR "exit 0"

amixer set PCM -- 100%

Mopidy installieren:
wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add -
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list https://apt.mopidy.com/stretch.list

sudo apt-get update
sudo apt-get install mopidy
Nun müssen wir noch ein paar Variablen einstellen. Erstmal einfach Mopidy starten:

mopidy

Dies startet nicht nur den Server sondern legt auch die wichtigen Dateien an, welche wir noch konfigurieren müssen. Zumindest das Verzeichnis muss gesetzt werden. Also erst mal CTRL-C, um den Server zu unterbrechen, dann:

nano ~/.config/mopidy/mopidy.conf

Bzw. /etc/mopidy/mopidy.conf

Dort suchen wir die Einträge [local] und [file](?) und kommentieren das Wichtige aus:
enabled=true
media_dir = PFAD ZU DEINEM MUSIKVERZEICHNIS*


* der Pfad sollte derselbe sein, welcher für die Dateioperationen oben benutzt wird.
Also hier zum Beispiel: /var/www/html/ben0biUploader/FILESYS

Schliesslich noch für RompR weiter unten:

[mpd]
connection_timeout = 120

Nun richten wir mopidy ein, dass es beim booten startet:

sudo systemctl enable mopidy

Um den aktuellen status zu sehen, benutze:

sudo systemctl status mopidy

Andere wichtige Kommandos:
sudo systemctl start mopidy
sudo systemctl stop mopidy
sudo systemctl restart mopidy



Und vor allem:
sudo mopidyctl local scan


RompR Frontend

RompR ist das Web-Frontend für Mopidy.
https://fatg3erman.github.io/RompR/
https://fatg3erman.github.io/RompR/Installation-on-Linux-Alternative-Method

Für RompR braucht es mysql und anderes, also installieren wir das:

sudo apt-get install mysql-server mysql-client php-mysql php-curl php-gd php-json php-xml php-mbstring imagemagick

Um die datenbank besser zu administrieren installieren wir evt. noch Phpmyadmin:
sudo apt-get install phpmyadmin

Im Browser sollte nun phpmyadmin aufrufbar sein:
[IP]/phpmyadmin

Falls du nicht rein kommst, musst du noch(mal) phpmyadmin konfigurieren:

sudo dpkg-reconfigure phpmyadmin

Danach laden wir das release in das home directory:
wget https://github.com/fatg3erman/RompR/releases/download/1.23/rompr-1.23.zip

...und entzippen es:

unzip rompr-1.23.zip

Und machen schliesslich im Web-Verzeichnis einen Link darauf:

sudo ln -s /PATH/TO/ROMPR /var/www/html/rompr

und machen noch ein paar andere Sachen:

cd [rompr]
mkdir prefs
mkdir albumart
sudo chown www-data prefs
sudo chown www-data albumart

Aktiviere nun noch ein paar Apache-Module:

sudo a2enmod expires
sudo a2enmod headers
sudo a2enmod deflate
sudo a2enmod php7.0

Alles andere entnimmst du bitte dem zweiten Link oben. Da muss noch das Inet konfiguriert werden und MySql und Zeug und Sachen...

Externe USB-Soundkarte

Zu guter Letzt bauen wir noch eine externe USB-Soundkarte ein.
Der Raspi-Sound ist nämlich nicht wirklich brauchbar.

https://raspberry.tips/raspberrypi-tutorials/raspberry-pi-usb-soundkarte-unter-raspbian-einrichten

[Weiteres folgt, computer arbeitet...)

Keine Kommentare:

Kommentar veröffentlichen