Projectx
Achtung dieser Artikel ist noch in Arbeit und dient vorläufig nur als Vorlage. Dieser Beitrag zu Linux oder der Abschnitt ist in Bearbeitung. Weitere Informationen findest du hier. Der Ersteller arbeitet an dem Beitrag oder Abschnitt und entsorgt den Wartungsbaustein spätestens 3 Tage nach der letzten Bearbeitung. Änderungen außer Rechtschreibkorrekturen ohne Absprache mit dem Urspungsautor sind möglichst zu vermeiden, solange dieser Baustein noch innerhalb der genannten Frist aktiviert ist. |
ProjectX unter Linux! Wie das mit Opensuse geht, ist hier erläutert.
Inhaltsverzeichnis
- 1 Die Eigenschaften von ProjectX
- 2 Versionen
- 3 Download und Installation
- 4 Programmstart Standardversion
- 5 Programmstart CVS-Version
- 6 Die Desktop-Datei
- 7 Die Initialisierungsdatei X.ini
- 8 Die Benutzeroberfläche (GUI) von ProjectX
- 9 Arbeiten mit der GUI von PJX
- 10 Arbeiten mit dem CL-Interface (Kommandozeile) von PJX
- 11 Links
Die Eigenschaften von ProjectX
PJX ist ein Java-Programm, mit dem DVB-Streams demultiplext werden können.
Vorteile
- Eingebaute Schnittmöglichkeit
- Fehlerbereinigung des Streams beim Demultiplexen
- Synchronisation von Audio und Video beim Demultiplexen
- Mögliche Decodierung der Tonspur
Das könnte noch verbessert werden
- Der Schnitt erfolgt leider nur an den I-Frames
- Eine "Tonvorschau" wäre beim Schneiden, gerade von Videoclips, manchmal hilfreich
- Die Bedienungsanleitung ist nicht einmal annäherungsweise aktuell
Versionen
Es gibts zwei Versionen von PJX, die Standardversion und die CVS-Version.
Standardversion
Stabile Basisversion des Tools. Aktuell ist zur Zeit "Project X 0.90.4.00 30.03.2006" (Stand Juni 2008)
CVS-Version
Diese Version gibt den aktuellen Entwicklungsstand des Programms wieder. Im Moment (Juni 2008) ist das "Project X 0.90.4.00.b23/17.02.2008".
Man kann die "b23" als Beta bezeichnen (die 23te). Sie bietet dennoch einige Vorteile, die eine Verwendung empfehlenswert erscheinen lassen:
- Fehlerbereinigungen
- Verbesserung der Bedienoberfläche
- Neue Funktionen
- Drastische Erhöhung der Verarbeitungsgeschwindigkeit
Download und Installation
Standardversion
Herunterladen
Das RPM ist im Packman-Repository enthalten. Ist es noch nicht geschehen, sollte dieses Repository als Online-Updatequelle in Yast hinzugefügt werden.
Installieren
Über Yast
CVS-Version
Für diese Version existieren keine RPMs, sie muß also selbst heruntergeladen und kompiliert werden
Herunterladen
Zum Herunterladen ist das Tool "CVS" erforderlich (Falls noch nicht vorhanden, vorher mit Yast installieren).
In einer Konsole wird danach folgender Befehl eingegeben:
cvs -z3 -d:pserver:anonymous@project-x.cvs.sourceforge.net:/cvsroot/project-x co -P Project-X
Dadurch wird im Heimatverzeichnis des Users ein Ordner mit dam Namen "Project-X" erstellt, in den die notwendigen Dateien aus dem CVS-Repository hineinkopiert werden.
Kompilieren
- Ordner "Project-X" öffnen
- Datei "build.sh" ausführbar machen
- Eine Konsole öffnen und die Datei "build.sh" ausführen.
Dadurch wird die eigentliche Programmdatei "ProjectX.jar" erzeugt, die nun noch ausführbar gemacht werden muß.
Programmstart Standardversion
OpenSuse 10.3 (KDE 3.5.x)
Mit Hilfe des KDE-Startmenue's
OpenSuse 11.0 (KDE 3.5.x)
Mit Hilfe des KDE-Startmenue's
OpenSuse 11.0 (KDE 4.x)
Mit Hilfe des KDE-Startmenue's. Sollte es da Probleme geben, kann von Hand eine Desktop-Datei erstellt werden.
Programmstart CVS-Version
bequem
Durch Klicken auf das Icon der Desktop-Datei
nicht ganz so bequem
- Wechseln in den Installationsordner von PJX.
- Rechtsklick auf "ProjectX.jar"
- Öffnen mit "java -jar"
Die Desktop-Datei
Um den Programmstart komfortabel zu gestalten, gerade bei der CVS-Version oder wenn's mit dem KDE-Startmenue nicht funktionieren will, kann eine Desktop-Datei erstellt werden. Durch Linksklicken auf diese Datei legt PJX dann los!
KDE 3.5.x
- Rechtsklick auf die Arbeitsoberfläche
- Neu erstellen -Verknüpfung zu Programm: Namen angeben, unter dem das Icon danach auf dem Bildschirm erscheinen soll (Beispiel: ProjectX_CVS)
- Links auf das Zahnrad klicken, um ein Bild für das Icon auszuwählen
- Den Reiter "Programm" auswählen und unter "Befehl" den Programmnamen mit vollständiger Pfadangabe eintragen (Beispiel: java -jar ~/Project-X/ProjectX.jar für die CVS-Version)
- Einige Male auf OK drücken
KDE 4.x
- Den Dateimanager (Dolphin) öffnen
- Im persönlichen Ordner das Verzeichnis "Desktop" öffnen. Es öffnet sich ein Fenster.
- Rechtsklick auf die Arbeitsfläche dieses Fensters
- Neu erstellen -Verknüpfung zu Programm: Namen angeben, unter dem das Icon danach auf dem Bildschirm erscheinen soll (Beispiel: ProjectX_CVS)
- Links auf das Zahnrad klicken, um ein Bild für das Icon auszuwählen
- Den Reiter "Programm" auswählen und unter "Befehl" den Programmnamen mit vollständiger Pfadangabe eintragen (Beispiel: java -jar ~/Project-X/ProjectX.jar)
- Einige Male auf OK drücken
- Die Desktop-Datei auf die Arbeitsoberfläche von KDE 4,1 (Plasma) ziehen
Die Initialisierungsdatei X.ini
In dieser Datei werden PJX alle relevanten Einstellungen abgelegt, um beim nächsten Start wieder zur Verfügung zu stehen
Speicherort der X.ini ändern
Die Initialisierungdatei wird normalerweise im persönlichen Home-Ordner angelegt. Es kann aber auch ein anderer Ort festgelegt werden. und das geht so:
Beim Start über die Desktop-Datei
- Rechtsklick auf Datei projectx.desktop
- In den "Eigenschaften" den Reiter "Programm" anwählen
- In das Feld "Arbeitsordner" den gewünschten zukünftigen Standort von X.ini eintragen (Beispiel: ~/Project-X)
- OK drücken
Die Benutzeroberfläche (GUI) von ProjectX
Dies ist die Oberfläche der CVS-Version (b23), auf die im Folgenden etwas näher eingegangen wird.
Arbeiten mit der GUI von PJX
An einigen Beispielen soll das Arbeiten mit der GUI von PJX erläutert werden. Und zwar nehme ich, weil sie mir so gefällt, die CVS-Version dazu:
Der erste Start
Startet man zum ersten Mal PJX, so wird man um Zustimmung zu der Linzenz gebeten, die mit "I agree" beantwortet werden kann. Danach steht die GUI zur Verfügung, allerdings
auf Englisch.
Das ist schnell über das Menue umgestellt: Sprache - de
Drückt man nun im Menue auf "Einstellungen", so sieht man, daß standardmäßig angewählt ist, daß die getanen Einstellungen beim Verlassen von PJX gespeichert werden sollen
(in der X.ini).
Das bedeutet, daß beim nächsten Starten das Programm nicht mehr nach der Linzenz fragt und gleich auf Deutsch zur Verfügung steht.
In der X.ini finden sich nun folgende Eintragungen:
# Project-X INI # ProjectX 0.90.4.00.b23 / 17.02.2008 # Application Application.Agreement=1 Application.Language=de # WindowPosition WindowPosition.Main.Height=670 WindowPosition.Main.Width=866 WindowPosition.Main.X=50 WindowPosition.Main.Y=50
Soweit alles klar! Oder?
Demultiplexen einer DVB-Aufnahme
Sehen wir uns als erstes einige Grundeinstellungen an:
Links oben ist ein Feld, das mit dem aussagekräftigen Namen "Prozess" beschrieben ist. In diesem Feld drücken wir den Schalter "anpassen.." Im nun erscheinenden Prozessfenster sehen wir das als Standard die Aktion "demultiplex" schon ausgewählt (mit einem Haken versehen) ist. Da ist also keine Änderung notwendig, das können wir so lassen.
In der X.ini wird sich nichts geändert haben. sie ist noch so frisch, wie nach dem ersten Start.
Hätten wir als Aktion aber "zu TS" ausgewählt, würde jetzt (nach Beenden von PJX) in der Konfigurationsdatei zusätzlich folgender Eintrag erscheinen:
# MainPanel MainPanel.ConversionMode=4
Hätten wir nun bemerkt, daß wir uns nur vertippt haben, und hätten wir den Haken wieder bei "demultiplex" gemacht, so würde in unserer X.ini aus dem Eintrag MainPanel.ConversionMode=4 ein MainPanel.ConversionMode=0 geworden sein. Alternativ hätten wir natürlich in der X.ini diesen Eintrag auch löschen können, denn "demultiplexen" ist ja sowieso die Standardeinstellung.
Wird es langsam klarer, wie das mit der X.ini funktioniert? Wir bleiben dran...
Als nächstes wollen wir die demuxten Daten nicht irgendwohin schreiben sondern in einen klar definierten Zielordner (Ich nehme mal: ~/filme/dvd_tmp). Dieser Oedner sollte natürlich zuerst angelegt werden. Sonst kann man ja nichts hineinschreiben, wenn es ihn nicht gibt.
Also fügen wir rechts unten im Hauptfenster diesen Ordner zur Liste der Ausgabepfade hinzu und sehen, daß die X.ini neue Einträge hat:
Application.OutputDirectories.0=/home/meinName/filme/dvd_tmp Application.OutputDirectory=/home/meinName/filme/dvd_tmp
Was bleibt noch zu tun? Ganz einfach: Der zu bearbeitende Film wird in die dateiliste eingetragen (Den Ordner-Icon mit dem grünen + drücken), auf Quickstart drücken, etwas warten und dann das Ergebnis in dvd_tmp ansehen.
Schneiden einer DVB-Aufnahme
Wenn wir schon demultiplexen, können wir eigentlich auch gleich die Werbung aus dem Film entfernen:
Also, erstmal den Film laden. Wie das geht, ist ja bekannt. Dann im Hauptfenster auf den Reiter "Schnittsteuerung" drücken. Und nun kann die Sucherei losgehen. Das ist aber gar nicht so schwierig, mit ein bißchen Übung.
Zuerst wählen wir also unten im Hauptfenster den Reiter "Schnittsteuerung" an.
Über die Navigation bzw. über den Laufbalken kann nun zum ersten Schnittpunkt gefahren werden. Das ist der Beginn des ersten Werbeblocks. Dieser Schnittpunkt wird hinzugefügt über den Film-Icon mit dem grünen "+" im Fenster "Schnittpunkte". Weiter, das Ende der Werbung gesucht und diesen Schnittpunkt, wie gerade beschrieben, hinzugefügt. Und so weiter, bis alle Schnittpunkte festgelegt sind.
Auf dem Balken unter dem Vorschaubild sehen wir den Erfolg unserer Arbeit: Was grün ist, bleibt drin und das rote wird herausgeschnitten.
Zufrieden mit der Auswahl drücken wir auf "Quickstart" und der Film wird geschnitten, demultiplext und das Ergebnis nach dvd_tmp geschrieben.
Arbeiten mit dem CL-Interface (Kommandozeile) von PJX
Zur Erläuterung der Koomanndozeilenbefehle stelle ich hier einmal folgende Anweisung vor:
java -jar $pjx -demux -gui -ini $x_ini -out $tmp_pfad -name film "$quelldatei"
Und hier die Erklärung dazu:
- java -jar
Aufruf von Java (PJX ist ein Java_Programm)
- $pjx
Pfad zur Datei ProjectX.jar
- -demux
es wird demultiplext
- -gui
Zusätzlich soll die Bedienoberfläche von PJX gestartet werden, vielleicht um Schneiden zu können.
- $x_ini
In diesem Pfad befindet die Konfigurationsdatei X.ini
- -out $tmp_pfad
In dieses Verzeichnis wird das Ergebnis gespeichert
- -name film
Das Ergebnis bekpommt den Dateinamen "film"
- $quelldatei
Datei, welche bearbeitet werden soll.
Die "Dinger" mit dem $ davor sind übrigens selbsterstellte Variablen. Sie stehen stellvertretend für ihren Inhalt. Ausgeschrieben könnte obiger Befehl also so aussehen:
java -jar /home/wo_ich_bin/Project-X/projectX.jar -demux -gui -ini /home/wo_ich_bin/Project-X/X.ini -out /filmbearbeitung/tmp -name film /filmbearbeitung/aufnahme/aufgenommener_film.m2t
Links
- Mögliche Optionen können hier nachgelesen werden: http://forum.dvbtechnics.info/showpost.php?p=10899&postcount=4
- Eine Anwendung zur DVB-Weiterverarbeitung mit Hilfe eines Shellscripts: dvb_wiki_script