Streamen mit mt-daapd-Server
K (Radio Links) |
|||
Zeile 1: | Zeile 1: | ||
− | + | Für das [[Streaming]] von VDR-Radiokanälen kann ein MT-Daapd-Server als Relay für iTunes verwendet werden. | |
{| border=0 cellpadding=2 cellspacing=0 | {| border=0 cellpadding=2 cellspacing=0 | ||
Zeile 6: | Zeile 6: | ||
===Streamen zu iTunes über mt-daapd-Server=== | ===Streamen zu iTunes über mt-daapd-Server=== | ||
− | MT-Daapd, der Linux-iTunes-Server, akzeptiert auch URLs von MPEG-Streams als Tracks. Hierzu wird für jeden Sender eine eigene Datei mit der Endung ".url" benutzt, in der sich die URL des Streams befindet (Einzelheiten auf der Entwicklerseite, s.u.). | + | MT-Daapd, der Linux-iTunes-Server, akzeptiert auch URLs von MPEG-Streams als Tracks. Hierzu wird für jeden Sender eine eigene Datei mit der Endung ".url" benutzt, in der sich die URL des Streams befindet (Einzelheiten auf der Entwicklerseite, s. u.). |
− | Die Bitrate ( | + | Die Bitrate (erster Bereich vor dem Komma) kann man weglassen. Dann sieht so eine Datei in etwa so aus: |
{{Box Datei|swr2.url| | {{Box Datei|swr2.url| | ||
<pre> | <pre> | ||
Zeile 13: | Zeile 13: | ||
</pre> | </pre> | ||
}} | }} | ||
− | Das folgende Skript erstellt automatisch aus der vorhandenen channels.conf die *.url-Dateien für den mt-daap Server - damit ist das Streamen von jedem Rechner im Netz möglich. Allerdings hat dies bisher nur mit iTunes >4 geklappt, wobei man berücksichtigen sollte, dass mt-daapd 0.2.1 noch inkompatibel zu | + | Das folgende Skript erstellt automatisch aus der vorhandenen channels.conf die *.url-Dateien für den mt-daap Server - damit ist das Streamen von jedem Rechner im Netz möglich. Allerdings hat dies bisher nur mit iTunes > 4 geklappt, wobei man berücksichtigen sollte, dass mt-daapd 0.2.1 noch inkompatibel zu iTunes 5 ist. Das wurde endgültig mit mt-daapd 0.2.3 behoben. |
{{Box Datei|build_mtdaap_radio.pl| | {{Box Datei|build_mtdaap_radio.pl| |
Version vom 18. Mai 2007, 01:03 Uhr
Für das Streaming von VDR-Radiokanälen kann ein MT-Daapd-Server als Relay für iTunes verwendet werden.
Streamen zu iTunes über mt-daapd-Server
MT-Daapd, der Linux-iTunes-Server, akzeptiert auch URLs von MPEG-Streams als Tracks. Hierzu wird für jeden Sender eine eigene Datei mit der Endung ".url" benutzt, in der sich die URL des Streams befindet (Einzelheiten auf der Entwicklerseite, s. u.). Die Bitrate (erster Bereich vor dem Komma) kann man weglassen. Dann sieht so eine Datei in etwa so aus:
Das folgende Skript erstellt automatisch aus der vorhandenen channels.conf die *.url-Dateien für den mt-daap Server - damit ist das Streamen von jedem Rechner im Netz möglich. Allerdings hat dies bisher nur mit iTunes > 4 geklappt, wobei man berücksichtigen sollte, dass mt-daapd 0.2.1 noch inkompatibel zu iTunes 5 ist. Das wurde endgültig mit mt-daapd 0.2.3 behoben.
#!/usr/bin/perl -w use strict; # ------------------------------------------------ # initial vars: configure here ! # ------------------------------------------------ my $channels="/etc/vdr/channels.conf"; my $baseurl="192.168.1.200"; my $port="3000"; my $musicbaseurl="/musik/radiochannels"; # DIRECTORY MUST ALREADY EXIST! # ------------------------------------------------ # no need to configure below (hope so...) # ------------------------------------------------ my $stationnr=0; my $shellcommand=''; my $shelloutput=''; my @radiostation=(); my @output_row=(); my $dateiname=''; $shellcommand ='cat '.$channels.' | '; $shellcommand .= 'egrep \'^[^:]*\:[^:]*\:[^:]*\:[^:]*\:[^:]*\:0.*\' |'; $shellcommand .= 'sed \'s/^\([^\;]*\)[^:]*\:\([^:]*\:[^:]*\)\:\([^:]*\)\:\([^:]*\:[^:]*\:[^:]*\:[^:]*\:[^:]*\:\)\([^:]*\)\:\([^:]*\)\:\([^:]*\)\:\(.*\)$/http:\/\ /'.$baseurl.':'.$port.'\/ES\/\3-\6-\7-\5#\1/g\' '; $shelloutput=`$shellcommand`; printf $shellcommand; if ($shelloutput) { @output_row=split ( /\n/, $shelloutput); foreach (@output_row) { $stationnr++; @radiostation=split ( /#/,$_); $dateiname=$radiostation[1]; $dateiname=~s/\ /\_/g; $dateiname=~s/[^\w]//g; open(DATEI, ">".$musicbaseurl."/".$dateiname.".url") || die "Datei nicht gefunden"; print DATEI ','.$radiostation[1].','.$radiostation[0]; close(DATEI); } }
Es muss jetzt nur noch in der mt-daapd.conf ".url" als gültige Dateierweiterung eingetragen werden und - so gewünscht - in die Smartplaylist alle DVB-Radiosender eingefügt werden (in der mt-daapd.playlist):
"Streaming Audio" { type includes "URL" }