Nur noch von 20:00 bis 6:00
Nahmd,
auf Grund der Neuerungen im JMStV werde ich eine Sendezeit für Verbindungen aus Deutschland einführen.
Neue xmlrpc.js Version
Nahmd,
hier gibt es die neue Version von xmlrpc.js. Dank einem Hinweis von Stephan Tetzel, konnte ich einen Bug entfernen.
Außerdem werden folgende Bibliotheken benötigt:
Navit auf dem Pre
Nahmd,
endlich ist es so weit. Der nächste Urlaub kann kommen. Wie man dem Precentral Forum entnehmen kann, portieren gerade mehrere Leute das Program Navit auf den Pre. Nachzulesen im Precentral Forum.
debian.r4w.de (updated)
Nahmd,
mal wieder neue Pakete
- libzmq0_2.0~beta2-1_amd64.deb
- libzmq-dbg_2.0~beta2-1_amd64.deb
- libzmq-dev_2.0~beta2-1_amd64.deb
- zeromq-utils_2.0~beta2-1_amd64.deb
- libzmq0_2.0~beta2-1_i386.deb
- libzmq-dbg_2.0~beta2-1_i386.deb
- libzmq-dev_2.0~beta2-1_i386.deb
- zeromq-utils_2.0~beta2-1_i386.deb
WMA stream zu OGG stream konvertieren
Nahmd,
ich brauchte eine Lösung um einen WMA stream "on the fly" zu einem OGG-Stream zu machen.
Das Skript in einen Pfad für ausführbare Programme legen, das Php Skript in den Webserver packen und den Mount in die Icecast2 Konfiguration hinzufügen. Die einzelnen Pfade müssen vieleicht angepasst werden.
Leider kann momentan nur ein Internerradio diesen Stream anhören. Eigentlich können es beliebig viele, aber leider beendet der 1., welcher den Stream nicht mehr empfängt, das Umwandeln
Benötigt wird folgendes:
- mplayer
- icecast2
- oggenc
- oggfwd
- php
Das Skript zum konvertieren
-
#!/bin/sh
-
-
export PATH=$PATH:/usr/local/bin
-
-
STREAM="mms://your.radio.fm/stream.wma"
-
-
set -e
-
-
CLIENT=0
-
if [ "$2" != "" ]; then
-
CLIENT=$2
-
fi
-
-
if [ "$3" != "" ]
-
then
-
STREAM=$3
-
fi
-
-
MD5=$(echo $STREAM | md5sum | cut -d' ' -f1)
-
-
TEMP=/tmp/chumbybridge/$MD5
-
-
[ -d $TEMP ] || mkdir -p $TEMP
-
-
FIFO_MPLAYER=$TEMP/mplayer.fifo
-
# FIFO_OGGENC=$TEMP/oggenc.fifo
-
-
LOG_MPLAYER=$TEMP/mplayer.log
-
LOG_OGGENC=$TEMP/oggenc.log
-
LOG_OGGFWD=$TEMP/oggfwd.log
-
-
PID_MPLAYER=$TEMP/mplayer.pid
-
PID_OGGFWD=$TEMP/oggfwd.pid
-
-
if [ "$1" = "start" ]
-
then
-
echo "connected $CLIENT" >> $LOG_MPLAYER
-
-
[ -e $FIFO_MPLAYER ] && echo "Run $0 stop first!" && exit
-
mkfifo $FIFO_MPLAYER || exit 1
-
-
mplayer $STREAM -nocache -quiet -ao pcm:file="$FIFO_MPLAYER" >> $LOG_MPLAYER 2>&1 < /dev/null &
-
echo $! > $PID_MPLAYER
-
-
sleep 0.3
-
-
oggenc -Q -q 1 $FIFO_MPLAYER -o - 2>> $LOG_OGGENC | oggfwd localhost 8000 hackme /radio1.ogg >> $LOG_OGGFWD 2>&1 &
-
echo $! > $PID_OGGFWD
-
-
sleep 0.2
-
-
elif [ "$1" = "stop" ]
-
then
-
echo ">>> Stopping chumstream player <<<"
-
kill $(cat $PID_MPLAYER) 2> /dev/null && \
-
kill $(cat $PID_OGGFWD) 2> /dev/null && \
-
rm -rf $TEMP || \
-
echo "Cannot stop all processes, please look into $TEMP and fix it manually"
-
else
-
echo "Usage:"
-
echo "$0 start [CLIENT_ID] [URL]"
-
echo "$0 stop"
-
fi
Die icecast Konfiguration
-
<mount>
-
<mount-name>/radio.ogg</mount-name>
-
<max-listeners>10</max-listeners>
-
<burst-size>65536</burst-size>
-
<hidden>0</hidden>
-
<authentication type="url">
-
<option name="mount_add" value="http://localhost/radio.php"/>
-
<option name="mount_remove" value="http://localhost/radio.php"/>
-
<option name="listener_add" value="http://localhost/radio.php"/>
-
<option name="listener_remove" value="http://localhost/radio.php"/>
-
</authentication>
-
</mount>
Der Php Start/Stop Teil
-
<?php
-
if ( $_POST["action"] == 'listener_add' ) {
-
} else if ( $_POST["action"] == 'listener_remove' ) {
-
}
-
?>
debian.r4w.de (updated)
Nahmd,
mal wieder neue Pakete
- libming1_0.4.3-1_amd64.deb
- libming-dev_0.4.3-1_amd64.deb
- libming-util_0.4.3-1_amd64.deb
- php5-ming_0.4.3-1_amd64.deb
- python-ming_0.4.3-1_amd64.deb
- libming1_0.4.3-1_i386.deb
- libming-dev_0.4.3-1_i386.deb
- libming-util_0.4.3-1_i386.deb
- php5-ming_0.4.3-1_i386.deb
- python-ming_0.4.3-1_i386.deb
- ming-fonts-dejavu_0.4.3-1_all.deb
- ming-fonts-opensymbol_0.4.3-1_all.deb
debian.r4w.de (updated)
Nahmd,
neue Pakete:
- python-yaml_3.09-1_i386.deb
- python-yaml-dbg_3.09-1_i386.deb
- libyaml-dev_0.1.3-1_i386.deb
- libyaml-0-2_0.1.3-1_i386.deb
Neue Versionen von PyYAML eingebunden.
