CapturePlugin - ProgDVB

Aus TV-Browser Wiki
Version vom 29. Juli 2007, 11:35 Uhr von Ds10⧼word-separator⧽⧼parentheses⧽
⧼revision-nav⧽
Wechseln zu: Navigation⧼comma-separator⧽Suche

Für das Capture Plugin ab Version 2.03 (TV-Browser 2.0)

ACHTUNG: Für die Skripte kann zur Zeit kein Support geleistet werden, da sich der Autor schon lange nicht mehr gemeldet hat. Daher wird die Verwendung von WinTVCap_GUI mit dem Wtvcg_Scheduler-Plugin für TV-Browser empfohlen.


Systemvoraussetzung:

1. Betriebssystem:
    Win2000 oder WinXP
2. TV-Karten:
    Siehe ProgDVB
3. Software:
    ProgDVB
    TV-Browser ab Version 2.0
    Windows Script Host, Version 5.6


Aufnahmen mit ProgDVB und WinXP (Version 3.0 Revision 005 vom 2007-02-10)

Leerzeichen im Pfad für ProgDVB werden erst mit dieser Version unterstützt (besser ist es natürlich ProgDVB ohne Leerzeichen im Pfad zu Installieren).


Benötigt werden die Skripte inklusive Konfigurationsdatei und "jt.exe"


Für das System (Windows) gelten die gleichen Voraussetzungen wie für schtasks.exe. !! Wichtig !! keine Leerzeichen oder Sonderzeichen in den Pfaden.

Beschreibung


1. Download
Skripte und Konfigurationsdatei: http://freenet-homepage.de/iussusss/Scripte_ProgDVB_WinTV2k_RitzDVB_win2k_XP_jt_3_0_005.zip
jt.exe: ftp://ftp.microsoft.com/reskit/win2000/jt.zip (der Server ist öfters überlastet)
alternativ http://mvps.org/winhelp2002/jt.zip


2. Entpacken
Die Dateien timer.vbs, capture.vbs und programm.vbs unter c:\skripte speichern (aus Scripte_ProgDVB_WinTV2k_RitzDVB_win2k_XP_jt_3_0_005.zip)
jt.exe (aus jt.zip) wird auch unter c:\skripte gespeichert.


3. Die Parameter ins CapturePlugin importieren
Die Konfigurationsdatei "TCF ProgDVB *.tcf" ins Capture Plugin importieren.
(aus Scripte_ProgDVB_WinTV2k_RitzDVB_win2k_XP_jt_3_0_005.zip)


4. CapturePlugin konfigurieren

Die Parameter sollten folgendermaßen aussehen:

Unter Applikation(WinXP): (default)

C:\Windows\System32\cscript.exe

für Win2k

C:\Winnt\System32\cscript.exe


Unter Parameter:
Bitte diese nicht hier aus dem Handbuch kopieren da keine Zeilenumbrüche enthalten sein dürfen.

Aufnahme-Parameter: large(default)

//Nologo {variable("1")} /RunType:record /script:{variable("2")} /Application:\"{variable("3")}\" /Progamm1:{variable("4")} /Progamm2:{variable("5")} /StartHour:{leadingZero(start_hour,"2")} /StartMinute:{leadingZero(start_minute,"2")} /StartDay:{leadingZero(start_day,"2")} /StartMonth:{leadingZero(start_month,"2")} /StartYear:{start_year} /EndHour:{leadingZero(end_hour,"2")} /EndMinute:{leadingZero(end_minute,"2")} /EndDay:{leadingZero(end_day,"2")} /EndMonth:{leadingZero(end_month,"2")} /EndYear:{end_year} /lengthMinutes:{leadingZero(length_minutes,"3")} /lengthSec:{length_sec} /channelExt:{channel_name_external} /Title:{concat(cleanLess(title),testparam(episode,"-",testparam(original_title,"-",testparam(short_info,"-"))),cleanLess(isset(episode,isset(original_title,short_info))),testparam(original_episode,"-"),cleanLess(original_episode))} /kindtitle:\"{testparam(episode,"episode", testparam(original_title,"title", "episode"))}\" /Channel:{cleanLess(channel_name)} /password:{device_password} /username:\"{device_username}\"  /ChannelMode:\"{variable("7")}\" /runtime:\"{variable("8")}\" /TimeLine:"{variable("9")}\" /WaitSec:\"{variable("10")}\" /Comment:\"{variable("11")}\" /Quality:\"{variable("12")}\" /MinTime:\"{variable("13")}\" /NetUse:\"{variable("15")}\" /Jt:{variable("16")} /Cscript:{variable("17")} /Comuter:\"{variable("18")}\" /Java:{variable("19")} /ScheduleClient:{variable("20")} /Port:\"{variable("21")}\" /WolMode:\"{variable("23")}\" /MacComputer:\"{variable("24")}\"  /IpNet:\"{variable("25")}\"  /WaitWolSec:\"{variable("26")}\" /WriteList:\"{variable("28")}\" /PathWriteList:\"{variable("29")}\" /NameWriteList:\"{variable("30")}\" /GBytePerHour:\"{variable("31")}\" /MinTage:\"{variable("32")}\" 

Löschen-Parameter: (default)

//Nologo {variable("1")} /RunType:delete /script:{variable("2")} /Application:\"{variable("3")}\" /Progamm1:{variable("4")} /Progamm2:{variable("5")} /StartHour:{leadingZero(start_hour,"2")} /StartMinute:{leadingZero(start_minute,"2")} /StartDay:{leadingZero(start_day,"2")} /StartMonth:{leadingZero(start_month,"2")} /StartYear:{start_year} /EndHour:{leadingZero(end_hour,"2")} /EndMinute:{leadingZero(end_minute,"2")} /EndDay:{leadingZero(end_day,"2")} /EndMonth:{leadingZero(end_month,"2")} /EndYear:{end_year} /lengthMinutes:{leadingZero(length_minutes,"3")} /lengthSec:{length_sec} /channelExt:{channel_name_external} /Title:{concat(cleanLess(title),testparam(episode,"-",testparam(original_title,"-",testparam(short_info,"-"))),cleanLess(isset(episode,isset(original_title,short_info))),testparam(original_episode,"-"),cleanLess(original_episode))} /kindtitle:\"{testparam(episode,"episode", testparam(original_title,"title", "episode"))}\" /Channel:{cleanLess(channel_name)} /password:{device_password} /username:\"{device_username}\"  /ChannelMode:\"{variable("7")}\" /runtime:\"{variable("8")}\" /TimeLine:"{variable("9")}\" /WaitSec:\"{variable("10")}\" /Comment:\"{variable("11")}\" /Quality:\"{variable("12")}\" /MinTime:\"{variable("13")}\" /NetUse:\"{variable("15")}\" /Jt:{variable("16")} /Cscript:{variable("17")} /Comuter:\"{variable("18")}\" /Java:{variable("19")} /ScheduleClient:{variable("20")} /Port:\"{variable("21")}\" /WolMode:\"{variable("23")}\" /MacComputer:\"{variable("24")}\"  /IpNet:\"{variable("25")}\"  /WaitWolSec:\"{variable("26")}\" /WriteList:\"{variable("28")}\" /PathWriteList:\"{variable("29")}\" /NameWriteList:\"{variable("30")}\" /GBytePerHour:\"{variable("31")}\" /MinTage:\"{variable("32")}\"  



Unter Kanäle (anzupassen)

Tragt eure Programmplätze zu den jeweiligen Sendern ein (Numerisch).

Unter Variable (anzupassen)

Die Pfade müssen natürlich eurem System angepasste werden, je nachdem wohin ihr die Scripts und jt.exe speichert.

Wichtig! keine Leerzeichen in den Pfaden (Ordnernamen) !!
(Leere Variable müssen bei einer lokalen Installation nicht ausgefüllt werden)

1timer skriptc:\skripte\timer.vbs
2record skript (Startet die Aufnahme) c:\skripte\capture.vbs
3ApplicationProgDVB
4Programm 1 (ProgDVB) c:\PROGRAMME\Progdvb\ProgDVB.exe
5
6
7Minimiert <optional> min
8Ausführen als now, once, weekly ,dailyonce
9bei weekly & daily (start / end ) start
10Sekunden bis die Aufnahme startet3
11KommentarCreate by TV-Browser
12
13min time in minuten <optional>0
14
15Net use (no, jt , server)no
16(no/jt) jt.exe (Werkzeug für geplante Tasks)c:\skripte\jt.exe
17(no/jt) cscript.exe (VBS Compiler) c:\windows\system32\cscript.exe
18(jt) Rechnername (server) Rechnername / IP
19(server) java.exe
20(server) ScheduleClient.jar
21(server) Portnummer
22
23WOL Mod (on/ offoff
24MacComputer (XX-XX-XX-XX-XX-XX)
25(jt) Ip Netz Broatcast (xxx.xxx.xxx.255)
26(jt) Maximale Zeit für Wol in sek
27
28WriteList ( on / off) on
29Pfad zu Text Datei c:\skripte
31Name der Text Datei_00_record.txt
32GByte pro Stunde (1,34) 2,4
33Anzahl der Tage (Min) 28


Zu den Punkten 8 & 9
Es gibt:

once & start :-> nimmt die Sendung zu dem angegeben Zeitpunkt auf (Titel mit Folge und Originalfolge wenn vorhanden)
now & start :-> Aufnahme startet sofort, die Zeitangabe bestimmt nur die Länge der Aufnahme (Titel mit Folge und Originalfolge wenn vorhanden)
weekly & start :-> Aufnahme beginnt mit dieser Sendung und wird dann wöchentlich wiederholt (an dem Wochentag der Sendung)
weekly & end :->Aufnahme beginnt sofort wöchentlich und endet mit dieser Sendung (an dem Wochentag der Sendung)
daily & start :-> Aufnahme beginnt mit dieser Sendung und wird dann Täglich wiederholt
daily & end :->Aufnahme beginnt sofort täglich und endet mit dieser Sendung

Zu Punkt 10
Ist die Wartezeit des Capture Skript bevor die Aufnahme startet

Zu Punkt 11
Mit dem Kommentar ist es möglich verschiedene Anwendungen auseinander zu halten.

Zu Punkt 15
Net use (no, jt , server) (normal ist):no
Nur wenn ein Rechner übers Netzwerk programmiert wird, ist es entweder jt oder server.

Zu den Punkten 18 bis 26
(Optional) Nur zum programmieren einer Aufnahme auf einem anderen Rechner (Lan).

Zu den Punkten 28 bis 32
"bei WriteList ( on / off)" : on
wird mit Hilfe der Programm Scripts ein Textfile erstellt das alle Aufnahmen enthält. Benötigt wird dafür das Programm Script (im gleichen Verzeichnis wie das Timer Script).
"bei WriteList ( on / off)" : off
sind alle Parameter darunter bedeutungslos


Unter Einstellungen: (anzupassen)

Minuten früher starten : 2 bis 15 min je nach Sender und Tageszeit
Minuten später stoppen : 8 bis 20 min je nach Sender und Tageszeit
(Diese Werte sind reine Erfahrungswerte bitte selber testen)

Benutzername  : euer Benutzername von Windows
Passwort  : "euer Passwort von Windows"

Passwort und Benutzername müssen angegeben werden. Das Passwort am besten mit Anführungs-Zeichen, mehr dazu siehe unten unter Anmerkung zu Benutzername & Passwort (Als Benutzer muss derjenige angegeben werden unter dem bei der Aufnahme das System läuft).

Anzahl der Sek. bis zum Abbruch: 240 Sekunden.

== Record Now - Aufnahme startet sofort==

Voraussetzung
Im Capture Plugin muss ein Gerät vorhanden sein, das wie oben beschrieben eingerichtet ist.

1. Die Parameter aus dem Capture Plugin exportieren und importieren
Im Capture Plugin unter Geräte die aktuelle Einstellung von der normalen Aufnahme exportieren und dann wieder importieren.
Danach sind im Capture Plugin zwei Geräte mit dem gleichen Namen eingetragen. Das zweite Gerät markieren und konfigurieren.

2. Capture Plugin konfigurieren

Geändert werden muss:

Der Name (anzupassen)
ganz oben den Namen ändern (wie auch immer nur ändern).

Unter Variable (anzupassen)

8Ausführen als now, once, weekly ,dailynow
9bei weekly & daily (start / end ) start
10Sekunden bis die Aufnahme startet0

Sollte die Aufnahme mit Wake on Lan gestartet werden, sind min 3 Sekunden bis die Aufnahme startet zu empfehlen.

== Record Weekly - Wöchentliche Aufnahmen (start)==

Voraussetzung
Im Capture Plugin muss eine Gerät vorhanden sein, dass wie oben beschrieben eingerichtet ist.

1. Die Parameter aus dem Capture Plugin exportieren und importieren
Im Capture Plugin unter Geräte die aktuelle Einstellung vom der normalen Aufnahme exportieren und dann wieder importieren.
Danach sind im Capture Plugin zwei Geräte mit dem gleichen Namen eingetragen. Das zweite Gerät markieren und konfigurieren.

2. Capture Plugin konfigurieren

geändert werden muss:

Der Name (anzupassen)
ganz oben den Namen ändern (wie auch immer nur ändern).

Unter Variable (anzupassen)

8Ausführen als now, once, weekly ,dailyweekly
9bei weekly & daily (start / end ) start

Anmerkungen

Anmerkung zu Benutzername & Passwort
Ein leeres Passwort funktioniert bei Windows XP nur, wenn in der Windows-Registry der Wert "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\limitblankpassworduse" auf "0" gesetzt ist. Sonst weigert XP sich Programmierungen ohne Passwort auszuführen (dann einfach "" als Passwort angeben).

Ansonsten:

Der Dialog zum Einrichten einer automatischen Anmeldung

Passwort und Benutzername müssen angegeben werden, falls ihr noch keinen Benutzernamen angelegt habt, kann das unter Systemsteuerung und Benutzerkonten nachgeholt werden! Unbedingt notwendig!
Falls ihr beim Windowsstartbildschirm keine Benutzerabfrage wollt, kann man das in der Systemsteuerung unter Benutzer und Kennwörter oder mit dem Befehl/Programm control userpasswords, den man mit Win+R (Ausführen...) startet, einstellen. Dort ist bei dem Benutzer der automatisch angemeldet werden soll der Haken "Benutzer müssen Benutzernamen und Kennwort eingeben" zu entfernen.

Anmerkung zur Programierung übers Lan
Bei einer Programierung übers Lan muss der TV-Browser unter einem User laufen der auf dem anderen Rechner Adminrechte hat. Ansonsten könnt ihr auch den Server von ds10 benützen.

Starten aus dem Ruhezustand / Standby

Folgende Einstellungen sind beim Aufwecken aus dem Ruhezustand & Standby wichtig:
1. Im Bios muss der Weckbefehl für den RTC-Alarm zu einer bestimmten Uhrzeit abgeschaltet sein
2. Der Ruhezustand muss aktiviert sein und der Computer muss beim Herunterfahren auch in den Ruhezustand /Standby versetzt werden (einstellbar in den Energieoptionen).
3. Kennwort-Abfrage bei der Reaktivierung aus dem Standby muss deaktiviert sein (einstellbar in den Energieoptionen).
4. Nicht jeder Computer kann dieses (zuverlässig), bitte Testen. Ursachen für Probleme können bei der Hardware (Mainboard, Steckkarten, USB-Geräte, etc) oder der Software (Bios, Treiber, automatisch gestartete Programme, etc.) liegen.

Computer in den Ruhezustand / Standby versetzen
In der Systemsteuerung unter Energieoptionen die Zeit definieren nach der der Computer sich in den Ruhezustand oder Standby versetzt.

Fehlemeldungen
Es gibt zwei Arten von Fehlermeldungen.
1. [FAIL ] ITaskScheduler::AddWorkItemn hr=0x80070005
Das ist eine Fehlermeldung von jt.exe. Die Hexnummer "0x80070005" einfach bei Google eingeben.
"0x80070005" bedeutet ‘Access Denied’ also Username und Passwort überprüfen!
2. Die anderen sind Fehlermeldungen vom Skript, wenn diese keine Anweisung enthalten, einfach im Forum Posten, ihr könnt natürlich auch mit der Fehlernummer bei Google suchen (alle Hex-Nummer sind nach dem Standard von Microsoft )

Aktivieren des Windows-Scripting-Host (WinXP)Falls in der Registry unter "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Script Host\Settings" die Zeichenfolge "Enable" den Wert "0" hat ist der WSH deaktiviert. Um ihn wieder zu aktivieren, muß der Wert von "0" auf "1" geändert werden.
Sollte die Zeichenfolge «Enabled» fehlen, muss man sie neu anlegen, indem man mit der rechten Maustaste unter die vorhandenen Werte klickt und im Kontextmenü «Neu/Zeichenfolge» anklickt.

Weiter Anmerkungen
http://hilfe.tvbrowser.org/viewtopic.php?t=6007

Alternative zu den Skripten


Es gibt es die Möglichkeit mit WinTVCap_GUI und dem Wtvcg_Scheduler (Plugin für Tv-Browser ersetzt das Capture Plugin) ProgDVB, mit Sendungen aus dem Tv-Browser und Sender die nicht im Tv-Browser vorkommen zu Programmieren. http://wintvcap-gui.sourceforge.net/deutsch/tv-browser-user.de.html

Vergleich der beiden Alternativen