CapturePlugin - WinTV

Aus TV-Browser Wiki
Version vom 10. Januar 2005, 20:28 Uhr von Fingerhut⧼word-separator⧽⧼parentheses⧽
⧼revision-nav⧽
Wechseln zu: Navigation⧼comma-separator⧽Suche

Standard Aufnahme


Legt ein neues Gerät mit dem Standard-Treiber an.

Nach dem erfolgreichen Anlegen des Gerätes müßt Ihr es auswählen und "Gerät konfigurieren" wählen.

Achtung: Es wird zusätzlich noch das Programm schtasks.exe benötigt!

Folgendes müßt Ihr eingeben, damit WinTV funktioniert:

Unter Applikation:

Applikation : c:\windows\system32\schtasks.exe

Unter Parameter:

Aufnahme-Parameter:(Channal)

/create /SC EINMAL /TN %T2_%CNB_%SD%SMO%SY_%SH%SMI /TR "C:\Programme\WinTV\WinTV2K.EXE -c%CNU -ntod -nss -startr:%T2_%CNA_%SD%SMO%SY_%SH%SMI.mpg -qdef -limit:%LS -mute -exitr" /ST %SH:%SMI:00 /SD %SD/%SMO/%SY /ru %UN /rp %UP 

Aufnahme-Parameter:(Preset)

/create /SC EINMAL /TN %T2_%CNB_%SD%SMO%SY_%SH%SMI /TR "C:\Programme\WinTV\WinTV2K.EXE -p%CNU -ntod -nss -startr:%T2_%CNA_%SD%SMO%SY_%SH%SMI.mpg -qdef -limit:%LS -mute -exitr" /ST %SH:%SMI:00 /SD %SD/%SMO/%SY /ru %UN /rp %UP 


Löschen-Parameter:

/delete /TN %T2_%CNB_%SD%SMO%SY_%SH%SMI /F 

Und bitte den Pfad zu WinTV2K.exe anpassen!

Unter Einstellungen:
Euren Windows Benutzernamen und Passwort, wenn der Benutzername oder das Passwort ein Leerzeichen enthaltet, diese bitte mit " am Anfang und Ende angeben.

Unter Kanäle müßt ihr die Kanal-Nummern(Channel) oder die Stations-Nummern(Preset) von WinTV angeben.

Aufnahme aus dem Standby für XP

Es existiert die Möglichkeit per Kommandozeilen-Tool einzustellen ob der Rechner automatisch hochgefahren werden soll. Dafür müßte allerdings ein kleines VB-Skript geschreiben werden.
Zusätzlich werden diese zwei Programme benötigt:
schtasks.exe und waketask.exe http://www.huebert.info/waketask/

!! wichtig !! keine Leerzeichen, Sonderzeichen oder Umlaute in den Pfaden, Benutzername oder Passwort verwenden!!! (und natürlich diese Anpassen).


Legt ein neues Gerät mit einem Standard-Treiber an.

Folgendes müßt Ihr eingeben, damit WinTV funktioniert:

Unter Applikation:

C:\Windows\System32\cscript.exe

Unter Parameter:

Aufnahme-Parameter:

c:\progdvb\timer.vbs %SH %SMI %SD %SMO %SY  %EH %EMI %CNU %UP %UN %T2 %LS  %LM %CNB

Löschen-Parameter:

c:\progdvb\deltimer.vbs  %SH %SMI %SD %SMO %SY  %EH %EMI %CNU  %T2   %LM %CNB

Unter Einstellungen:
Euren Windows Benutzernamen und Passwort, wenn der Benutzername oder das Passwort ein Leerzeichen enthaltet, diese bitte mit " am Anfang und Ende angeben.

Unter Kanäle müßt ihr die Kanal-Nummern(Channel) oder die Stations-Nummern(Preset) von WinTV angeben.

Die Skripte

timer.vbs

Set ArgObj = WScript.Arguments

v_starthh = ArgObj(0) v_startmin = ArgObj(1) v_startday = ArgObj(2) v_startmonth = ArgObj(3) v_startyear = ArgObj(4) v_endhh = ArgObj(5) v_endmin = ArgObj(6) v_channelnr = ArgObj(7) v_password = ArgObj(8) v_user = ArgObj(9) v_telecast = ArgObj(10) v_seconds = ArgObj(11) v_minutes = ArgObj(12) v_channelname = ArgObj(13)
if 100 > v_minutes Then v_minutes = 0 & v_minutes END IF v_taskname = """"& v_startmonth & "," & v_startday & " " & v_starthh & v_startmin & "-" & v_endhh & v_endmin & " " & v_minutes & " " & v_channelnr & " " & v_channelname & " " & v_telecast &"""" v_user = """"& v_user & """" v_password = """" & v_password & """"
v_startdate = v_startday & "/" & v_startmonth & "/" & v_startyear v_starttime = v_starthh & ":" & v_startmin & ":00"
v_path_record = "C:\Windows\System32\cscript.exe c:\progdvb\record.vbs C:\PROGRAMME\WinTV\WinTV2K.EXE" v_path_schtasks = "%systemroot%\system32\schtasks.exe" v_path_waketask = "%systemroot%\System32\waketask.exe"
v_startprog = """"& v_path_record &" "& v_channelnr &" "& v_telecast &" "& v_channelname & " " & v_seconds & """"
set task = wscript.CreateObject("wscript.Shell") task.run("" & v_path_schtasks &" /create /sc EINMAL /st " & v_starttime & " /sd " & v_startdate & " /ru " & v_user & " /rp " & v_password & " /tn " & v_taskname & " /tr "& v_startprog ),1
wscript.sleep 200 task.run ("" & v_path_waketask &" 1 " & v_taskname ),1

deltimer.vbs

Set ArgObj = WScript.Arguments

v_starthh = ArgObj(0) v_startmin = ArgObj(1) v_startday = ArgObj(2) v_startmonth = ArgObj(3) v_startyear = ArgObj(4) v_endhh = ArgObj(5) v_endmin = ArgObj(6) v_channal = ArgObj(7) v_telecast = ArgObj(8) v_minutes = ArgObj(9) v_channelname = ArgObj(10)
if 100 > v_minutes Then v_minutes = 0 & v_minutes END IF v_taskname = """"& v_startmonth & "," & v_startday & " " & v_starthh & v_startmin & "-" & v_endhh & v_endmin & " " & v_minutes & " " & v_channal & " " & v_channelname & " " & v_telecast &""""
v_path_schtasks = "%systemroot%\system32\schtasks.exe"
set task = wscript.CreateObject("wscript.Shell") task.run ("" & v_path_schtasks & " /delete /tn "& v_taskname &" /F"),1


record.vbs

Set ArgObj = WScript.Arguments

v_path_winTV = ArgObj(0) v_channelnr = ArgObj(1) v_telecast = ArgObj(2) v_channelname = ArgObj(3) v_seconds = ArgObj(4)
Wscript.Echo " Win TV: starte Aufnahme " & v_telecast & " " & v_channelname wscript.sleep 2000
v_m = DatePart("m" , Now) v_d = DatePart("d" , Now) v_h = Hour(Now) v_min = Minute(Now)
IF v_m < 10 Then v_m = 0 & v_m END IF IF v_d < 10 Then v_d = 0 & v_d END IF IF v_h < 10 Then v_h = 0 & v_h END IF IF v_min < 10 Then v_min = 0 & v_min END IF
v_currenttime = DatePart("yyyy" , Now) &","& v_m &","& v_d &"_"& v_h & v_min
v_startprog = ""& v_path_winTV &" -c"& v_channelnr &" -ntod -startr:" & v_telecast & "_" & v_currenttime &"_"& v_channelname & ".mpg -qvcd -limit:" & v_seconds & " -mute -exitr"
set task = wscript.CreateObject("wscript.Shell") task.run("C:\Programme\WinTV\Ir.exe /QUIET"),1 wscript.sleep 2000 task.run(v_startprog),1

Dieser Beschreibung geht davon aus, dass
die Skripte in -> c:\progdvb ,
schtasks.exe und waketask.exe in -> %systemroot%\system32\ und
WinTV und IR als -> C:\PROGRAMME\WinTV\WinTV2K.EXE bzw als C:\Programme\WinTV\Ir.exe
gespeichert sind.

Wenn sie Stations-Nummern verwenden tauschen sie im record.vbs die Zeile v_startprog =... mit diese Zeile aus.

v_startprog = ""& v_path_winTV &" -p"& v_channelnr &" -ntod -startr:" & v_telecast & "_" & v_currenttime &"_"& v_channelname & ".mpg -qvcd  -limit:" & v_seconds & " -mute -exitr"


Sie können den Tasknamen (v_taskname) ändern, er muss nur im timer.vbs und deltimer.vbs gleich sein. Wenn sie am Ende oder Anfang keine Variable benützen, dann reichten drei """ ohne &.
(Siehe in record.vbs v_startprog = ... )


Log Datei hier zB. als Anhang in der record.vbs
(die txt Datei muss schon bestehen)

wscript.sleep 5000

v_aufnahme = v_telecast & " " & v_channelname
Set objFSO = wscript.CreateObject("Scripting.FileSystemObject")
v_strPath = "G:\video2\8_log" v_datei = "record.txt" v_strFullName = objFSO.BuildPath( v_strPath , v_datei)
Set objFile = objFSO.OpenTextFile(v_strFullName ,8 ) objFile.WriteLine "" & Now & " : "& v_aufnahme &"" objFile.Close


Aufnahme aus dem Standby für Win2k und XP

Es existiert die Möglichkeit per Kommandozeilen-Tool einzustellen ob der Rechner automatisch hochgefahren werden soll. Dafür müßte allerdings ein kleines VB-Skript geschreiben werden. ( Für Win2k & XP)
Zusätzlich wird dieses Programme benötigt:
jt.exe ftp://ftp.microsoft.com/reskit/win2000/jt.zip

!! wichtig !! keine Leerzeichen, Sonderzeichen oder Umlaute in den Pfaden, Benutzername oder Passwort verwenden!!! (und natürlich diese Anpassen).


Legt ein neues Gerät mit einem Standard-Treiber an.

Folgendes müßt Ihr eingeben, damit WinTV funktioniert:

Unter Applikation:

C:\Windows\System32\cscript.exe

Unter Parameter:

Aufnahme-Parameter:

c:\progdvb\timer.vbs %SH %SMI %SD %SMO %SY  %EH %EMI %CNU %UP %UN %T2 %LS  %LM %CNB

Löschen-Parameter:

c:\progdvb\deltimer.vbs  %SH %SMI %SD %SMO %SY  %EH %EMI %CNU  %T2   %LM %CNB

Unter Einstellungen:
Euren Windows Benutzernamen und Passwort, wenn der Benutzername oder das Passwort ein Leerzeichen enthaltet, diese bitte mit " am Anfang und Ende angeben.

Unter Kanäle müßt ihr die Kanal-Nummern(Channel) oder die Stations-Nummern(Preset) von WinTV angeben.


Die Skripte

timer.vbs

 
Set ArgObj = WScript.Arguments
v_starthh = ArgObj(0) v_startmin = ArgObj(1) v_startday = ArgObj(2) v_startmonth = ArgObj(3) v_startyear = ArgObj(4) v_endhh = ArgObj(5) v_endmin = ArgObj(6) v_channelnr = ArgObj(7) v_password = ArgObj(8) v_user = ArgObj(9) v_telecast = ArgObj(10) v_seconds = ArgObj(11) v_minutes = ArgObj(12) v_channelname = ArgObj(13)
if 100 > v_minutes Then v_minutes = 0 & v_minutes END IF
v_taskname = """"& v_startmonth &","& v_startday &" "& v_starthh & v_startmin &"-"& v_endhh & v_endmin &" "& v_minutes &" "& v_channelnr &" "& v_channelname &" "& v_telecast &".job""" ' v_taskname kann nach Anleitung geändert werden
v_user = """"& v_user &"""" v_password = """"& v_password &"""" v_startdate = v_startmonth &":"& v_startday &":"& v_startyear v_starttime = v_starthh &":"& v_startmin
v_path_cscript = "C:\Windows\System32\cscript.exe" v_path_record = "c:\progdvb\aufnahme.vbs c:\PROGRAMME\WinTV\WinTV2K.EXE" v_path_jt = "%systemroot%\system32\jt.exe" ' Pfade anpassen !!!!
' v_machine = ' /SM [<machine>] - set machine (NULL = local machine if omitted)
v_parameter = """"& v_path_record &" "& v_channelnr &" "& v_telecast &" "& v_channelname &" "& v_seconds &""""
set task = wscript.CreateObject("wscript.Shell") task.run(""& v_path_jt &" /sj ApplicationName="& v_path_cscript &" SystemRequired=1 Parameters="& v_parameter &"/ctj StartTime="& v_starttime &" StartDate="& v_startdate &" type=ONCE Disabled=0 /SM "& v_machine &" /sc "& v_user &" "& v_password &" /saj "& v_taskname ),1


deltimer.vbs


Set ArgObj = WScript.Arguments
v_starthh = ArgObj(0) v_startmin = ArgObj(1) v_startday = ArgObj(2) v_startmonth = ArgObj(3) v_startyear = ArgObj(4) v_endhh = ArgObj(5) v_endmin = ArgObj(6) v_channal = ArgObj(7) v_telecast = ArgObj(8) v_minutes = ArgObj(9) v_channelname = ArgObj(10)
if 100 > v_minutes Then v_minutes = 0 & v_minutes END IF
v_path_jt = "%systemroot%\system32\jt.exe"
v_taskname = """"& v_startmonth & "," & v_startday & " " & v_starthh & v_startmin & "-" & v_endhh & v_endmin & " " & v_minutes & " " & v_channal & " " & v_channelname & " " & v_telecast &".job"""
set task = wscript.CreateObject("wscript.Shell") task.run ("" & v_path_jt & " /sd "& v_taskname ),1


record.vbs


Set ArgObj = WScript.Arguments
v_path_winTV = ArgObj(0) v_channelnr = ArgObj(1) v_telecast = ArgObj(2) v_channelname = ArgObj(3) v_seconds = ArgObj(4)
Wscript.Echo "Win TV: starte Aufnahme "& v_telecast &" "& v_channelname wscript.sleep 2000
v_moth = DatePart("m" , Now) v_day = DatePart("d" , Now) v_h = Hour(Now) v_min = Minute(Now)
IF 10 > v_moth Then v_moth = 0 & v_moth END IF IF 10 > v_day Then v_day = 0 & v_day END IF IF 10 > v_h Then v_h = 0 & v_h END IF IF 10 > v_min Then v_min = 0 & v_min END IF
v_currenttime = DatePart("yyyy" , Now) &","& v_moth &","& v_day &"_"& v_h & v_min v_file = v_telecast &"_"& v_currenttime &"_"& v_channelname &".mpg" 'nach Belieben anpassen nur keine Leerzeichen verwenden !!!
v_startprog = ""& v_path_winTV &" -c"& v_channelnr &" -ntod -startr:"& v_file &" -qvcd -limit:" & v_seconds & " -mute -exitr"
set task = wscript.CreateObject("wscript.Shell") task.run("c:\Programme\WinTV\Ir.exe /QUIET"),1 'Pfad anpassen oder die Zeile löschen !!
wscript.sleep 2000 task.run(v_startprog),1


Dieser Beschreibung geht davon aus, dass
die Skripte in -> c:\progdvb ,
jt.exe in -> %systemroot%\system32\ und
WinTV und IR als -> C:\PROGRAMME\WinTV\WinTV2K.EXE bzw als C:\Programme\WinTV\Ir.exe
gespeichert sind.

Wenn sie Stations-Nummern verwenden tauschen sie im record.vbs die Zeile v_startprog =... mit diese Zeile aus.

 v_startprog = ""& v_path_winTV &" -p"& v_channelnr &" -ntod -startr:"& v_file &" -qvcd  -limit:" & v_seconds & " -mute -exitr"


Sie können den Tasknamen (v_taskname) ändern, er muss nur im timer.vbs und deltimer.vbs gleich sein. Wenn sie am Ende oder Anfang keine Variable benützen, dann reichten drei """ ohne &.
(Siehe in record.vbs v_startprog = ... )


Log Datei hier zB. als Anhang in der record.vbs
(die txt Datei muss schon bestehen)

wscript.sleep 5000

v_aufnahme = v_telecast & " " & v_channelname
Set objFSO = wscript.CreateObject("Scripting.FileSystemObject")
v_strPath = "G:\video2\8_log" v_datei = "record.txt" v_strFullName = objFSO.BuildPath( v_strPath , v_datei)
Set objFile = objFSO.OpenTextFile(v_strFullName ,8 ) objFile.WriteLine "" & Now & " : "& v_aufnahme &"" objFile.Close