Tipp: EPG-gestützte Aufzeichnungen am PC

12 years ago

Ein kleines Tutorial, wie man an einem Windows-PC nur mit Bordmitteln und Freeware eine Aufnahmesteuerung per EPG basteln kann. Die Lösung setzt auf den VLC-Player und den TV-Browser:

http://www.videolan.org/vlc/

http://www.tvbrowser.org/

Für unser Projekt benötigen wir zwei selbst erstellte Dateien, ich habe diese im Ordner "c:\tools\" abgelegt. Man kann natürlich auch eine anderes Verzeichnis wählen, die Pfade müssten dann aber im Folgenden überall angepasst werden.

Die Lösung verwendet den Windows-Scheduler (Aufgabenplanung). Damit uns die Energiesteuerung des Betriebssystems keinen Strich durch die Rechnung macht, müssen wir leider etwas trickreich vorgehen. Zur Belohnung funktionieren die Aufzeichnungen dann aber selbst aus dem Ruheszustand.

1) Zunächst erstellen wir eine Vorlage für die Aufnahmen, dazu müssen wir den Scheduler aufrufen: "Systemsteuerung - System und Sicherheit - Verwaltung - Aufgabenplanung".

2) Unter "Aktionen" wählen wir nun "Aufgabe erstellen". In den verschiedenen Karteikarten müssen wir einige Daten eingeben:

Allgemein:

Name: "dummy".
Beschreibung: "Aufzeichnung eines Entertain-Multicast-Streams per VLC-Player".
Unabhängig von der Benutzeranmeldung ausführen: auswählen.
Mit höchsten Privilegien ausführen: auswählen.

Trigger:

"Neu...", dann "Einmal" auswählen und ein beliebiges Datum sehr weit in der Zukunft (z.B. 2100) setzen.

Aktionen:

"Neu...", unter Programm/Script "dummy" eingeben.

Bedingungen:

Hier sollte nur "Computer zum Ausführen der Aufgabe reaktivieren" ausgewählt sein.

Jetzt können wir den Dialog mit OK schließen.

3) Unsere Dummy-Aufgabe können wir jetzt unter "Ausgewähltes Element" exportieren, wir speichern sie unter "c:\tools\schtempl.xml". Die Aufgabe selbst können wir nun schon wieder löschen, sie wird nicht benötigt. In der Aufgabenplanung sind wir damit fertig, sie kann geschlossen werden.

4) Jetzt benötigen wir noch eine kleine Stapeldatei zum Aufruf von schtasks.exe. Dazu erstellen wir einfach eine neue Textdatei und kopieren folgenden Text hinein:

@echo off if %1==delete ( schtasks /delete /tn %2 /f exit ) schtasks /create /tn %1 /xml c:\tools\schtempl.xml /ru %2 /rp %3 schtasks /change /tn %1 /rp %3 /sd %4 /st %5 /tr %6

@echo off
if %1==delete (
schtasks /delete /tn %2 /f
exit
)
schtasks /create /tn %1 /xml c:\tools\schtempl.xml /ru %2 /rp %3
schtasks /change /tn %1 /rp %3 /sd %4 /st %5 /tr %6
@echo off
if %1==delete (
schtasks /delete /tn %2 /f
exit
)
schtasks /create /tn %1 /xml c:\tools\schtempl.xml /ru %2 /rp %3
schtasks /change /tn %1 /rp %3 /sd %4 /st %5 /tr %6


Diese Datei speichern wir unter "c:\tools\schvlc.cmd".

5) Im TV-Browser das Plugin "Aufnahmesteuerung" installieren (Extras - Plugins verwalten...).

6) Jetzt unter "Extras - Optionen - Plugins" die Aufnahmesteuerung auswählen und in die Karteikarte "Geräte" wechseln. "Gerät hinzufügen" wählen und einen Namen (z.B. "VLC-Aufnahmen") vergeben, dann OK.

7) Im neuen Dialog "Einstellungen" wählen wir "Applikation" und geben den Pfad zu unserer Stapeldatei ein: "c:\tools\schvlc.cmd".

😎 Wir wechseln zur nächsten Karteikarte und pasten unter "Parameter für Aufnahme" folgenden Text (ohne Zeilenumbrüche):

{start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)} {device_username} {device_password} {leadingZero(start_day,"2")}/{leadingZero(start_month,"2")}/{start_year} {leadingZero(start_hour,"2")}:{leadingZero(start_minute,"2")} "{variable("1")} {channel_name_external} --sout file/ts:{variable("2")}{start_year}{leadingZero(start_month, "2")}{leadingZero(start_day, "2")}_{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}_{cleanLess(title)}.ts --run-time {length_sec} vlc://quit"

{start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)} {device_username} {device_password} {leadingZero(start_day,"2")}/{leadingZero(start_month,"2")}/{start_year} {leadingZero(start_hour,"2")}:{leadingZero(start_minute,"2")} "{variable("1")} {channel_name_external} --sout file/ts:{variable("2")}{start_year}{leadingZero(start_month, "2")}{leadingZero(start_day, "2")}_{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}_{cleanLess(title)}.ts --run-time {length_sec} vlc://quit"
{start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)} {device_username} {device_password} {leadingZero(start_day,"2")}/{leadingZero(start_month,"2")}/{start_year} {leadingZero(start_hour,"2")}:{leadingZero(start_minute,"2")} "{variable("1")} {channel_name_external} --sout file/ts:{variable("2")}{start_year}{leadingZero(start_month, "2")}{leadingZero(start_day, "2")}_{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}_{cleanLess(title)}.ts --run-time {length_sec} vlc://quit"


Ins Feld "Parameter für Löschen" muss diese Zeile:

delete {start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)}

delete {start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)}
delete {start_year}{leadingZero(start_month,"2")}{leadingZero(start_day,"2")}{leadingZero(start_hour,"2")}{leadingZero(start_minute,"2")}{cleanLess(channel_name)}


9) Unter "Sender" werden jetzt die Multicast-Adressen der einzelnen Sender im Feld "Externer Name" in der Form "rtp://@239.35.10.4:10000" eingegeben. Der Grinch pflegt auf seiner Seite eine Liste:

http://grinch.itg-em.de/entertain/faq/allgemein/multicastadressliste/

10) In der Karteikarte "Variablen" werden benutzerabhängige Werte eingegeben. Wir benötigen hier als erste Variable den Pfad zum VLC-Player (z.B. "C:\Program Files\VideoLAN\VLC\vlc.exe" im Feld "Wert"); als zweite Variable den Ordner, in dem die Videos abgelegt werden sollen (z.B. "C:\Users\_Benutzername_\Videos\").

11) Fast geschafft, unter "Einstellungen" kann man jetzt noch die standardmäßige Vor- und Nachlaufzeit angeben. Wichtig sind Benutzername und Passwort, hier den Windows-Nutzer verwenden! Noch zweimal OK, und schon können wir probieren, ob alles funktioniert.

Getestet habe ich unter Windows 8 (64bit, Deutsch). Die Nutzung erfolgt natürlich auf eigene Gefahr.

Gruß

T-ster

91101

2

    • 10 years ago

      Hallo zusammen,

       

      bei mir funktioniert die Vorgehensweise leider nicht. Windows 7 Home Premium (32), VLC 2.1.3 Rincewind

       

      Und leider haben sich bestimmt einige Fehler eingeschlichen:

      1. Handelt es sich bei dem zu installierenden Aufnahmeplugin um das Plugin Aufnahmesteuerung 3.4.10 beta oder habe ich ein falsches ausgewählt?
      2. Ich habe kein Passwort für den Benutzer vergeben (ist das zwingend erforderlich)?

      3. Kann es sein, dass die Formatierung bei Schritt 4 nicht stimmt? Wenn ich es per copy&paste in den Editor einfüge, sind an manchen Stellen 2 Leerzeichen etc.. Wie genau muss die Befehlszeile aussehen?

      4. Gelten dieselben Befehle auch für die aktuelle Version des TV-Browser 3.4.0.1?

      5. ...

       

      Wäre super, wenn ich nicht mehr für jede Sendung eine bat schreiben müsste Fröhlich

       

      Beste Grüße

       

      Questy

      1

      Answer

      from

      10 years ago

      Hallo,

       

      zunächst vielen Dank für die Ausarbeitung an T-Ster.

       

      Leider bin ich mit den benutzten Techniken nicht sonderlich vertraut, so dass ich die auftretenden Fehlermeldungen (die scheduled tasks konnten nicht aufgebaut werden w/irgendwelcher Rechte (?) ) nicht richtig interpretieren konnte. Alledings haben ich durch T-Ster's Artikel in der Suchmaschine meines Vertrauens die richtigen Fragen stellen können, um eine Alternativlösung zu finden.

       

      https://hilfe.tvbrowser.org/viewtopic.php?f=50&t=17051#p109154

       

      Die vorgebene Reihenfolge der Installation sollte man einhalten, ansonsten läuft man Gefahr etwas zweimal zu machen ;).

       

      Man kommt zu dem Punkt, an dem die WinTvCap.Ini angepast werden sollte; die Modifikationsmöglichkeit ist in der WinTVCap_GUI unter Optionen zu finden.

       

      Meine Datei hat jetzt folgenden Inhalt:

       

      ************************ diese Zeile gehört nicht dazu  ***************

      [PRESETS]  //add your channels here
      Das Erste=1 //rtp://@239.35.10.4:10000
      ZDF=2 //rtp://@239.35.10.5:10000
      RTL=3 //rtp://@239.35.20.10:10000
      Sat.1=4 //rtp://@239.35.20.20:10000
      ProSieben=5 //rtp://@239.35.20.21:10000
      VOX=6 //rtp://@239.35.20.11:10000
      Kabel 1=7 //rtp://@239.35.20.38:10000
      RTL II=8 //rtp://@239.35.20.22:10000
      Super RTL=9 //rtp://@239.35.20.39:10000
      KiKA=10 //rtp://@239.35.10.19:10000
      3sat=11 //rtp://@239.35.10.6:10000
      n-tv=12 //rtp://@239.35.20.47:10000
      PHOENIX=13 //rtp://@239.35.10.22:10000
      BR Süd=14 //rtp://@239.35.10.7:10000
      hr=15 //rtp://@239.35.10.8:10000
      MDR Sachsen=16 //rtp://@239.35.10.9:10000
      NDR=17 //rtp://@239.35.10.10:10000
      Radio Bremen TV=18 //rtp://@239.35.10.12:10000
      rbb Berlin=19 //rtp://@239.35.10.14:10000
      SR=20 //rtp://@239.35.10.15:10000
      SWR BW=21 //rtp://@239.35.10.16:10000
      SWR RP=22 //rtp://@239.35.10.17:10000
      WDR=23 //rtp://@239.35.10.18:10000
      ARTE=24 //rtp://@239.35.10.20:10000
      Einsfestival=25 //rtp://@239.35.10.21:10000
      zdf.kultur=26 //rtp://@239.35.10.23:10000
      sixx=27 //rtp://@239.35.20.9:10000
      RTLNITRO=28 //rtp://@239.35.20.59:10000
      Sat.1 Gold=29 //rtp://@239.35.20.24:10000
      ProSieben MAXX=30 //rtp://@239.35.20.33:10000
      ARD-alpha=31 //rtp://@239.35.10.24:10000
      Deutsche Welle=32 //rtp://@239.35.20.44:10000
      Tagesschau24=33 //rtp://@239.35.10.25:10000
      EinsPlus=34 //rtp://@239.35.10.26:10000
      zdf_neo=35 //rtp://@239.35.10.27:10000
      ZDFinfo=36 //rtp://@239.35.10.28:10000
      BR Nord=37 //rtp://@239.35.10.13:10000
      MDR S-Anhalt=38 //rtp://@239.35.10.29:10000
      MDR Thüringen=39 //rtp://@239.35.10.30:10000
      NDR Hamburg=40 //rtp://@239.35.10.31:10000
      NDR Meckl.-Vorpommer=41 //rtp://@239.35.10.32:10000
      NDR Schleswig-Holste=42 //rtp://@239.35.10.33:10000
      rbb Brandenburg=43 //rtp://@239.35.10.34:10000
      RTL NRW=44 //rtp://@239.35.20.5:10000
      RTL HB NDS=45 //rtp://@239.35.20.6:10000
      Sat.1 Bayern=46 //rtp://@239.35.20.8:10000
      Sat.1 HH SH=47 //rtp://@239.35.20.12:10000
      Sat.1 NDS Bremen=48 //rtp://@239.35.20.13:10000
      Sat.1 NRW=49 //rtp://@239.35.20.14:10000
      Sat.1 RhlPf Hessen=50 //rtp://@239.35.20.15:10000
      WDR Aachen=51 //rtp://@239.35.10.35:10000
      WDR Bielefeld=52 //rtp://@239.35.10.36:10000
      WDR Bonn=53 //rtp://@239.35.10.37:10000
      WDR Dortmund=54 //rtp://@239.35.10.38:10000
      WDR Duisburg=55 //rtp://@239.35.10.39:10000
      WDR Düsseldorf=56 //rtp://@239.35.10.40:10000
      WDR Essen=57 //rtp://@239.35.10.41:10000
      WDR Münster=58 //rtp://@239.35.10.42:10000
      WDR Siegen=59 //rtp://@239.35.10.43:10000
      WDR Wuppertal=60 //rtp://@239.35.10.44:10000
      RTL HH SH=61 //rtp://@239.35.20.63:10000
      RTL Hessen=62 //rtp://@239.35.20.64:10000
      Das Erste HD=63 //rtp://@239.35.10.1:10000
      ZDF HD=64 //rtp://@239.35.10.2:10000
      KiKA HD=65 //rtp://@239.35.10.11:10000
      3sat HD=66 //rtp://@239.35.10.47:10000
      PHOENIX HD=67 //rtp://@239.35.10.48:10000
      BR Süd HD=68 //rtp://@239.35.10.49:10000
      hr HD=69 //rtp://@239.35.10.60:10000
      MDR HD=70 //rtp://@239.35.10.61:10000
      NDR HD=71 //rtp://@239.35.10.50:10000
      rbb Berlin HD=72 //rtp://@239.35.10.62:10000
      SWR BW HD=73 //rtp://@239.35.10.51:10000
      SWR RP HD=74 //rtp://@239.35.10.52:10000
      WDR HD=75 //rtp://@239.35.10.53:10000
      ARTE HD=76 //rtp://@239.35.10.3:10000
      Einsfestival HD=77 //rtp://@239.35.10.58:10000
      zdf.kultur HD=78 //rtp://@239.35.10.54:10000
      tagesschau24 HD=79 //rtp://@239.35.10.63:10000
      EinsPlus HD=80 //rtp://@239.35.10.59:10000
      zdf_neo HD=81 //rtp://@239.35.10.55:10000
      ZDFinfo HD=82 //rtp://@239.35.10.56:10000

      [DVD] //this is a quality name, at least one is required even if the application doesn't needs it!!!

      ************************ diese Zeile gehört nicht mehr dazu  ***************

       

      Start der Aufnahme erfolgt direkt aus dem TV-Browser.

       

      Aktuell bekomme ich zwar eine Fehlermeldung beim Start einer Aufnahme (VLC-Player im CMD-Fenster), aber die Aufnahmen klappen - besser als anders herum.

       

      Aufnahmen aus dem Ruhezustand habe ich noch nicht probiert.

       

      Grüße

       

      Dirk

       

       

       

       

       

       

       

      Unlogged in user

      Answer

      from

    Unlogged in user

    Ask

    from

    This could help you too

    in  

    772

    0

    3

    in  

    1062

    4

    6

    Solved

    in  

    352

    0

    2

    Solved

    in  

    389

    0

    5

    Solved

    in  

    823

    2

    10