RADIO und MP3-Ansagen!!!
Music Player Client installieren:
1; apt-get install mpd mpc alsa utils ---à wird für Internetradio benötigt
mp3 Codec installieren:
2; sudo apt-get install mpg321 lame ---à wird für durchsagen vom Raspberry benötigt!
Radiosender hinzufügen:
3; mpc add http://mp3stream7.apasf.apa.at:8000/;stream.nsv (nur ein Beispiel)
mpc add andere Stream URL
mpc add andere Stream URL
mpc add andere Stream URL
4; mpc save my_radios
Oder ihr legt eine Playlist unter /var/lib/mbp/playlist eine Liste mit dem Namen Sender.m3u an!
5; mpc load sender (ladet eure erstellte playlist)
6; mpc playlist (zeigt die Playlist an)
7; mpc clear (löscht ihr die Playlist) ---à diesen Befehl müsst ihr ausführen wenn ihr ein Sender update macht!
Und dann wieder mit mpd load sender
8; mpc play 1 spielt den ersten Eintrag der Playlist ab
mpc play 2 spielt den zweiten Eintrag der Playlist ab
9; mpc stop (stoppt die Wiedergabe)
10; mpg321 /home/pi/Musik/Song???XXX.mp3 (spielt eine mp3 ab, Durchsagen zum Beispiel)
Mein Script macht dann nichts Anderes als bei dem Empfang spezieller IP-UDP-Telegramme die Befehle von oben auszuführen
11; Hier das Python-Script:
Dieses Script muss einfach gestartet werden, oder ihr legt es im rc.local ab, und nicht vergessen zum Schluss der Befehlszeile &
exit einzutragen!!!
!/usr/bin/python
import socket
import os
import subprocess
UDP_IP = "xxx.xxx.xxx.xxx" # IP-Adresse des Pi
UDP_PORT = xxxxx # UDP Port der abgehört werden soll
sock = socket.socket (socket.AF_INET,socket.SOCK_DGRAM) # UDP
sock.bind((UDP_IP,UDP_PORT))
while True:
data, addr = sock.recvfrom( 1024 ) # buffer size is 1024 bytes
if data == "stop" :
subprocess.Popen(["mpc", "stop"])
if data == "Hit-Radio" :
subprocess.Popen(["mpc", "play", "1"])
if data == "Antenne" :
subprocess.Popen(["mpc", "play", "2"])
if data == "Radio-STMK" :
subprocess.Popen(["mpc", "play", "3"])
if data == "Kronehit" :
subprocess.Popen(["mpc", "play", "4"])
if data.startswith("/home/pi/Audio/Durchsagen/") :
subprocess.Popen(["mpg321", data])
mpc und mpg321 müssen installiert sein!
Nochmal die Befehle für den Raspberry!:
sudo apt-get install mpd mpc alsa utils
sudo apt-get install mpg321 lame
Für das Internetradio habe ich eine Playlist angelegt mit den Radio Streams.
Sende ich z.B. des Telegramm "Kronehit" zum Pi wird Playlisteintrag Nr. 4 gespielt. "Stop" beendet die Wiedergabe.
Für Sprachdurchsagen sende ich den kompletten Pfad (/home/pi/Audio/Durchsagen/Datei.mp3) der mp3 zum Pi. Existiert diese Datei auf dem Pi, wird sie wiedergegeben.
Radio und Sprachdurchsagen laufen gleichzeitig und relativ unabhängig voneinander.
Mit "mpc", "volume", "90" und "mpc", "volume", "100" könnte man auch noch die Lautstärke verändern.
12; In /etc/initd/mpd ändert ihr dann das Script auf „SO AB“
#!/bin/sh
### BEGIN INIT INFO
# Provides: mpd
Required-Start: $local_fs $remote_fs
Required-Stop: $local_fs $remote_fs
Should-Start: autofs $network $named alsa-utils pulseaudio
Should-Stop: autofs $network $named alsa-utils pulseaudio
Default-Start: 2 3 4 5
Default-Stop: 0 1 6
# Short-Description: Music Player Daemon
# Description: Start the Music Player Daemon (MPD) service
# for network access to the local audio queue.
### END INIT INFO
13; Jetzt könnt ihr einfach kleine Aktiv Lautsprecher oder ihr schließt euren Raspberry an Eure Dolby oder dergleichen an!!
WEBRADIO – RaspberryPI!
Nur RADIO!!!
Für diejenigen die das Image von Toni installiert haben, dort funktioniert es ab hier ganz normal, das heißt, ihr könnt RADIO hören und zusätzlich könnt ihr Speech-OUT oder Voice-OUT nutzen!!!
WEBRADIO – Webseite!
Ihr müsst
Music Player Client installieren:
1; apt-get install mpd mpc alsa utils ---à wird für Internetradio benötigt
Ihr legt einfach unter /var/www/ einen Ordner mit dem Namen Webradio an! Dieser beinhaltet dann z.B. Die Logos für die Sender die ihr wollt, und die kleinen PHP Scripte!
Die Logos und Buttons bitte mit z.B. „???.png“ ablegen und die Größen anpassen
*pro Sender ein Logo
*für leiser, lauter und stop
diese Buttons findet ihr z.B. unter „www.iconfinder.com/iconsets/ie_Glossy_button“
WEBRADIO – Webseite!
2; Zur Steuerung Eures Radios könnt ihr auch noch eine kleine PHP Seite bauen!
Dort macht ihr dann das Index.html mit dem Inhalt z.B:
<html> <head> <title>LOXONE Webradio</title> </head> <body> <center> <a href="oe3.php"><img src="logo-oe3.png"></a> <br><br> <a href="antenne.php"><img src="logo-antenne.png"></a> <br><br> <a href="radio_stmk.php"><img src="logo-radio_stmk.png"></a> <br><br> <a href="kronehit.php"><img src="logo-kronehit.png"></a> <br><br><br> <a href="leiser.php"><img src="leiser.png"></a> <a href="stop.php"><img src="stop.png"></a> <a href="lauter.php"><img src="lauter.png"></a> </center> </body></html>
....aufrufen könnt ihr dann die Seite mit
„www.eure Raspberryip/Webradio/index.html“
3; Dann legt ihr für jeden Sender ein PHP an, z.B. mit den Namen „oe3.php“ an
<?php
system ( "mpc play 1");
header("Location:index.html");
?>
„mpc play 1“ deswegen weil es mein Erster Sender in der Playlist ist!
4;Dann legt ihr für jeden Sender ein PHP an, z.B. mit den Namen „leiser.php“ an
<?php
system ( "mpc volume -5");
header("Location:index.html");
?>
5;Dann legt ihr für jeden Sender ein PHP an, z.B. mit den Namen „lauter.php“ an
<?php
system ( "mpc volume +5");
header("Location:index.html");
?>
6;Dann legt ihr für jeden Sender ein PHP an, z.b mit den Namem „stop.php“ an
<?php
system ( "mpc stop");
header("Location:index.html");
?>
Das wars am Raspberry!
Ihr könnt das ganze auch noch in die Loxone einbinden!
Ihr legt einen virtuellen Ausgang an mit der Zieladdresse z.B. 192.168.1.1:80, „HACKEN“ Verbindung nach senden schließen und kein Trennzeichen!
Dann legt ihr für leiser-start-stop und jeden Sender einen virtuellen Ausgangs Befehl an!
Mit dem Inhalt z.B.: /Webradio/leiser.php an!
Damit könnt ihr dann mit Virtulelle oder auch Digitale Eingänge über Euer Loxone-System auch das Radio fernbedienen!
Güße aus der grünen Steiermark.....
Und viel Spass damit....
M.Maurer
PS: Für Ideen und Verbesserungsvorschläge bin ich offen!
Vorallem was meine WEBSEITE betrifft! Da bin ich nicht so ganz FIT!!!
Kommentar