TV2H264 Skript V 0.1.0
Updated 24.09.2009
Bequemes Umwandeln von TV Aufnahmen (SD oder HD) in *. mkv (Codec H.264) mit Hilfe des Plugins MyProgramsALT und dem TV2H264 Python Skript
1. Allgemeines
Wie ich in folgendem Post .ts in .avi umwandel mittels Batch Datei & myProgramsAlt schon angekündigt habe, schreibe ich noch ein neues Skript. Und hier ist es.
Erstmal muss ich meinem Bruderherz danken, ohne ihn hätte ich es wahrscheinlich nicht auf diese Art realisieren können.
2. Funktionsweise
3. Installation
Wichtig: Das das Python Skript funktioniert müsst ihr folgende Windows System32 Dateien haben (Bitte überprüfen !!!)
OLEAUT32.dll - C:\Windows\system32\OLEAUT32.dll
USER32.dll - C:\Windows\system32\USER32.dll
SHELL32.dll - C:\Windows\system32\SHELL32.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll
WSOCK32.dll - C:\Windows\system32\WSOCK32.dll
ADVAPI32.dll - C:\Windows\system32\ADVAPI32.dll
WS2_32.dll - C:\Windows\system32\WS2_32.dll
ole32.dll - C:\Windows\system32\ole32.dll
3.1 MyProgramsALT einrichten
Im Unterordner \\Programme\TV2H264\skripte findet ihr die Datei TV2H264.exe (+ Version)
Über Add/Delete aplications erstellt ihr ein ApplicationItem, dass sollte dann wie auf dem Screenshot aussehen.
Am besten ist ihr erstellt euch 2 Profile, eines für SD und eines für HD, so könnt ihr die Qualität indivduell anpassen (näheres siehe 4. Qualität).
Zu guter letzt müsst ihr noch euren Records Ordner einstellen. Dies geschieht über den Reiter Files. Stellt es wie auf dem folgenden Screenshot dargestellt ist ein.
4. Qualität
Ihr könnt die Konvertierungsqualität über die Zahl die Ihr bei App. Argument einstellt regulieren. Ich hab einige Testläufe durchgeführt und die Ergebnisse könnt Ihr folgender Tabelle entnehmen:
rot = nicht aktzeptabel (weil Datei zu groß oder Bildquali zu schlecht)
gelb = aktzeptabel (kompromiss aus Größe & Qualität)
grün = gut (gute Quali bei guter kompression)
optimale Werte (von mir durch mehrere Test ermittelt):
HD Aufnahmen: 25.0
SD Aufnahmen: 22.0
Aber ihr könnt ja selbst mal ein bischen rum probieren und mir eure Ergebnisse mitteilen
5. Anwendung
Wenn ihr in MP jetzt das MyProgramsALT plugin öffnet sollte es wie folgt aussehen (evtl. andere Bezeichnung je nach euerer Einstellung)
Wenn ihr jetzt eine der beiden Schaltflächen anklickt seht ihr eure *.ts Aufnahmen auswählen, anklick und das Programm läuft dann im Hintergrund ab. Desweiteren gibt es eine Schaltfläche reimport, dadurch könnt ihr eure neuen Aufnahmen in die Datenbak übernehmen. Leider ist hier ein kliner Bug seitens MyProgramsAlt, das er 2 Datenbaknen erstellt.
ACHTUNG !!!
Die Konvertierung kann bis zu 3 Std oder mehr daueren, je nach CPU.
6. Log Datei
Im Unterordner \\TV2H264\log findet ihr die Datei logfile_TV2H264.log. Wenn etwas nicht funktionieren sollte dann postet bitte die Log Dateien.
7. Known Bugs
Damit ihr MP weiterhin nebenher laufen lassen könnt, müsst ihr die Priorität von FFMpeg runter stellen. Das könnt ihr im Taskmanager machen, rechts Klick auf den Prozess FFMpeg --> Priorität festlegen --> niedriger als normal bzw. niedrig (FFMpeg muss natürlcih laufen)
Known Bugs in v 0.1.0
changes since v 0.0.9
# nur noch ein Skript für SD und HD Aufnahmen
# Mediainfo Daten auslesen erweitert (Auflösung, Frame Rate)
# Logger Infos erweitert
# Delay formatierung überarbeitet
# kompatibilität zu "komischen" HD Formaten wie es ARD HD, ZDF HD, Arte HD, etc. ausstrahlen
Updated 24.09.2009
Bequemes Umwandeln von TV Aufnahmen (SD oder HD) in *. mkv (Codec H.264) mit Hilfe des Plugins MyProgramsALT und dem TV2H264 Python Skript
1. Allgemeines
Wie ich in folgendem Post .ts in .avi umwandel mittels Batch Datei & myProgramsAlt schon angekündigt habe, schreibe ich noch ein neues Skript. Und hier ist es.
Erstmal muss ich meinem Bruderherz danken, ohne ihn hätte ich es wahrscheinlich nicht auf diese Art realisieren können.
2. Funktionsweise
- Analyse der *.ts mit MediaInfo.
Auslesen aller zu konvertierung benötigten Media - Daten:
- Anzahl der Video- & Audiostreams
- Auflösung der Videodatei
- Framerate der Videodatei
- Delay der einzelnen Audiostreams (Behebt Probleme mit asychronen Audiospuren)
Des Weiteren untersucht das Skript die Audiospuren. Sind AC3 Streams (deutsche oder englische) vorhanden, werden nur diese verarbeitet. Findet er keine AC3 Streams werden die Stereo Streams verarbeitet.
D.h. am Ende bekommt Ihr ein Videofile das entweder deutschen AC3 Stream oder einen deutschen Stereo Stream hat. Zusätzlich (sofern im Ausgangsfile *.ts vorhanden) werden noch Ac3 bzw. Stereo Streams mit Englischer Sprache verarbeitet (für die Sky Benutzer unter uns ) Vielen Dank Bruderherz für diesen genialen Algorythmus - Demuxen mit MPlayer, d.h. das *.ts Ausgangsfile wird basierend auf MediaInfo in seine einzelnen Streams zerlegt
- Konvertieren mit FFMpeg und variabler Bitrate, d.h. der demuxete Videostream wird mit dem H.264 Codec konvertiert
- Muxen mit MKVMerge, d.h. der konvertierte Videostream wird mit den ermittelten Audiostreams wieder zusammen geführt und in einen *.mkv Container gesteckt. Der Delay jeder Audiospur wird ebenfalls mit Mediainfo ausgelesen und beim muxen dem jeweiligen Strean zugewiesen (hoffentlich keine Audio Sync probleme). Des Weiteren werden Format, Language und Bezeichnungen der Streams mit MediaInfo ausgelsen und beim muxen in die Datei geschrieben.
3. Installation
- Ladet euch das Plugin myProgramsALT runter und installiert es
- Ladet euch die Datei View attachment 47372 herunter, entpackt sie (am besten mit 7zip) und kopiert den TVH264 Ordner in euren Programme Ordner. Der Pfad sollte danach z.B. so aussehen:
C:\Programme\TV2H264 - Falls euer Programm Ordner z.B. Program Files heißt, müsst ihr zusätzlich im Ordner \\log die Datei logging.conf mit dem Notepade öffnen und folgende Zeile editietern:
args=(os.path.expandvars('%SystemDrive%\\Programme\\TV2H264\\') + '/log/logfile_TV2H264.log', 'w') in
args=(os.path.expandvars('%SystemDrive%\\Program Files\\TV2H264\\') + '/log/logfile_TV2H264.log', 'w') umwandeln - startet den MediaPortal Configuration und öffnet die Config des MyProgramsALT Plugins
Wichtig: Das das Python Skript funktioniert müsst ihr folgende Windows System32 Dateien haben (Bitte überprüfen !!!)
OLEAUT32.dll - C:\Windows\system32\OLEAUT32.dll
USER32.dll - C:\Windows\system32\USER32.dll
SHELL32.dll - C:\Windows\system32\SHELL32.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll
WSOCK32.dll - C:\Windows\system32\WSOCK32.dll
ADVAPI32.dll - C:\Windows\system32\ADVAPI32.dll
WS2_32.dll - C:\Windows\system32\WS2_32.dll
ole32.dll - C:\Windows\system32\ole32.dll
3.1 MyProgramsALT einrichten
Im Unterordner \\Programme\TV2H264\skripte findet ihr die Datei TV2H264.exe (+ Version)
Über Add/Delete aplications erstellt ihr ein ApplicationItem, dass sollte dann wie auf dem Screenshot aussehen.
- Title: Hier könnt ihr einen Namen eingeben, der später in MP angeziegt wird
- Application: Hier wählt ihr die Datei TV2H264.exe aus dem \\Skripte Ordner aus
- App. Arguments: %FILE% steht für den Dateinamen, nicht ändern !!! Hier müsst Ihr euren Records Ordner (der Ordner wo MP eure Aufnahmen speichert, Output Ordner (Ordner wo die konvertierte Datei am Ende erstellt werden soll), Temp Ordner (Temporärer Ordner der zur Umwandlung gebracuht wird, auf genügend Speicherplatz achten !!!!) und die Qualität (s. 4. Qualität, (guter Wert bei HD ist z.B. 25.0, bei SD z.B. 22.0 )) eingeben.
Das ganze sollte dann z.B. so aussehen:
%FILE% D:\Media\Records D:\Media\Incomming D:\Media\Temp 25.0
- alle weiteren Einstllung dem Screenshot entnehmen
Am besten ist ihr erstellt euch 2 Profile, eines für SD und eines für HD, so könnt ihr die Qualität indivduell anpassen (näheres siehe 4. Qualität).
Zu guter letzt müsst ihr noch euren Records Ordner einstellen. Dies geschieht über den Reiter Files. Stellt es wie auf dem folgenden Screenshot dargestellt ist ein.
4. Qualität
Ihr könnt die Konvertierungsqualität über die Zahl die Ihr bei App. Argument einstellt regulieren. Ich hab einige Testläufe durchgeführt und die Ergebnisse könnt Ihr folgender Tabelle entnehmen:
rot = nicht aktzeptabel (weil Datei zu groß oder Bildquali zu schlecht)
gelb = aktzeptabel (kompromiss aus Größe & Qualität)
grün = gut (gute Quali bei guter kompression)
optimale Werte (von mir durch mehrere Test ermittelt):
HD Aufnahmen: 25.0
SD Aufnahmen: 22.0
Aber ihr könnt ja selbst mal ein bischen rum probieren und mir eure Ergebnisse mitteilen
5. Anwendung
Wenn ihr in MP jetzt das MyProgramsALT plugin öffnet sollte es wie folgt aussehen (evtl. andere Bezeichnung je nach euerer Einstellung)
Wenn ihr jetzt eine der beiden Schaltflächen anklickt seht ihr eure *.ts Aufnahmen auswählen, anklick und das Programm läuft dann im Hintergrund ab. Desweiteren gibt es eine Schaltfläche reimport, dadurch könnt ihr eure neuen Aufnahmen in die Datenbak übernehmen. Leider ist hier ein kliner Bug seitens MyProgramsAlt, das er 2 Datenbaknen erstellt.
ACHTUNG !!!
Die Konvertierung kann bis zu 3 Std oder mehr daueren, je nach CPU.
6. Log Datei
Im Unterordner \\TV2H264\log findet ihr die Datei logfile_TV2H264.log. Wenn etwas nicht funktionieren sollte dann postet bitte die Log Dateien.
7. Known Bugs
Damit ihr MP weiterhin nebenher laufen lassen könnt, müsst ihr die Priorität von FFMpeg runter stellen. Das könnt ihr im Taskmanager machen, rechts Klick auf den Prozess FFMpeg --> Priorität festlegen --> niedriger als normal bzw. niedrig (FFMpeg muss natürlcih laufen)
Known Bugs in v 0.1.0
- *.ts Dateien mit nur einem Audio Stream werden nicht verarbeitet (sollte in der nächsten Version gelöst sein)
- *.ts Dateien mit Umlauten (wie ä, ü, ö, etc.) werden nicht verarbeitet, bitte Dateien umbenennen
- Reimport Fkt. von MyProgramsALT erstellt 2 Datenbanken
- Live TV wird beendet wenn man das Skript ausführt
- Automatisches anpassen des Pfades der Datei logging.conf (s. 3. Installation)
changes since v 0.0.9
# nur noch ein Skript für SD und HD Aufnahmen
# Mediainfo Daten auslesen erweitert (Auflösung, Frame Rate)
# Logger Infos erweitert
# Delay formatierung überarbeitet
# kompatibilität zu "komischen" HD Formaten wie es ARD HD, ZDF HD, Arte HD, etc. ausstrahlen