Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: VDR Portal. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Sonntag, 4. Juli 2004, 15:01

Shoutcast MP3 Playlisten download über ein Script

Hallo liebe InternetRadio Liebhaber,

nach langer erfolgloser Suche im Forum habe ich mich einmal hingesetzt und ein Script *zusammengeklöppelt* um automatisch Playlisten für Shoutcaststationen zu erzeugen.
Wie allerdings jeder mit ein wenig Programmiererfahrung sehen kann, ist das wirklich mit dem Holzhammer programmmiert.
Schön wäre es, wenn sich ein *echter* Programmierer mal dessen annehmen kann, um es ein wenig zu "verbessern".
Grundsätzlich tut es zwar das was es soll, aber elegant ist es nicht!!!

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh
#
# this script will download the top 100 Stations from [URL]www.shoutcast.com[/URL] matching the genre 'Metal'
#

declare -a array1
declare -a array2
lynx -dump 'http://yp.shoutcast.com/?sgenre=metal?numresult=100' | awk '/http.*pls/ {print $2}' > /tmp/pl
lynx -dump 'http://yp.shoutcast.com/index.phtml?startat=25' | awk '/http.*pls/ {print $2}' >> /tmp/pl
lynx -dump 'http://yp.shoutcast.com/index.phtml?startat=50' | awk '/http.*pls/ {print $2}' >> /tmp/pl
lynx -dump 'http://yp.shoutcast.com/index.phtml?startat=75' | awk '/http.*pls/ {print $2}' >> /tmp/pl
wget -q -i /tmp/pl -P /tmp
for i in /tmp/shoutc*
do
        cat $i | awk '/Title/ {print $4$5"_"substr($1,10,10)}' > /tmp/Filename
        cat $i | awk '/File/ {print substr($1,7,99)}' > /tmp/Inhalt
        linecount=$(wc -l < /tmp/Filename)
        array1=(`cat /tmp/Filename`)
        array2=(`cat /tmp/Inhalt`)
        for ((l=0 ; l<linecount ; l++))
        do
                echo Filename:${array1[$l]}
                echo ${array2[$l]} > /etc/vdr/Network-Streams/${array1[$l]}.pls
        done
done
rm /tmp/Filename
rm /tmp/Inhalt
rm /tmp/shoutc*
rm /tmp/pl


Ich rufe dieses Script dann bei Bedarf über eine entsprechende commands.conf auf.

Gruß,
Thilo
__________________________________________________________________________
Software: c't VDR & Tobi's Multipatch 1.2.6-22, kernel 2.4.24-ctvdr-2
Hardware: Asus Pundit schwarz, Celeron 2.4 GHz, 512MB, Hauppauge Nexus 2.2, 160GB Samsung, LG-DVD Brenner
Patches/Addons: elchiaio4d, autopid, ac3overdvb, noad, nvram-wakeup, vdrconvert
Plugins: calendar, remote, mplayer/mp3, timeline, femon, screenshot, vdradmin

Tobias

Erleuchteter

Beiträge: 3 102

Wohnort: Magdeburg/Wolfsburg

Beruf: Dipl.-Wirtsch.Inf, Spez. Data-Warehousing - Business Intelligence

  • Nachricht senden

2

Sonntag, 4. Juli 2004, 20:33

ich habe es mal ein bissl für meine Bedürfnisse verändert.
Jetzt kann explizit ein Stream angegeben werden (der klick auf den "Tune"-Button)
Bei dem original war mir zuviel Stuff mit bei ...

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/sh
#
# this script will download the top 100 Stations from [URL]www.shoutcast.com[/URL] matching the genre 'Metal'
#

declare -a array1
declare -a array2

outputdir=/tmp/Network-Streams
tmpdir=/tmp

# chilling Vocals
array1[0]='Chilling_Vocals'
wget -q http://yp.shoutcast.com/sbin/shoutcast-playlist.pls?rn=6807 -P $tmpdir
array1[1]='Vocal_Trance'
wget -q http://yp.shoutcast.com/sbin/shoutcast-playlist.pls?rn=5180 -P $tmpdir


test -e $outputdir || mkdir $outputdir
z=0
for i in $tmpdir/shoutc*
do
        cat $i | awk '/File/ {print substr($1,7,99)}' > $tmpdir/Inhalt
        linecount=$(wc -l < $tmpdir/Inhalt)
        array2=(`cat $tmpdir/Inhalt`)
        rm $outputdir/${array1[$z]}*
        for ((l=0 ; l<linecount ; l++))
        do
                echo Filename:${array1[$z]}
                echo $z
                echo ${array2[$l]} > $outputdir/${array1[$z]}_$l.pls
        done
        echo "TEST"
        let z=z+1
done

rm $tmpdir/Inhalt
rm $tmpdir/shoutc*
:vdr1 Homepage:fans
VDR II: YeongYang A106, Fusi D1522, Celeron 2GHz, Frontend per DVB-s FF, 2xDVB-c, ATRIC-IR, YaVDR 0.3a
VDR III HDTV: Inter-Tech 2008V mit iMonLCD, Atric, ASRock Extreme3 770 AM3, AMD Sempron 140 1x 2.70GHz AM3, 1,5TB WD15EADS, 2TB WD20EARS, 2x4GB DDR3-1600, NVidia GT520 passiv, 3x DVB-c, YaVDR 0.5 @ Samsung PS-50B550

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Tobias« (4. Juli 2004, 20:34)


Beiträge: 2 805

Wohnort: Landkreis Dahme-Spreewald (LDS)

  • Nachricht senden

3

Sonntag, 4. Juli 2004, 21:13

:gap

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »ronnykornexl« (27. Oktober 2005, 11:26)


4

Sonntag, 4. Juli 2004, 22:27

@Ronny

Grundsätzlich gefällt mir das scgen script ganz gut, allerdings finde ich es schade, dass jeweis nur eine Playlist-Datei pro Sender erzeugt wird.
Leider habe ich bei einigen Sendern herausgefunden, daß "nach Murphy" genau der Stream den man dann extrahiert, gerade voll ist oder nicht mehr existiert.
Aus diesem Grunde erzeuge ich ja pro Sender soviele Dateien, wie es streamende IP-Adressen gibt.

Übrigens habe ich immer wieder seltsame Effekte. Kann es sein, das es bei Shoutcast irgendwelche "Downloadlimits" gibt???

Gruss,
Thilo
__________________________________________________________________________
Software: c't VDR & Tobi's Multipatch 1.2.6-22, kernel 2.4.24-ctvdr-2
Hardware: Asus Pundit schwarz, Celeron 2.4 GHz, 512MB, Hauppauge Nexus 2.2, 160GB Samsung, LG-DVD Brenner
Patches/Addons: elchiaio4d, autopid, ac3overdvb, noad, nvram-wakeup, vdrconvert
Plugins: calendar, remote, mplayer/mp3, timeline, femon, screenshot, vdradmin

Tobias

Erleuchteter

Beiträge: 3 102

Wohnort: Magdeburg/Wolfsburg

Beruf: Dipl.-Wirtsch.Inf, Spez. Data-Warehousing - Business Intelligence

  • Nachricht senden

5

Sonntag, 4. Juli 2004, 23:05

Zitat

Original von shadowsneeker
Übrigens habe ich immer wieder seltsame Effekte. Kann es sein, das es bei Shoutcast irgendwelche "Downloadlimits" gibt???

hatte ich vorhin auch .... da hatte zuviel Listen parallel heruntergeladen ....
:vdr1 Homepage:fans
VDR II: YeongYang A106, Fusi D1522, Celeron 2GHz, Frontend per DVB-s FF, 2xDVB-c, ATRIC-IR, YaVDR 0.3a
VDR III HDTV: Inter-Tech 2008V mit iMonLCD, Atric, ASRock Extreme3 770 AM3, AMD Sempron 140 1x 2.70GHz AM3, 1,5TB WD15EADS, 2TB WD20EARS, 2x4GB DDR3-1600, NVidia GT520 passiv, 3x DVB-c, YaVDR 0.5 @ Samsung PS-50B550

6

Freitag, 9. Juli 2004, 22:14

RE: Shoutcast MP3 Playlisten download über ein Script

Zitat

Original von shadowsneeker
Hallo liebe InternetRadio Liebhaber,

nach langer erfolgloser Suche im Forum habe ich mich einmal hingesetzt und ein Script *zusammengeklöppelt* um automatisch Playlisten für Shoutcaststationen zu erzeugen.
Wie allerdings jeder mit ein wenig Programmiererfahrung sehen kann, ist das wirklich mit dem Holzhammer programmmiert.
Schön wäre es, wenn sich ein *echter* Programmierer mal dessen annehmen kann, um es ein wenig zu "verbessern".
Grundsätzlich tut es zwar das was es soll, aber elegant ist es nicht!!!

...
Thilo



Aloso irgendwie funktioniert dein Script bei mir nicht :(

er erzeugt zwar im tmp Verzeichnis während der Laufzeit, die pls Dateien, usw. aber im endeffekt wird ans Ziel (bei mit /webradio/) nichts geschrieben, das Script gibt auch keinen fehler aus :(
TV VDR: GigaByte 965DS3, Intel C2D 2,4GHz, 1GB RAM, HD Ext, 2x TT PCI S-3200 DVB-S2, ATI Radeon HD2600, VDR 1.6.0-HDTV, Gentoo 2007.1, Kernel 2.6.24
TV VDR: AOpen 945 GTM-VHL, Intel C2D-M 1,83GHz, 2GB RAM, HD Ext, 1x TT PCI S-3200 DVB-S2, Intel GMA950, VDR 1.6.0-HDTV, Gentoo 2007.1, Kernel 2.6.24
VDR Server: Supermicro 370DE6, 2x Intel P3 866 MHz, 2GB RAM, TT-DVB-s Rev. 1.3, TT S1100 budget, KNC1 budget, TT S1401, 2x 500GB WD HDs, 1x 9GB U160 SCSI

Beiträge: 2 805

Wohnort: Landkreis Dahme-Spreewald (LDS)

  • Nachricht senden

7

Freitag, 3. September 2004, 22:31

RE: Shoutcast MP3 Playlisten download über ein Script

:gap

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »ronnykornexl« (27. Oktober 2005, 11:26)


8

Dienstag, 4. Januar 2005, 09:15

Tschau zämme!

Hab mal ein bisschen an scgen rumgebastelt und möchte Euch das nicht vorenthalten.
Muss Euch allerdings warnen, ich bin ein blutiger Anfänger in dieser Beziehnung.
Bei mir tut es aber seinen Dienst und auch Filenamen sehen nicht allzu schlecht aus.
Da es jetzt keine .sc files mehr generiert hab ich es auch gleich umgetauft in shoutcast2vdr.

Aufruf muss mit 2 Parametern erfolgen
1.) Dem Genre z.B. Trance, Metal, Pop, Rap, Techno etc. (alles was shoutcast zu bieten hat eben..)
2.) Der Anzahl der Stream-Adressen die für dieses Genre gesaugt werden sollen

Es generiert nicht nur die .pls files sondern auch ein passendes .m3u dazu.
Leider liest es aber bisher immernoch nur einen Stream pro Sender ein.
Wenn ich mal weiss wie, werd ichs diesbezüglich noch verbessern.
Wenn jemand Lust hat, kann er es auch gerne machen.
Bin für Kritik/Anregungen/Tips dankbar.

einen Schönen Tag noch
Unimatrix0
»Unimatrix0« hat folgende Datei angehängt:
Software: Ubuntu 10.04 - VDR 1.7.14 + Xineliboutput (VDPAU) + XBMC
Hardware: NEXUS-S - SkyStar2 - Nova-S2 - Nividia 8600GT

Beiträge: 2 805

Wohnort: Landkreis Dahme-Spreewald (LDS)

  • Nachricht senden

9

Dienstag, 4. Januar 2005, 16:35

:gap

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »ronnykornexl« (27. Oktober 2005, 11:26)


10

Dienstag, 4. Januar 2005, 17:50

Habe noch max. Bitrate hinzugefügt:

Quellcode

1
2
3
# Maximale Bitrate
# Wenn Bitrate egal ist leer lassen!
maxbitrate=
Und geänderte Adresse zum holen:

Quellcode

1
2
3
# Die html-page saugen
wget -O $tempdir/index.html "http://yp.shoutcast.com/directory/index.phtml?sgenre=$genre?&numresult=$anzahl&orderby=$sortierung&maxbitrate=$maxbitrate"
grep \.pls $tempdir/index.html | awk '!match($5,"Lucky") {print $5}' | sed 's/href="/shoutcast.com/g' | sed 's/"><img//g'>$tempdir/streamlist
2003 - 2011 - R.I.P.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »wilderigel« (4. Januar 2005, 17:52)


Beiträge: 743

Wohnort: Gersdorf

Beruf: == Interessen

  • Nachricht senden

11

Sonntag, 20. März 2005, 10:33

zum Script

@wilderigel

hi, kannst Du uns mal Nachhilfe in der Umsetzten des Download über Windoof zum LinVDR - Script geben
easyVDR2.2.0-64bit-stable
es ist traurig, wenn alles für die Katz ist, aber nicht's für die Katze

12

Sonntag, 20. März 2005, 12:52

RE: zum Script

Um was geht es?
Script ist für Linux geschrieben.

Also entweder unter LinVDR ausführen, oder cygwin für Windows installieren :]
2003 - 2011 - R.I.P.

13

Sonntag, 20. März 2005, 13:03

@wilderigel
Ich glaube er meinte, wie man es von Windows aus auf LinVDr installiert. Ich habe drum heute morgen eine ähnliche Frage per Mail erhalten.

@all
Hier ist eine etwas überarbeitete Version 0.0.8, mit ner kleinen README, ich hoffe es ist verständlich genug, sonst fragt einfach.

Jetzt werden, wenn mehr als ein Stream pro Radiosender vorhanden sind, für jeden einzelnen ein eigener Playlisteintrag (-1, -2, -3 etc) erstellt.

Beispiele für die commands.conf sind im Readme ebenfalls enthalten.

Wichtig! Die Variabeln müssen vor dem ersten run angepasst werden!

Hoffe es funzt
Gruss
Unimatrix0
»Unimatrix0« hat folgende Datei angehängt:
Software: Ubuntu 10.04 - VDR 1.7.14 + Xineliboutput (VDPAU) + XBMC
Hardware: NEXUS-S - SkyStar2 - Nova-S2 - Nividia 8600GT

14

Sonntag, 20. März 2005, 13:11

Wer a bisserl Ahnung von Python hat , der kann auch das
Shoutcast-Addon von Freevo als VDR-Plugin umsetzen , welches
schon laengere Zeit ohne Probleme funzt.

http://matt.schick.homelinux.com/archive…projects/python

bye

Beiträge: 743

Wohnort: Gersdorf

Beruf: == Interessen

  • Nachricht senden

15

Sonntag, 20. März 2005, 13:27

danke danke danke

Danke für Eure Hilfen
werde es abend mal durchprobieren, jetzt ist so ein schönes Wetter, dass man sich einen Sonnenbrand holen kann

@Morone & MT
frag mal MT ob er das Shoutcast-Addon von Freevo nicht gleich in seine Patches mit integriert
easyVDR2.2.0-64bit-stable
es ist traurig, wenn alles für die Katz ist, aber nicht's für die Katze

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »riverphoenix« (20. März 2005, 13:32)


16

Sonntag, 20. März 2005, 13:52

Ich fänds auch cool, wenn sich ein Profi mal der Sache annehmen könnte. Das obige ist nur eine Notlösung. Die filenamen sind noch immer nicht perfekt und leider erwischt das Script auch nicht ganz alle Streams (nur ca. 70%).

OT: Hier scheint die Sonne nicht, bzw. die Wolken sind im Weg :(
Software: Ubuntu 10.04 - VDR 1.7.14 + Xineliboutput (VDPAU) + XBMC
Hardware: NEXUS-S - SkyStar2 - Nova-S2 - Nividia 8600GT

17

Sonntag, 20. März 2005, 19:10

Zitat

frag mal MT ob er das Shoutcast-Addon von Freevo nicht gleich in seine Patches mit integriert


Frag' ihn doch selber :P

Beiträge: 743

Wohnort: Gersdorf

Beruf: == Interessen

  • Nachricht senden

18

Sonntag, 20. März 2005, 19:56

@ Unimatrix0

Hi und erst mal danke für Deine mail und den Download

für alle, die's nachmachen, ich hoff ich vergess nicht's (Anregung für den Download)
- in Windoof mit Winrar entpackt und das gabze Verzeichnis "Shoutcast2vdr_0.0.8" nach export mit Samba transferiert
- in LinVDR auf Console 1 eingelogt und nach Anweisung die Dateine mit MC verteilt
- die fehlenden Verzeichnisse Network-Stream und tempdir mit Mkdir erzeugt.
- Den Link auf shoutcast2vdr-0.0.8 mit MC in /etc/vdr/shoutcast2vdr gelegt, war mir angenehmer
- Mit dem command.com klappte es noch nicht so richtig. habe mal ./etc/vdr/shoutcast2vdr Country 2 eingegeben und es ging los

Nachbemerkungen:
- Ein *.tar erzeugen das die Dateien, Links und fehlenden Verzeichnisse gleich an die richtige Stelle bringt.
- die Eintragungen mit ins /pub/export/"typ" statt nach Network-Stream
- tempdir solle nicht mit sichtbar sein
- eine minbitrate einbauen

:streichel
Sonst großes Lob an wilderigel und Unimatrix0 für die Anleitungen und den Script. Kann entlich mal Country hören, mei Katerchen iist auch schon seelig
easyVDR2.2.0-64bit-stable
es ist traurig, wenn alles für die Katz ist, aber nicht's für die Katze

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »riverphoenix« (20. März 2005, 19:58)


19

Sonntag, 20. März 2005, 20:04

RE: @ Unimatrix0

- Entpacken geht auch mit mc
- Verzeichnisse brauchst du nur in shoutcast2vdr-0.0.8 entsprechend anpassen.
- Tempdir nach /tmp/ ändern, und es ist nicht mehr sichtbar.
- minibitrate wird von shoutcast Server nicht unterstützt - dürfte schwierig werden.
- command.com gehört zu Dos :D nicht zu Linvdr /etc/vdr/commands.conf wäre die richtig Datei
2003 - 2011 - R.I.P.

Beiträge: 743

Wohnort: Gersdorf

Beruf: == Interessen

  • Nachricht senden

20

Sonntag, 20. März 2005, 20:17

berichtig : es war die command.conf
habe es mit den neuen Einträgen noch nicht so richtig geschnallt, werde es sicher aber noch packen
easyVDR2.2.0-64bit-stable
es ist traurig, wenn alles für die Katz ist, aber nicht's für die Katze

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »riverphoenix« (20. März 2005, 20:17)


Immortal Romance Spielautomat