Raspberry als Musikplayer einrichten

Aus Haus-Bus.de Home Automation System
Wechseln zu: Navigation, Suche

Dieses HowTo beschreibt, wie man den Raspberry zum Abspielen von Musik (z.b. Webradio) verwenden und per Bussystem ansteuern kann. Als Basis wird dabei der MusicPlayDaemon (MPD) und der MusicPlayerControl (MPC) installiert:

Installation
- aptitude update
- aptitude install mpd mpc alsa-utils
Wenn Dabei ein Dependencykonflikt bzw. eine Umstellungslösung vorgeschlagen wird, diese akzeptieren.

- nano /etc/mpd.conf
Zeile auskommentieren: User “mpd”
Zeile einkommentieren: #Group “nogroup” und noGroup ändern zu “audio”

die letzten vier Elemente unter „Audio-Output“ auskommentiert werden, dabei aber nicht versehentlich die abschließende Klammer ebenfalls mit einer Raute versehen:

audio_output {

       type            "alsa"
name "My ALSA Device"
device "hw:0,0" # optional
  1. format "44100:16:2" # optional
  2. mixer_device "default" # optional
  3. mixer_control "PCM" # optional
  4. mixer_index "0" # optional

}


nano /etc/modules
snd-bcm2835 ergänzen
- modprobe snd_bcm2835
- amixer cset numid=3 1
- chmod g+w /var/lib/mpd/music/ /var/lib/mpd/playlists/
- chgrp audio /var/lib/mpd/music/ /var/lib/mpd/playlists/
- chown mpd /var/lib/mpd/music
- /etc/init.d/mpd restart
- mpc update


Einträge zur Playlist hinzufügen

Den Musikdaemon mpd kann man per mpc steuern.
Z.b. kann man der Playlist einen Eintrag (1Live Radio) hinzufügen per:

mpc add http://1live.akacast.akamaistream.net/7/706/119434/v1/gnl.akacast.akamaistream.net/1live

dann die Lautstärke setzen per
mpc volume 100

dann das lied starten
mpc play 1 (1=erstes Lied auf Playlist)

Im Netz sucht man nach den Webstreamurls der gewünschten Sender. Wenn man nur m3u Links bekommt, dann sind das Playlists, die man zunächst mit einem Texteditor öffnen muss, um die dort enthaltene eigentliche Streamurl zu finden.

Beispiele:
- http://mp3channels.webradio.antenne.de/top-40
- http://wdr-1live-live.icecast.wdr.de/wdr/1live/live/mp3/128/stream.mp3
- http://sunshinelive.hoerradar.de/sunshinelive-live-mp3-hq



Musicplayer per Homeserver ansteuern
Zur Steuerung des MPC verwenden wir erneut den executor vom Raspberry.
Dort kann man z.b. einen Taster als Signal einstellen und als Action einen exec:
Player 1.JPG

mpc play 1 (spielt ersten Eintrag der Playlist ab)

Ich haben keine sinnvolle Möglichkeit gefunden, durch die Playlist zu steppen. Eigentlich klingt mpc next passend, aber dieses Kommando hört am Ende einfach auf und fängt nicht wieder bei Position 1 an, wie man es sich eigentlich wünschen würde.

Stattdessen kann man sich mit einem Trick helfen.
Wenn man z.b. 6 Einträge in seiner Playlist hat kann man folgenden exec Befehl verwenden:
mpc move 1 6;mpc play 1

Player 2.JPG

Dadurch wird bei jedem Aufruf der Eintrag an Position 1 nach hinten verschoben und der Rest rückt auf. Anschließend wird der neue Eintrag an Position 1 abgespielt.

Leider muss man dafür eben genau die Gesamtanzahl der Playlist wissen. Ein Move 1 100 funktioniert leider nicht