transcode
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
transcode ist eine Sammlung von Kommandozeilenprogrammen, mit denen man Audio- und Videodateien hinsichtlich ihres Codec oder ihres Containerformats umwandeln (transcodieren) kann.
Hinweis:
Das Projekt wurde wahrscheinlich eingestellt. Es funktioniert zwar und befindet sich daher noch in den Quellen; die fehlende Weiterentwicklung (seit 2012) macht sich allerdings bei der Unterstützung neuerer Codecs, wie zB H.264 oder H.265 bemerkbar, diese fehlen schlicht.
Bearbeitet werden können:
MPEG-1/2
MPEG-4(-part 3) (auch DivX- und XviD-Varianten)
Quicktime / MPEG-PS (DVD) (nur dekodieren, nicht schreiben)
MPEG-1-layer-1/2/3 Audio (z.B. MP3)
AC3 audio
Zusätzlich besteht die Möglichkeit, verschiedene Filter anzuwenden:
Video De-interlacing
Audio Resampling
Änderung der Bildrate
Bildglättung
Schneiden
Transcode kann DVDs direkt importieren oder von Video4Linux-Geräten (einschließlich "V4L2 video capturing") aufnehmen. Falls man statt eines Kommandozeilenprogramms lieber mit einer grafischen Oberfläche arbeiten möchte, kann man auf das Programm dvd::rip ausweichen - das allerdings nur für DVDs geeignet ist. Eine andere Alternative ist beispielsweise WinFF (siehe auch Videodateien umwandeln).
Installation¶
Transcode kann bis Ubuntu 18.04 direkt aus den offiziellen Paketquellen installiert werden [1]
transcode (multiverse, bis 18.04)
Befehl zum Installieren der Pakete:
sudo apt-get install transcode
Oder mit apturl installieren, Link: apt://transcode
Enthalten sind verschiedene Plugins, die auch separat aus anderen Quellen aktualisiert werden können (siehe unten).
Infos zu den Plugins¶
tcmodinfo -i Plugin-Name
kann man Informationen wie Versionsbezeichnung, Kurzbeschreibung und Auflistung verfügbarer Optionen zum installierten Plugin erhalten.
Benutzung¶
transcode lagert alle (auch grundlegende) Funktionen in Module aus.
Eingabe
Verarbeitung/ Veränderung
Ausgabe
Grundsätzlich ist der Aufbau der Kommandozeile wie folgt [3]:
transcode -i QUELLE - OPTION(EN) -o ZIEL
Parameter | |
verfügbare Optionen | Bedeutung |
-i sourcevideo | Dateiname der Videodatei (sourcevideo ) |
-p sourceaudio | Dateiname einer separaten Audiodatei für dieses Video (sourceaudio ) |
-x vmod[,amod] | erlaubt manuelle Eingabe der zu verwendenden Module (Codecs) für Video- und [,audio]-Import (fakultativ) |
-y vmod[,amod] | erlaubt manuelle Eingabe der zu verwendenden Module (Codecs) für Video- und [,audio]-Export |
-J filter | für (optional) anzuwendende Filter (s.u.) |
-o destvideo | Dateiname des Ergebnisvideos (destvideo) |
Die Reihenfolge der Optionen spielt keine Rolle.
Eingabemodule aktiviert mit der Option -x | |
verfügbare Optionen | Bedeutung |
dvd | liest eine Video-DVD ein. Die Devicenummer oder der eingehängte Ordner muss nach der Option -i angegeben sein. |
vob | liest eine .vob-Datei ein. Diese kann zuvor mit dem Programm tccat (Bestandteil von transcode –> siehe unten) erstellt werden. |
DVD rippen¶
Möchte man das auf der Kommandozeile durchführen, geht das mit tccat
aus den Transcode-utilities:
tccat -i /dev/sr0 -T1,-1 | tcextract -t vob -x mpeg2 | tcrequant -f 2 > /tmp/ofile.m2v
/dev/sr0
steht hier für das DVD-Laufwerk, muss also ggf. angepasst werden.
Beispiele¶
divx in mpeg2 transkodieren¶
transcode -i QUELLDATEI -V -y ffmpeg -F mpeg2video -E 44100 -b 128 -o ZIELDATEI
Größenänderung eines Videos¶
Größe des Quellvideos sei 624x352
Größe des Zielvideos soll 704x480 werden
Vergrößerungsfaktor aus der breiteren Seite bestimmen: 704/624=1.128205
Schmalere Seite multiplizieren, damit das Seitenverhältnis unverändert bleibt: 1.12805_x352=397.12805
Maße der Zieldatei sind also 704x397. Das ergibt folgende transcode-Option:
-Z 704x397
An der schmaleren Seite kommen 480-397=83 Pixel hinzu, die zur Hälfte oben bzw. unten angesetzt werden sollen. Daraus ergibt sich -
Y -41,0,-42,0
Im Ergebnis lautet die Kommandoeingabe:
transcode -i QUELLVIDEO -y ffmpeg -F mpeg2video -Z 704x397 -Y -41,0,-42,0 --export_frc 4 -E 44100 -b 128 -o TITEL_DER_VIDEO_DVD
Beschneiden¶
Das Quellvideo sei 720x576 mit schwarzen Rändern.
Entfernen der Ränder oben und unten mit dem Optionsparameter:
-j 80
oder ausführlich-j 80,0,80,0
(oben, links, unten, rechts)Größe des Zielvideos 704x416
Videos anhängen¶
Möchte man aus mehreren Videodateien eine einzige Datei erzeugen, geht das mit folgendem Befehl:
avimerge -i Video1 Video2 -o VideoAlle
Film aus Standbildern¶
Möchte man aus einer Serie von Bilder (Bild001.png, Bild002.png... ) eine (Stop-Motion-)Videodatei erzeugen, dann erstellt man eine Liste dieser Bilder mit:
ls -1 Bild*.png > image_list.txt
Aus dieser Liste wird das Video erzeugt:
transcode -i image_list.txt -x imlist,null -g 720x480 --use_rgb -z -y ffmpeg,null -F mpeg4 -o test1.avi -H 0 -f 29.97
transcode -i image_list.txt -x imlist,null -z -y ffmpeg,null -o test1.avi -H 0 -f 29.97
Bewegungskorrektur¶
Entwackeln bzw. Stabilisierung (deshake) von Videos mit Hilfe von transcode. In einem ersten Durchlauf werden die bewegungsbedingten Transformationen erfasst, und der zweite Durchlauf führt die Stabilisierung bzw. die Glättung durch.
stabilize¶
Extrahiert Bewegungsänderungen „Transformationen“ aus den aufeinander folgenden Bildern. Eine Liste der verfügbaren Optionen erhält man mit der Option --help
oder mit:
tcmodinfo –i stabilize
Syntax des Standard-Befehls (ohne weitere Zusatzparameter):
transcode -J stabilize -i QUELLVIDEO -y null,null -o dummy
Die erste Zeile erstellt eine Datei *.trf mit den erkannten relativen Bewegungsänderungen zwischen zwei nachfolgenden Videobildern.
Erhält man bei diesem Vorgang eine Fehlermeldung, siehe Problembehebung weiter unten.
transform¶
Im Anschluss an stabilize
erfolgt jetzt die Erzeugung des entwackelten Videos:
transcode -J transform -i QUELLVIDEO OPTIONEN -o ZIELVIDEO
Optionen für die Videoausgabe wie z.B.: -y ffmpeg,null -F mpeg2video
oder: -y xvid
Die zweite Zeile erzeugt die erhofften Stabilisierungen. Auch hier ergibt -help
oder tcmodinfo -i transform
eine Liste der möglichen Einstellungsoptionen, um zu besseren Ergebnissen zu kommen.
Problembehebung¶
unsupported codec¶
Bei Versuchen, die o.g. Bewegungskorrektur durchführen zu lassen, kann es zur Ausgabe der Fehlermeldung "unsupported codec"
kommen. Zur Abhilfe muss das zugrundeliegende Plugin vid.stab durch die neueste Version (0.76 oder neuer) ersetzt werden.
Hinweis!
Fremdsoftware kann das System gefährden.
Heruntergeladen kann man es von hier: hronopik.de 🇬🇧 ⮷. Nach dem Entpacken [5] erhält man 2 Dateien filter_stablize.so und filter_transform.so, welche man mit Root-Rechten [4] in das Verzeichnis /usr/lib/transcode/ verschiebt (alte Dateien vorher sichern!).
invalid number of channels¶
Zur Behebung der Fehlermeldung "[faad2] ... invalid number of channels
" installiert man die Bibliothek libdvdcss (siehe DVD-Wiedergabe). Falls das immer noch nicht funktioniert, kann man transcode über MPlayer verwenden:
transcode -J stabilize --mplayer_probe -i movie.mp4 transcode -J transform --mplayer_probe -i movie.mp4 -y raw -o stabilizedmovie.mp4