Ich möchte eine vollautomatische Lösung implementieren, die Videodateien aus einem eingehenden Verzeichnis auswählt, verarbeitet und das Ergebnis in das spezielle iTunes-Verzeichnis "Automatisch zu iTunes hinzufügen" legt.
Bevor Sie beginnen, verschiedene Produkte vorzuschlagen, lesen Sie die Anforderungen:
Anfangs würde ich sagen, dass Handbrake dazu in der Lage sein sollte, aber ich habe festgestellt, dass Handbrake niemals Pass Thru für Video macht (das ist eine Aussage, die ich vom Autor bekommen habe).
z264 sieht sich jede Datei an, berührt aber nur avi-, flv-, mpg-, mpeg-, wmv-, vob-, mkv- und mp4-Videodateien, kopiert Video- und Audiostreams und wickelt sie um, wenn möglich, transkodiert nur das Audio, wenn nötig, und transkodiert nur was Video ist erforderlich, und Sie erhalten iTunes-freundliche, Atom-optimierte MP4-Dateien, wobei die Originale in Ihrem Papierkorb verbleiben. Es trifft ziemlich intelligente Entscheidungen für Sie darüber, wie Dateien transkodiert werden, basierend darauf, wie Sie seine HandBrake -Variablen setzen (in den Zeilen 312-333 gesetzt).
Überprüfen Sie die Datei auf AVC-Kodierung und FLV-, WMV- oder MKV-Wrapper und packen Sie sie in den MP4-Container um, andernfalls, falls nicht bereits mp4, transcodieren Sie sie in AVC mp4
z264 hat mehrere Abhängigkeiten (mediainfo, rmtrash, ffmpeg, SublerCLI und HandBrakeCLI)
kopieren und fügen Sie den binären Installationsabschnitt in ein neues Bash-Skript ein und verwenden Sie es, um die Abhängigkeiten in /usr/local/bin/ herunterzuladen und zu installieren (erstellen Sie /usr/local und /usr/local/bin/, falls noch nicht vorhanden)
Erstellen Sie eine 2-GB-Ramdisk mit dem Namen „Zwei“ mit dem Befehl im Ramdisk-Abschnitt
diskutil quiet erasevolume HFS+ 'Two' `hdiutil attach -nomount ram://4194304`
Überprüfen Sie die Befehlsdefinitionen (Speicherorte der Abhängigkeiten) und die korrekten Speicherorte (in "/usr/local/bin/").
change line 231 to read: mediainfo="/usr/local/bin/mediainfo"
change line 236 to read: rmtrash="/usr/local/bin/rmtrash"
change line 238 to read: ffmpeg="/usr/local/bin/ffmpeg"
change line 239 to read: SublerCLI="/usr/local/bin/SublerCLI"
change line 262 to read: mediainfo="/usr/local/bin/mediainfo"
change line 263 to read: rmtrash="/usr/local/bin/rmtrash"
change line 265 to read: HandBrakeCLI="/usr/local/bin/HandBrakeCLI"
als z264 in /usr/local/bin/ speichern
ausführbar machen
sudo chmod +x /usr/local/bin/z264
Verwenden Sie Terminal, um z264 für einzelne Dateien oder Verzeichnisse von Dateien aufzurufen, oder rufen Sie es von einem Cron aus auf, um regelmäßig ganze Dateisysteme zu durchsuchen
z264 directory.full.of.mixed.video.filetypes/*
Kleinere Probleme: Der Benutzer muss in der Lage sein, Bash zu lesen, zu debuggen und zu verwenden. z264 zählt noch nicht, wie viele background_transcoder-Prozesse es hervorbringt, was bedeutet, dass es bei vielen Transcodierungen eine Weile dauern wird, bis sie abgeschlossen sind, aber sie werden abgeschlossen. Sie benötigen auch viel Speicher (8 GB sind ok). Benutzer von Snow Leopard müssen den Purge -Befehl von den xcode-Entwicklertools installieren.
tty: illegal option -- -
usage: tty [-s]
Derzeit verwende ich Subler , um MKVs in MP4s zu konvertieren und dabei Untertitel einzubetten, ohne Video oder Audio zu transcodieren. Wenn ich DTS transcodieren muss, damit Apple TV es abspielen kann, verwende ich MP4Tools . Beides sind jedoch GUIs, und ich habe keine Ahnung, ob sie von der Befehlszeile aus aufgerufen werden können. Ich nehme an, Ihre beste Wahl wäre MKVToolNix (vorausgesetzt, Sie möchten nur das Format ändern) und ffmpeg (das Transcodierungsoptionen enthält, wenn sie benötigt werden).
Ich verwende HandBrake wie in der obigen Frage vorgeschlagen, wenn der Download nicht im MP4-Format verfügbar ist. (Ich glaube, ich kann den Dienst, den ich verwende, nicht nennen, da das Herunterladen nicht in jedem Land legal ist, aber die Suche nach dem Schlüsselwort "YIFY" könnte helfen, MP4-Rips zu finden.) Außerdem verwende ich Subler , um ein SRT hinzuzufügen, ohne es zu haben um das MP4 noch einmal zu konvertieren .
Und um die Metadaten und die Kopie nach iTunes zu bekommen, verwende ich iFlicks , das aus dem App Store heruntergeladen werden kann .
Ich denke, Sie werden Ihre Antworten in diesen beiden Beiträgen finden:
Also, um es zusammenzufassen:
ffmpeg -i <input_file>.mkv -f srt -i <input_subtitle>.srt -c:v copy -c:a aac -b:a 384k -c:s mov_text -strict -2 <output_file>.mp4
Probieren Sie es im Paket ffmpeg aus . Es kann entscheiden, wenn nicht alle, die meisten Probleme.
ffmeg
die gewünschten Aufgaben ausführen könnte? Gibt es Flags oder Einstellungen, die ihnen den Einstieg erleichtern könnten.Sie können sich VideoDrive für Mac ansehen. All das erledigt es automatisch: www.aroonasoftware.com
Es hat keine CLI, aber einen eingebauten Timer, der ausgeführt werden kann, wann immer Sie wollen. Und es ist auch mit Applescript kompatibel.
SmartConveter ist kostenlos im App Store und schneller als Handbrake.
rauben
Graham Mill
Sorin