Musik im bytewerk: Unterschied zwischen den Versionen

Aus bytewerk-Wiki
Zur Navigation springen Zur Suche springen
(Aufgrund der Umstellung des Netzwerk aufs 10er Netz hat das Teil eine neue IP, wird nachgereicht wenn ich wieder im Werk bin.)
Keine Bearbeitungszusammenfassung
 
(10 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Veraltet|Schon vor dem Umzug war diese Seite Veraltet.}}
Für die Musik im bytewerk sorgt eine [[VIP1710]], auf der ein [http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki Music Player Daemon] läuft.
Für die Musik im bytewerk sorgt ein RaspberryPi, das wiederum an die [[VIP1710]] einen netcat Stream sendet (Audio in Roh-Daten).
Auf dem Raspberry läuft ein [http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki Music Player Daemon].


Die Box ist digital an die Anlage angeschlossen (hier muss als Quelle "DVD" und als Audio-Eingang "DIGI2" gewählt werden).
Die [[VIP1710]] ist zurzeit analog an die Anlage angeschlossen (hier muss als Quelle "Video1" gewählt werden).


Der MPD ermöglicht es allen Anwesenden, die Playlist zu verwalten.
Der MPD ermöglicht es allen Anwesenden, die Playlist zu verwalten.


== Zugang zum MPD ==
== Zugang zum MPD ==
Die Box ist derzeit unter <s>192.168.178.143</s> <insert new IP here> zu erreichen.
Das RaspberryPi ist derzeit unter der IP 10.42.0.3 bzw. dem Hostnamen „music“ zu erreichen.


Man hat folgende Möglichkeiten, den MPD zu verwalten:
Man hat folgende Möglichkeiten, den MPD zu verwalten:


* Client auf dem eigenen Rechner (bevorzugte Methode, da geringste Belastung der Box). Auf der MPD-Projektseite gibt es eine [http://mpd.wikia.com/wiki/Clients Client-Übersicht].
* Client auf dem eigenen Rechner (bevorzugte Methode, da geringste Belastung des RaspberryPi). Auf der MPD-Projektseite gibt es eine [http://mpd.wikia.com/wiki/Clients Client-Übersicht].
* [http://music/ Webinterface] (interner Link): Es stehen diverse Clients zur Verfügung.
* Login per SSH: ssh mpd@<s>192.168.178.143</s><br /> Passwort bitte bei den Anwesenden erfragen!<br /> Als Clients stehen hier [http://mpd.wikia.com/wiki/Client:Ncmpc ncmpc] und [http://unkart.ovh.org/ncmpcpp/ ncmpcpp] zur Verfügung.
* IRC: Einfache Steuerungsaufgaben (Start/Stop/Statusabfrage) können über PRIVMSGs an den IRC-Bot ausgeführt werden. Für weitere Infos einfach den Bot um Hilfe fragen.
* [http://<s>192.168.178.143</s>/pitchfork Pitchfork-Webinterface] (bitte möglichst vermeiden, da dies manchmal zu Hängern bei der Musik führt)


== Statusanzeige ==
== Statusanzeige ==
'''Die grafische Ausgabe ist zurzeit nicht aktiviert, weil kein geeignetes Display vorhanden ist'''

[[Datei:Mpd_statusdisplay.jpg|200px|thumb|right|Statusanzeige des MPD]]
[[Datei:Mpd_statusdisplay.jpg|200px|thumb|right|Statusanzeige des MPD]]
Der aktuelle Status des MPD wird über eine Statusseite auf dem TV-Ausgang angezeigt. Hierfür wurde einfach die Startseite der Box auf den lokalen Webserver umgebogen.
Der aktuelle Status des MPD wird über eine Statusseite auf dem TV-Ausgang angezeigt. Hierfür wurde einfach die Startseite der Box auf den lokalen Webserver umgebogen.


Die Statusseite wird alle 10 Sekunden neu geladen (bei großen Playlists kanns auch mal ein bisschen länger dauern).<br />
Die Statusseite wird alle 10 Sekunden neu geladen (bei großen Playlists kanns auch mal ein bisschen länger dauern).
Die Titelliste unter dem Fortschrittsbalken zeigt die nächsten 7 Einträge in der Playlist.
Die Titelliste unter dem Fortschrittsbalken zeigt die nächsten Einträge in der Playlist.


== IR-Fernbedienung ==
Achtung: nicht wundern, wenn die Box direkt nach dem Booten "Temporary Error" anzeigt und scheinbar neu startet. Dies ist ein Workaround, damit die Statusseite sicher angezeigt wird, falls der Webserver zu langsam startet (hierzu wird einfach der "infoclient" auf der Box abgeschossen, was einen Neustart des X-Servers zur Folge hat).


Für die Unterstützung von IR-Fernbedienungen wird LIRC verwendet. Die nötigen Kernel-Module sowie das nötige LIRC v0.8.2 werden freundlicherweise von [http://hilses.de/vip1710/ Hans-Werner Hilse] bereitgestellt. LIRC wurde allerdings für unsere VIP1710 neu kompiliert, damit es mit der chroot-Umgebung kompatibel ist.
== Einschränkungen ==
* die Playlist-Größe ist auf 512 Titel begrenzt, um das Ganze benutzbar zu halten.


=== Anlernen von Fernbedienungen ===
== Probleme ==

* Dank des neuen 10er Netz erreicht die Box den Clony nicht mehr ... neue 10er IP von Clony muss auf der Box eingetragen werden @ [[Benutzer:Cfr34x|Cfr34x]] kannst du das machen? Danke --[[Benutzer:Thomic|thomic]] 13:02, 12. Nov. 2010 (UTC)
Zum Lernen einer neuen Fernbedienung wird folgender Befehl ausgeführt:

irrecord -d /dev/lirc/0 output_file

Die weitere Verwendung dieses Programms ist selbsterklärend.

Sind alle Tasten aufgezeichnet, muss die erstellte Datei "output_file" nach /etc/lircd.conf kopiert werden.

=== Ausführen von Befehlen auf Knopfdruck ===

LIRC enthält das Programm irexec, das vordefinierte Befehle ausführen kann, wenn die entsprechende Taste auf der Fernbedienung gedrückt wurde. In Kombination mit mpc (Kommandozeilen-Client für MPD) ist somit MPD vollständig per IR steuerbar.

Um eine Aktion für eine Taste zu definieren, muss /etc/lircrc wie folgt befüllt werden (ein Konfigurationsblock pro Taste):

begin
prog = irexec
button = left
config = mpc prev
end
begin
prog = irexec
button = playpause
config = mpc toggle
end
# ...


== Letzte Änderungen ==
LIRC installiert und konfiguriert.


Die Highlights:

* Statt dem antiken Debian etch wird jetzt das [http://hilses.de/vip1710/ Build-System von Hans-Werner Hilse] als chroot-Umgebung eingesetzt (Vielen Dank dafür!). In dieser wurden MPD, PHP und lighttpd mit ihren Abhängigkeiten und passender Optimierung compiliert.
* Outdatet '''Ruckelfreie MP3-Wiedergabe''' dank vollständig optimiertem MPD und libmad.
* NEUNEUNEU: [https://www.youtube.com/watch?v=7UD1VCJvoDQ Mehr Power], durch ARM, jetzt mit FPU.
* Das Standard-System wird nicht mehr vollständig mitgestartet (nur noch der telnetd, halserver und ein watchdog-client, der Rest wird durch die myrc blockiert)
* Die Swap-Datei ist nicht mehr nötig (nur noch 25MB RAM nach dem Boot belegt)
* Der SSH-Server läuft jetzt außerhalb der chroot-Umgebung
* MPD ist jetzt auch per IR-Fernbedienung steuerbar.

== Systemverwaltung ==
Wenn du Änderungen am System vornehmen willst, kannst du wie folgt vorgehen:

ssh pi@music

Dann noch Root Rechte ergattern mit:

sudo -i

Die nach /mnt gemountete chroot-Umgebung kann dann durch

/mnt/chroot.sh

betreten werden. Dabei wird automatisch eine screen-Sitzung gestartet bzw. wiederhergestellt.

Softwarepakete sollten nach /root/distfiles heruntergeladen und in /root/build gebaut werden. Die compilierten Dateien sollten nach /usr/local installiert werden.

In /etc/init.d können „Init-Skripte“ erstellt werden, die "start" und "stop" als Parameter akzeptieren. Diese werden beim Start und beim „Herunterfahren“ mit den entsprechenden Parametern aufgerufen.

== Einschränkungen ==
* keine einschränkungen mehr :D

Aktuelle Version vom 17. Februar 2024, 23:06 Uhr

Tango-dialog-warning.png

Dieser Artikel oder Abschnitt ist veraltet.

Grund: Schon vor dem Umzug war diese Seite Veraltet.

Für die Musik im bytewerk sorgt ein RaspberryPi, das wiederum an die VIP1710 einen netcat Stream sendet (Audio in Roh-Daten). Auf dem Raspberry läuft ein Music Player Daemon.

Die VIP1710 ist zurzeit analog an die Anlage angeschlossen (hier muss als Quelle "Video1" gewählt werden).

Der MPD ermöglicht es allen Anwesenden, die Playlist zu verwalten.

Zugang zum MPD

Das RaspberryPi ist derzeit unter der IP 10.42.0.3 bzw. dem Hostnamen „music“ zu erreichen.

Man hat folgende Möglichkeiten, den MPD zu verwalten:

  • Client auf dem eigenen Rechner (bevorzugte Methode, da geringste Belastung des RaspberryPi). Auf der MPD-Projektseite gibt es eine Client-Übersicht.
  • Webinterface (interner Link): Es stehen diverse Clients zur Verfügung.
  • IRC: Einfache Steuerungsaufgaben (Start/Stop/Statusabfrage) können über PRIVMSGs an den IRC-Bot ausgeführt werden. Für weitere Infos einfach den Bot um Hilfe fragen.

Statusanzeige

Die grafische Ausgabe ist zurzeit nicht aktiviert, weil kein geeignetes Display vorhanden ist

Statusanzeige des MPD

Der aktuelle Status des MPD wird über eine Statusseite auf dem TV-Ausgang angezeigt. Hierfür wurde einfach die Startseite der Box auf den lokalen Webserver umgebogen.

Die Statusseite wird alle 10 Sekunden neu geladen (bei großen Playlists kanns auch mal ein bisschen länger dauern). Die Titelliste unter dem Fortschrittsbalken zeigt die nächsten Einträge in der Playlist.

IR-Fernbedienung

Für die Unterstützung von IR-Fernbedienungen wird LIRC verwendet. Die nötigen Kernel-Module sowie das nötige LIRC v0.8.2 werden freundlicherweise von Hans-Werner Hilse bereitgestellt. LIRC wurde allerdings für unsere VIP1710 neu kompiliert, damit es mit der chroot-Umgebung kompatibel ist.

Anlernen von Fernbedienungen

Zum Lernen einer neuen Fernbedienung wird folgender Befehl ausgeführt:

irrecord -d /dev/lirc/0 output_file

Die weitere Verwendung dieses Programms ist selbsterklärend.

Sind alle Tasten aufgezeichnet, muss die erstellte Datei "output_file" nach /etc/lircd.conf kopiert werden.

Ausführen von Befehlen auf Knopfdruck

LIRC enthält das Programm irexec, das vordefinierte Befehle ausführen kann, wenn die entsprechende Taste auf der Fernbedienung gedrückt wurde. In Kombination mit mpc (Kommandozeilen-Client für MPD) ist somit MPD vollständig per IR steuerbar.

Um eine Aktion für eine Taste zu definieren, muss /etc/lircrc wie folgt befüllt werden (ein Konfigurationsblock pro Taste):

begin
        prog = irexec
        button = left
        config = mpc prev
end
begin
        prog = irexec
        button = playpause
        config = mpc toggle
end
# ...


Letzte Änderungen

LIRC installiert und konfiguriert.


Die Highlights:

  • Statt dem antiken Debian etch wird jetzt das Build-System von Hans-Werner Hilse als chroot-Umgebung eingesetzt (Vielen Dank dafür!). In dieser wurden MPD, PHP und lighttpd mit ihren Abhängigkeiten und passender Optimierung compiliert.
  • Outdatet Ruckelfreie MP3-Wiedergabe dank vollständig optimiertem MPD und libmad.
  • NEUNEUNEU: Mehr Power, durch ARM, jetzt mit FPU.
  • Das Standard-System wird nicht mehr vollständig mitgestartet (nur noch der telnetd, halserver und ein watchdog-client, der Rest wird durch die myrc blockiert)
  • Die Swap-Datei ist nicht mehr nötig (nur noch 25MB RAM nach dem Boot belegt)
  • Der SSH-Server läuft jetzt außerhalb der chroot-Umgebung
  • MPD ist jetzt auch per IR-Fernbedienung steuerbar.

Systemverwaltung

Wenn du Änderungen am System vornehmen willst, kannst du wie folgt vorgehen:

ssh pi@music 

Dann noch Root Rechte ergattern mit:

sudo -i

Die nach /mnt gemountete chroot-Umgebung kann dann durch

/mnt/chroot.sh

betreten werden. Dabei wird automatisch eine screen-Sitzung gestartet bzw. wiederhergestellt.

Softwarepakete sollten nach /root/distfiles heruntergeladen und in /root/build gebaut werden. Die compilierten Dateien sollten nach /usr/local installiert werden.

In /etc/init.d können „Init-Skripte“ erstellt werden, die "start" und "stop" als Parameter akzeptieren. Diese werden beim Start und beim „Herunterfahren“ mit den entsprechenden Parametern aufgerufen.

Einschränkungen

  • keine einschränkungen mehr :D