Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Hinweise und Tipps
#1
Project X

Beim digitalen Fernsehen wird das Fernsehbild vor der Ausstrahlung komprimiert und als digitaler Datenstrom (MPEG2 Transport Stream) gesendet. Der MPEG2 Transport Stream gehört zwar zur Familie der MPEG2 Standards, sollte aber vor dem Weiterverarbeiten konvertiert werden, da der Aufbau eines MPEG2 Transport Stream anders ist.

Hier kommt das Programm Project X ins Spiel. Die Arbeitsweise ist ähnlich die eines MPEG2 TS Hardware Decoders, dabei zerlegt Project X den MPEG2 Transport Stream in seine Bestandteile (MPEG Elementary Streams - Video, Audio und sonstige Daten). Beim Trennen wird der MPEG2 Transport Stream auf Fehler im Stream überprüft und synchronisiert. Beim Konvertieren findet dagegen nur eine grobe Prüfung statt.

Es werden folgende Stream Formate unterstützt (sowohl Single- als auch Multiple TS und PS):
  • DVB Transport Stream (DVB TS), SPTS+MPTS (Multiple Program Transport Stream) (div. PVR Formate)
  • Packet Video Audio (PVA, PSV, PSA, PAV)
  • MPEG Program/System Stream (MPEG1/2 PS)
  • Linux Video Disc Recorder (Linux VDR)
  • Packetized Elementary Stream (PES RAW Streams)
  • Elementary Stream (ES Streams)

Dabei werden, soweit möglich, alle gängigen europäischen DVB - Bild-, Ton- und Untertitelformate verarbeitet.

Project X ist ein freies Bildungs- und Testprojekt und basiert auf der Programmiersprache Java.

Project X ist in Form von OpenSource Quellcode verfügbar und muß vom Benutzer bei Bedarf selbst kompiliert werden.
Wer sich diese Aufgabe jedoch nicht zutraut, sollte ehrlich zu sich selbst sein und Aufwand/Nutzen durch die nötige Einarbeitung für sich abwägen.

Es kann sowohl über ein GUI (Graphical User Interface) als auch CLI (Command Line Interface) bedient werden.
Die optimale Anwendung der verschiedenen Optionen setzt beim Benutzer gewisse Kenntnisse im Aufbau von Streamdaten voraus. Einsteiger sollten sich daher gut überlegen, ob nicht andere Applikationen besser für sie geeignet sind.

Hinweise zum Kompilieren
allgemeine Tipps
CL-Interface



#2
Um ausführbaren Programmcode von ProjectX zu erhalten, müssen die erhaltenen Quellcodedateien zuvor kompiliert werden. Dies geschieht idealerweise auf dem Computer, auf dem das Programm später ausgeführt werden soll, ist aber nicht Bedingung. (es ist vorteilhaft, wenn Entwicklungs- und Ausführungsumgebung identisch sind)

1)
Zunächst muss (einmalig) ein Java-SDK (Software Development Kit = Software Entwicklungs Set) bzw. JDK (Java Development Kit = Java Entwicklungs Set) -Komplettpaket für Entwicklung und Ausführung- geladen und installiert werden, das am besten zum vorhandenen Betriebssystem passt.

ProjectX erfordert mindestens die Versionsstufe 1.2.2. Diese gibt es bspw. im Archiv von Sun Microsystems, Inc. Wähle unter "Java 2 Platform Standard Edition (J2SE)" das entsprechende J2SDK-Paket. Die Downloadgröße betragt etwa 20MB.
Wer die z.Zt. neueste Version 5.0 benutzen möchte, erhält diese bspw. in der aktuellen Download-Sektion von Sun Microsystems, Inc. Die Downloadgröße betragt für Windows etwa 55MB, für Linux etwa 45MB. Es wird das JDK-Paket benötigt.
Grundsätzlich ist ProjectX mit jeder Version ab 1.2.2 lauffähig. Alle Komponenten, die zur späteren Ausführung benötigt werden, sind in dem J2SDK bzw. JDK-Paket schon enthalten und werden mit installiert.

Mac OS X enthält u.U. bereits alle nötigen Komponenten.

Tip: Es können mehrere Versionen parallel verwendet werden, die letztinstallierte ist dabei die "Haupt"version bei Ausführung. Die anderen können jedoch z.B. durch Pfadvorgabe in Verknüpfungen erzwungen werden.
Die allermeisten Probleme hängen mit inkompatiblen Grafiktreibern oder nicht eindeutig getrennten Java-Installationen zusammen.

2)
ProjectX von sourceforge.net laden und entpacken (z.B. nach c:\projektx). Die Ordnerstruktur muss so wie erstellt beibehalten werden!

3)
Patches, falls vorhanden, von sourceforge.net (ganz unten) laden und in das gleiche Verzeichnis wie oben entpacken. (evtl. auch nach dem Entpacken verschieben) Dabei werden teilweise Dateien überschrieben.
Gleiches gilt für die Erneuerung zusätzlicher Bibliotheken im "/lib" Unterordner, bspw. "commons-net" und "oro" von Apache Org.

4) (plattformspezifisch)
Im ProjectX-Verzeichnis befindet sich eine "build.bat". Diese Datei zum Bearbeiten öffnen (rechte Maustaste). Dann den Eintrag "set JAVA_HOME=" auf Deine Java-Installation anpassen, z.B. "set JAVA_HOME=C:\Programme\Java\jdk1.5.0_03". Die Änderungen speichern.
Bei Erneuerung der zusätzlichen Bibliotheken im "/lib" Unterordner sind u.U. ebenso Anpassungen der Dateinamen in der Datei "manifest.mf" notwendig.

5) (plattformspezifisch)
Die build.bat starten, es wird dann kompiliert. Je nach Java Version werden mehr oder weniger 'Warnmeldungen' ausgegeben, die bis datum unbedenklich sind.
Nach Fertigstellung können die Verzeichnisse "build" und "src" gelöscht werden. (das erschwert allerdings das spätere Einspielen weiterer Patches)

6) (plattformspezifisch)
ProjectX kann jetzt gestartet werden. Hierzu einfach auf die ProjectX.jar klicken. (wenn statt ProjectX WinRAR startet, gehe bei WinRAR auf "Optionen", "Einstellungen", "Integration" und entferne dort den Haken vor "JAR"). Wird es anderweitig aufgerufen, können Fehler beim Starten auftreten, die zumeist auf fehlende Ordner/falsche Pfade zurückzuführen sind.
#3
Hinweis:
man kann sich weitergehenden Problemen nur annehmen, wenn diese auch im Forum geäußert werden. Andernfalls werden diese ungelöst bleiben.
Die Fülle an verfügbarer Hard- und Software mit all ihren Eigenheiten zum Mitschnitt von DVB-Aufnahmen erfordert u.U. eine Abweichung von den Allgemeineinstellungen in Pj. X .


Stand V 0.81.7

1.) Ich bin gehörlos und möchte gern die Teletext-Untertitel aus einer aufgezeichneten Sendung mit auf meine DVD übernehmen.

siehe auch http://forum.dvbtechnics.info/showthread...ostcount=5

Voraussetzungen:
1) Untertitel werden im Teletext mit übertragen. (z.B. Tafel 149, 150, 888, ...)
2) Das Aufzeichnungsprogramm muss in der Lage sein, den Bild-/Ton-und Teletext-Datenstrom unverändert als separate Datei(en) oder alles inklusive aufzuzeichnen.
3) Die Sendeanstalten übertragen die zur späteren Bild-Synchronisation wichtigen Zeitangaben. Nicht alle tun dies oder nicht richtig!
4) Ein Authoringprogramm, dass eines der Untertitelformate unterstützt.

Vorgehensweise:
1) Aufzeichnen der Sendung.
2) Einladen der Dateien als eine Collection in Projekt X, wobei eine/mehrere separate Teletextdatei(en) zuletzt stehen.
3) im Reiter {teletext}die Tafel(n) mit den Untertiteln von Interesse (max. 6) auswählen bzw. eingeben.
Zusätzlich das Ausgabeformat entsprechend dem Authoringprogramm auswählen.
4) falls nötig, Schnittpunkte über die {collection specials} setzen und weitere Einstellungen vornehmen.
5) im Reiter {main} {demux} wählen und {Go}.
6) DVD mit den neu erzeugten Dateien authoren.

Hinweise:
Der einfachste und sicherste Weg für diesen Zweck ist die Kette: Aufnahme -> Projekt X -> ifoedit -> DVD.
Das im Ergebnis kein Startmenü vorliegt, lässt sich verschmerzen.

vorher ist jedoch einmalig Einiges einzustellen und das Ergebnis zu testen:
1) in Projekt X im Reiter {teletext} das Format {SUP} wählen, dazu {show preview} aktivieren und einen {Textfont} wählen.
2) entsprechend o.g. Vorgehensweise den Vorgang starten.
3) in der {subtitle preview} ist zu subjektiv beurteilen, ob einem die gewählte Schriftart zusagt und der Text im allgemeinen den schwarzen Hintergrund gut ausfüllt jedoch nicht überschreibt. Entsprechend sind die speziellen SUP-Werte lt. Pj.X Dokumentation zu variieren.
+ Es ist zu beachten, das die Platzierung der UTs im Bild von der Auflösung der Bilddatei abhängen! Die Vorgaben entsprechen hierbei alle dem üblichen D1 Standard von 720*576 .
4) in ifoedit sind nun nacheinander die Videodatei, Audiodatei und UT-Datei ( xyz[X].sup ) und evtl. Kapiteldatei zu laden und mit {ok} als DVD zu kompilieren.
5) Da die erzeugten .IFO-Dateien noch Standard-Farbwerte für Menüs/Untertitel enthalten, müssen diese -abgesehen von anderen notwendigen Einstellungen, die jedoch nicht mit den UTs im Zusammenhang stehen- im Nachhinein für die Teletextfarben angepasst werden.
+ zusätzlich zu den erzeugten .IFOs ist noch, falls vorhanden, eine spezielle erstellte .IFO mit den 'neuen' Farben zu laden und dort im Menü VTS_PGCITI der Eintrag VTS_PGC_1 zu wählen und dann im ifoedit-Menü der Punkt {subtitle colors} {copy colors..}, andernfalls müssen alle Farbwerte manuell eingegeben werden.
Anm: mit der V.081.7 int02 wurde die .sup Ausgabe überarbeitet und gibt nun immer eine eigene zu verwendene .sup.IFO mit den entsprechenden Farbwerten aus.
+ In der neuen VTS_xx_0.IFO ist derselbe Eintrag zu wählen, dann jedoch statt {copy...} {paste colors...}! Die Änderungen sind in dieser .IFO zu speichern.
6) das erzeugte Titleset auf eine -RW brennen bzw. in einem Softwarespieler testen.

Besonderheiten:
1) das SUP und SSA Format übernehmen die Vordergrundfarben weitestgehend so wie im Teletext. Im SUP Format sind jedoch nur 4 Farben je Einblendung zulässig (zumeist halbtransparenter Text-Hintergrund eingeschlossen), wodurch sich ggfs. zwangsläufig Änderungen in der Darstellung ergeben. Ab der V.081.6 int10 werden Schriften, die im Original nicht schwarz hinterlegt sind, zur besseren Unterscheidung kursiv dargestellt, so es die gewählte Schriftart auch unterstützt.
2) Synchronität: (siehe auch Voraussetzung 3)
+ abhängig von Sender und Tafel, sind die Ergebnisse tlw. sehr unterschiedlich.
+ unmöglich ist es derzeit mangels notwendiger Daten bei: Kabel1, NDR, ...
Anm: mit der V.081.7 wurde die Teletextausgabe überarbeitet und sollte nun (korrekte Insertion in den jeweiligen DPC's vorausgesetzt) genauso synchron sein wie bei der Live-ausgabe (Schnitte eingeschlossen)
3) auch Untertitel unterliegen dem Urheberrecht. Bei der weiteren Verwendung ist das zu beachten.


2.) Ich habe eine 2 Kanalton Aufnahme von z.B. Worldnet, eine mit Audiodescription z.B. von 3sat bzw. eine, bei der zwar in 2Kanal gesendet wird, mich aber nur ein Kanal interessiert, und möchte die Kanäle trennen.

Dazu gibt es in der Kartei {audio} die Option {2Kanal zu 2*mono}.
Das funktioniert allerdings nur beim Ausgangsformat: MPEG-1 Audio Layer2 48kHz zw. 112...384kbps.
Dabei wird die Bitrate in den neuen 1Kanal Dateien so niedrig wie möglich, aber konstant gehalten.
Geschehen kann das bei allen Bearbeitungsschritten, die eine MPEG Audiodatei überprüfen.
Wenn bei bestimmten Dateien die Zielbitrate für 1Kanal ausserhalb zulässiger Werte liegt, werden diese automatisch ins StereoFormat gewandelt.


3.) Ich habe eine Aufnahme, die (mehrfach) zwischen verschiedenen Bitraten und/oder mono/stereo etc. wechselt. Beim Wandeln nach *.wav oä. bricht mein Programm immer ab oder sie klingt wie "Mickey Mouse".

Dazu gibt es in der Kartei {audio} die Optionen {single to ....}.
Möchte man eine Stereodatei, ist die Option {single to stereo} bzw. {single to jointstereo} zu wählen.
Dabei werden mono-Teile zu stereo(2fach mono) gewandelt. Die Ausgangsdatei erhält dabei über die gesamte Länge eine einheitliche Bitrate (wenn nötig auch der bereits stereo-Teil).
Das funktioniert allerdings nur beim Ausgangsformat: MPEG-1 Audio Layer2 48kHz zw. 56...192kbps.
Geschehen kann das bei allen Bearbeitungsschritten, die eine MPEG Audiodatei überprüfen.

Reicht stattdessen eine Monodatei, ist die Option {2channel to 2*single} zu wählen.
Mono-Teile werden dabei direkt kopiert und die Bitrate/Modi wenn nötig angepasst, 2kanalige wie beschrieben gewandelt.

Enthält die Aufnahme von der Wandlung nicht unterstützte Frames, wird die gesamte Wandlung nicht durchgeführt.
Stattdessen kann dies dann aber über die Wandlung nach PCM erfolgen.


4.) Ich habe eine (S)VCD, und dort werden massenhaft Fehler gemeldet

Pj. X ist in erster Linie für DVB Daten gedacht.
(S)VCD sind zwar MPEG Daten, aber in einem speziellen CD-XA Container speziell für transportable Datenträger verpackt und müssen daher vorher entpackt werden.
Weiters ist u.U. bei {specials2} {get only enclosed PES packs..} zu deaktivieren.
(S)VCDs nach dem jap./amerik. Standard werden jedoch zudem noch nicht unterstützt.


5.) Ich habe eine PVA-Aufnahme mit vielen Audiofehlern (inserts) in der 'Hauptspur'. Das Abspielen scheint aber fehlerfrei

Es ist bei {specials2} {strictly PVA specs for Audio..} zu aktivieren.
Sollte so überhaupt keine Audiospur gefunden werden, erzeugt das Aufzeichnungsprogramm keine konforme PVA-Tonspur.
Treten die Fehler bei aktivierter Option auf, erzeugt das Aufzeichnungsprogramm ebenso keine konforme PVA-Tonspur, jedoch läßt sich das mit dem Deaktivieren der Option umgehen.


6.) Ich habe eine PVA-Aufnahme mit mehreren Tonspuren, jedoch mit vielen Audiofehlern (inserts) nur in den zusätzlichen. Die 'Hauptspur' ist o.k.

Es ist bei {main} {i} einmal zu drücken.
Anschließend nacheinander die in der darunter erstellten Liste eine ID nach der anderen (von den zusätzl. Tonspuren) zu wählen und mit {e} in eine neue Datei zu speichern.
Die neuen Dateien dann der aktuellen Collection hinzufügen und den normalen Vorgang starten.
Die in der PVA-Datei noch vorhandenen Tonspuren sollten vorher über die spezielle PID-Liste abgewählt werden.


8.) Ich habe eine Radio-Aufnahme, die an manchen Stellen Störungen hat. Beim Demux werden diese Stellen mit Stille o.ä. zum Sync-Erhalt aufgefüllt. Kann man das verhindern?

Es ist bei {specials2} {take only 1st audio PTS...} zu aktivieren. Dann werden die Fehlstellen ohne weiteren Ausgleich der Audiospur-eigenen Zeitlinie übergangen.

...
#4
CL-Interface:
[Optionen] <Quelldatei 1>...[<Quelldatei x>]

Anm:
CL lädt alle GUI Komponenten, ohne diese jedoch anzuzeigen (Ausnahme [-g]).
Eingaben über das CL-I gelten als 1 Job.


keine Optionen
startet das GUI
es wird die Standard-ini-Datei im aktuellen Pfad gelesen (falls vorhanden) und beim Beenden überschrieben.

Optionen:
-c <ini_file>
die zum Laden mit vollständigem Pfad anzugebene <ini-Datei> überschreibt alle Standardeinstellungen mit den darin enthaltenen.
es müssen nicht alle Settings enthalten sein, bei fehlenden wird der Standard gesetzt.
alle Optionen des GUI einschließlich post-commands sind direkt über die ini-Datei steuerbar, ausgenommen Benutzervariablen wie [-n,p,i]/Quelldatei..

-dvx1
setzt die 2.Option zur Erzeugung einer .d2v Projektdatei

-dvx2
setzt die 2.Option zur Erzeugung einer .d2v Projektdatei
setzt die Option zum Anfügen eines RIFF Wave Headers bei AC3 Dateien

-dvx3
setzt die 2.Option zur Erzeugung einer .d2v Projektdatei
setzt die Option zum Anfügen eines RIFF Wave Headers bei MPEG Audio Dateien

-dvx4
setzt die 2.Option zur Erzeugung einer .d2v Projektdatei
setzt die Option zum Anfügen eines RIFF Wave Headers bei AC3 Dateien
setzt die Option zum Anfügen eines RIFF Wave Headers bei MPEG Audio Dateien

die o.g. Optionen können nicht gemeinsam verwendet werden!
die u.g. sind wahlfrei, müssen aber den o.g. (falls diese optional verwendet werden) oder direkt dem Programmnamen folgen.


-o <path>
überschreibt die aktuellen Einstellungen zum <Ausgabepfad>, der vollständig angegeben werden muss.

-n <filename>
erzwingt für alle erstellten Dateien diesen <Basisnamen> (ohne Pfad).
(Option ist im GUI nicht verfügbar)

-p <file>
die zum Laden mit vollständigem Pfad anzugebene <cut-Datei> (text, zeilenorientiert) übergibt die vorher festgelegten Schnittpunkte.
Auswertung erfolgt entsprechend dem aktuellen Schnitt-Modus -> ini-Datei, std = bytepos. cut

-i <token1,token2,..>
übergibt vorausgewählte (P)IDs zur gefilterten Bearbeitung, mehrere getrennt mit Komma, die dann exklusiv verwendet werden.

-l
erstellt die Standard Logdatei

-g
startet das GUI mit allen übergebenen Parametern anstatt den Job auf der Kommandozeile zu starten.
beim Beenden werden Änderungen im GUI, wie auch über das CLI, nicht in der ini-Datei gespeichert.

<Quelldatei 1..x>
die Quelldateien einschließlich Pfad dieses einen Jobs müssen am Ende in der vorgesehen Bearbeitungsreihenfolge stehen.


Zum Erzeugen einer bestimmten ini-Datei alle Grundeinstellungen im GUI vornehmen und nach Programmende unter einem anderen (beliebigen) Namen speichern.

----------------
ab V 0.90

Hinweis: CL laedt kein GUI (Swing-Klassen), ausser bei Option [-gui]

<ohne Optionen> ...startet die graphische Oberflaeche

Reihenfolge der Kommandostrings ist beliebig, nicht erkannte Optionen gelten als Eingabedatei

Optionen:
[-ini <Pfad + INI-Datei>] ..verwendet eine andere Konfigurationsdatei als die Standard X.ini
[-dvx1] ..erstelle eine .d2v Projektdatei beim demuxen
[-dvx2] ..erstelle eine .d2v Projektdatei + .ac3.wav (RIFF WAVE Header)
[-dvx3] ..erstelle eine .d2v Projektdatei + .mpa.wav (RIFF WAVE Header)
[-dvx4] ..erstelle eine .d2v Projektdatei + .ac3.wav + mpa.wav (RIFF WAVE Header)
[-out <Pfad>] ..benutze diesen Pfad als Ausgabepfad
[-name <Dateiname>] ..benutze diesen Dateinamen fuer Ausgabedatei
[-cut <Datei>] ..nutze diese Datei als Schnittliste
[-id <tokens>] ..benutze nur diese (P)IDs, getrennt durch Komma ","
[-gui] ..oeffne GUI mit den angegebenen CLI Optionen
[-log] ..schreibe eine normale Logdatei
[-saveini] ..bei CLI Aufruf geaenderte Einstellungen speichern
[-split <xxx>] ..Ausgabe teilen bei xxx MB
[-demux, -tom2p, -topva, -tovdr, -tots, -filter] ..Aktionstypen

... weitere möglich
#5
Ausgabestatistik der Logausgabe

Video:
video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
exportierte Bilder

video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
nachträglich durch Schnitt bereinigte GOPs
Ohne spezielle Behandlung des dem Schnitt folgenden GOPs kommt es zu Klötzchenbildung an dieser Stelle (die aber nicht zwangsläufig auffallen).

video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
GOPs mit nur einem PTS (fürs I-Frame) detektiert. (schlecht für GOPprüfung)

video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
geänderte Bitrate in GOPs

video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
nicht geänderte Bitrate in GOPs (original)

video: fr/ct/1p/cg/og/dg 371/1/0/31/0/0 100% 7741164
ignorierte GOPs (dropped)


Audio:
=> src_audio: AC-3,CM,3/2(5.1),48000Hz,448kbps @ 00:00:00.000
=> src_audio: MPEG-1,Layer2,48000Hz,stereo,192kbps,CRC @ 00:00:00.000
für diese Stelle im Zielfile wurde im Quellfile eine Modi Änderung erkannt.

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
geschriebene Audioframes

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
vorn angefügte Frames, weil zu Beginn des Videofiles noch kein Audio war

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
übersprungende Frames, ein AudioPES Paket hat mehr Frames als es von der Zeitlinie her haben dürfte

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
bei Lücken eingefügte Frames

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
am Ende angefügte Frames, weil das original Audio keine Frames mehr hatte.
Für den Sync ist das nicht unbedingt nötig.

audio frames: wri/pre/skip/ins/add 618/0/0/0/0 @ 00:00:14.832
Gesamtlänge


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  User-Tipps zu PjX Einstellungen dvb.matt 16 77.277 25.02.2007, 05:51
Letzter Beitrag: mr.tommi
  gute Tipps für einen Neuling jayteeone 2 1.576 28.02.2006, 19:56
Letzter Beitrag: hagge
  Hinweise: Project X Version 0.90 pre dvb.matt 76 24.179 02.01.2006, 20:28
Letzter Beitrag: OoZooN

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste