Mavericks DivX Konvertierung | Allgemeines | Forum

16. Juni 2012
Avatar

Please consider registering
guest

sp_LogInOut Log In sp_Registration Register

Register | Lost password?
Advanced Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

sp_Feed Topic RSS sp_TopicIcon
Mavericks DivX Konvertierung
16. April 2014
23:59
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

hi

mt OS X 10.9.2 öffnet der QuickTime Player DivX Dateien (DX 50, MPEG Layer 3) im Konvertierungsmodus

mit /Exportieren/ als 480p bekommt man damit eine MP4 als *.mov (AAC, H.264)
(dauert eine Zeitlang…)

die Datei wächst (z.B. von 200 MB zu 500 MB), aber ist dann problemlos über AppleTV oder iTunes spielbar

das ist für meine _alten_ Dateien ein sehr schöne Alternative zum _Neuladen_ (falls verfügbar ;(

vlt. kennt ja noch jemand eine weitere Optimierungsmöglichkeit

sl mepaso

sl mepaso

20. April 2014
02:12
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

Hi Mepaso

Bei so einem MB-Zuwachs wird da wahrscheinlich der Videotrack transkodiert.

Wenn es so ist, dann würde ich gleich Handbrake nehmen. Da hast du eine
aktuelle x264-Engine und kannst vor allem die ganzen x264-Parameter
vernünftig einstellen. Damit solltest du den MB-Zuwachs bei gleicher Qualität
vermeiden können (denn durch “Aufblähen” aufgrund geringerer Kompression wird
ja nicht Qualität wiederhergestellt). Wahrscheinlich ist’s auch noch
schneller, weil es alle Cores nutzt (multithreaded).

Was die Remuxing-Möglichkeiten betrifft – also Audiotranskodierung und
Remuxen (ohne Videotranskodierung):

iTunes hat kein Problem mit DX50-Video in MP4/MOV-Containern, auch nicht,
wenn’s aus einem AVI-Container stammt. Von daher ist es im Prinzip nicht
notwendig, den Videotrack zu transkodieren. Wenn er B-Frames hat, muss er nur
(wie die h264s) durch MP4Box laufen. Wenn er keine B-Frames hat, ist das gar
nicht nötig.

Aber nachem du von “alten” Videos sprichst, nehme ich mal an, die sind
geschnitten, und da wird’s dann schwieriger, auch wegen A/V-Sync.

Du kannst auf jeden Fall mal versuchen, das File – wenn es keine B-Frames
hat – durch FFmpeg zu jagen, z.B. mit ‘ffmpeg -i -c:v copy -c:a
libfaac -ab 112k <out.mp4>’. (Audio transkodiert, Video kopiert.)

Wenn es B-Frames hat, brauchst du MP4Box, und dann kommts auf den Container
an, in dem dein DX50 liegt:

Wenn es in einem DIVX- oder AVI-Container ist, könnte es mit unserer üblichen
Konvertiermethode (Skript) klappen; kommt auf den Einzelfall an.

Wenn es schon in einem MOV-Container liegt (z.B. geschnitten mit SOTR vor
2012), wird’s schwieriger, da MP4Box irgendwie kein DX50 in MOV mag. Aber ich
glaube mich zu erinnern, dass das auch mal geklappt hat. Evtl. musst du
vorher den Videotrack mit FFmpeg extrahieren.

Wenn das Remuxen geklappt hat, dann solltest du kontrollieren, ob A/V
synchron sind. Oft ist es einfach zu korrigieren, v.a. wenn der Film nur
vorne und hinten geschnitten wurde.

Frohe Ostern!

2. Dezember 2014
00:50
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

hi Tom

Danke für Deine immer guten Tips und Hintergrundinformationen :)

In der Zwischenzeit habe ich vieles ausprobiert (gerade und besonders das von Dir), es hat sich (für mich) folgender
Workflow am Besten herausgestellt:

* alten (geschnittenen) DivX Film in Mavericks QuickTimePlayer laden
* der konvertiert automatisch zu einem H264 Format (leider viel zu gross)
* Exportieren zu iTunes (wird dann *.m4v und landet unter User/Musik/iTunes/iTunesMusic/Automatisch zu iTunes hinzufügen
* von dort mit Handbrake auf *.mp4 konvertieren
* zu 99,9% stimmt dann der Ton (bzw. es ist kein Versatz feststellbar)
* gelegentlich (ca 10%) kommt es am Anfang und Ende zu Blitzern oder Restbildern,
diese dann mit Super OTR wegschneiden und damit wird es wieder ein *.mov
(erstaunlicherweise sind die mittleren Schnitte fast immer problemlos)

Das rentiert sich jedoch nur alten Filmen, die nicht mehr verfügbar sind (z.B. James Garner - Latigo),
sonst lade ich diese in HQ neu (Datenkeller.at sei Dank)

Bei alten Serien mit vielen Episoden (z.B. ein Käfig voller Helden) in vergleichsweise niedriger Qualität
nehme ich Free MP4 Converter (der hat Batchprocessing und ist im Apple Shop), wenn die Filmlänge
gleich ist, dann ist der Konvertierung üblicherweise gut gelaufen (ca 90%), sonst wie oben verfahren,
- oder halt die einzelne Episode löschen (wenn ich nur 127 von 148 Folgen habe, reicht mir das ;)

Gibt es evtl. einen Batchmode von Handbrake, bzw. CmdLine Optionen, die das gleiche machen ?

Ja, Handbrake hat gefühlte 1000 Optionen, aber vlt. kann mir Du mir die 10 wichtigsten sagen *g*

sl mepaso

sl mepaso

2. Dezember 2014
10:38
Avatar
wobie
Guest
Guests

Hallo mepaso,

also ich nehme für meine alten geschnittenen .avi-Dateien wie Tom empfohlen auch gleich die Handbremse.
Gibt ja genügend Presets für alle möglichen Devices, oder man orientiert sich an der Bitrate des Originalfilms
um die Datei nicht all zu groß zu machen.
Zur Datensicherung behalte ich die alte .avi Datei, bis ich sie vielleicht irgend wann mal durch eine kompaktere
.mp4 Datei ersetze.

Grüße

3. Dezember 2014
00:50
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

hi wobie

Ich würde mir gerne auch die aufwendige Konvertierung ersparen, aber leider habe ich Handbrake noch nicht dazu gebracht,
die Resolution (bzw. Bildgröße) 1:1 umzurechnen - darum der Zwischenschritt mit QuickTimePlayer

Und im zweiten Fall ist halt die Batchkonvertierung der grosse Vorteil (100er Serien)

Mit Handbrake bin ich ziemlich unerfahren, darum würde ich gerne jeden Tip erfahren :)

sl mepaso

P.S. AVI Dateien habe ich gar nicht mehr, es erfolgte sofort die Umwandlung mit (alten) SuperOTR,
d.h. *.mov (DX50, MPEG Layer 3) - und jede Datei ist geschnitten . . .

Edit: bei 08_15 macht Handbrake aus 576x432 (DX50/MPEG3) ein 558x428 (H264/AAC) und 7 sec mehr Länge

sl mepaso

3. Dezember 2014
01:33
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

Hi mepaso,

Gibt es evtl. einen Batchmode von Handbrake, bzw. CmdLine Optionen, die das gleiche machen ?

Handbrake hat sogar ein CLI … und, Zitat aus der Wiki, »it can be a lot more efficient than the GUIs« :-) Batchscripten sollte also kein Problem sein.

Ja, Handbrake hat gefühlte 1000 Optionen, aber vlt. kann mir Du mir die 10 wichtigsten sagen g

HandBrake hat eigentlich gar nicht viele Optionen. Die 1000 Optionen, die du wahrscheinlich meinst, sind Optionen der x264-Engine. Aber die müssen dich gar nicht schrecken; wie wobie schon sagt, sollte es reichen – zumindest für den Anfang –, wenn du eins der Presets nimmst. Je höherwertiger die Einstellungen, desto besser die Qualität bei gleicher Größe, logisch. (Soweit das Endgerät mitgemacht.)

Rauschfilter brauchst du keins.

Betreffend Bitrate, würde ich auf jeden Fall Constant Quality nehmen und den CRF schrittweise so weit runternehmen, bis 1) die Filme kleiner sind als die Original-divx, und 2) du an die Schwelle kommst, wo die Qualität merklich abnimmt. Wahrscheinlich wirst du dann in einer Größenordnung von CRF 21 bis 24 landen.

Um’s anfängliche Ausprobieren kommst du aber nicht rum. Musst ja zum Testen nicht ganze Filme enkodieren, mach dir 3-Minuten-Stücke mit gemischten Szenen (langsames und schnelles), dann geht das flott.

QuickTimePlayer laden

der konvertiert automatisch zu einem H264 Format (leider viel zu gross)

Ja, der verwendet h264 (was viel konservativer weiterentwickelt wird als x264) und wahrscheinlich die Engine von 2006 ;-)

Die Presets (»Compressor Quality«) sind ziemlich zurückhaltend, d.h. die besten h264-Features setzt er wahrscheinlich gar nicht ein (–> max. Kompatibilität) und Constant Quality hat er gar nicht.

Deswegen, wenn Transkodieren, dann HandBrake. Ein No-Brainer.

Edit: CRF-Schätzwert korrigiert.

3. Dezember 2014
10:45
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

aber leider habe ich Handbrake noch nicht dazu gebracht, die Resolution (bzw. Bildgröße) 1:1 umzurechnen

Edit: bei 08_15 macht Handbrake aus 576x432 (DX50/MPEG3) ein 558x428 (H264/AAC)

Standardmäßig schneidet HB die schwarzen Balken (oder sonstige statischen Ränder) weg. Is ja auch gut so, wäre ja Verschwendung, das mitzukodieren.

Aber wenn du das aus irgendeinem Grund nicht haben willst – oder wenn es zu viel oder zu wenig wegschneidet –, dann stellst du in »Picture Settings« das Cropping auf »Custom« und alle Beschnitte auf Null bzw. auf die gewünschten Werte. Im Preview Window kannst du ja live sehen, was weggeschnitten wird.

PS: Die Einstellungen kannst du dir dann auch als Preset abspeichern.

3. Dezember 2014
20:43
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

@mepaso

Gute Nachrichten:

Es scheint doch auch gut ohne (Video-)Transkodieren zu gehen, d.h. ohne HandBrake oder QuickTime.

Dank deiner Anregung hab ich mal mein Archiv durchforstet und dort auch eine ganze Latte alter Divx-MOVs gefunden, die eigentlich zu schade zum Wegschmeißen sind ;-)

Hier findest du zwei einfache Skripts.

Beide sind für Divx-MOVs, die aus Divx-AVIs erstellt wurden (mit dem »alten« SOTR vor 2012). Das eine (simplecut) ist für Filme ohne Werbeschnitte, das andere (multicut) ist für den Rest.

Das multicut geht natürlich auch bei den einfachen, aber wenn mit dem simplecut das Ergebnis A/V-synchron ist, dann würde ich das bevorzugen, da weit weniger »hacky«.

Das simple funktioniert mittels MP4Box und afconvert. MP4Box entweder mit Homebrew installieren oder die alte im SOTR-Bundle verwenden. afconvert (für mp3>aac) ist vorinstalliert auf OSX.

Das multi braucht zusätzlich noch mkvmerge und ffmpeg. Lässt sich auch beides einfach mit Homebrew installieren, mkvmerge kannst du auch als mkvtoolnix als App installieren.

Die Dateipfade zu den Tools sind im Skript voreingestellt, einschließlich der Pfade zu den App-Bundles; evtl. musst du sie noch anpassen (z.B. wenn dein SOTR-Bundle nicht Super OTR-b79.app heißt). Wenn du alles mit Homebrew installiert hast, dann gibt’s eh kein Problem.

Das Skript nimmt den Dateipfad des Original-MOVs als Argument ($1). Also einfach im Terminal das Skript aufrufen und anschließend den Pfad eingeben (oder das File drauf ziehen).
Z.B. ‘~/Desktop/divxmovtomp4_multicut.sh ~/Movies/mycrappymovie.mpg.mov’

Ich hab’s erst an 3 Filmen ausprobiert, also bitte den Output gut kontrollieren (A/V-Sync)! Wenn’s geht kann man ja Batch-Skripts draus machen.

Edit: Skript-Link aktualisiert.

4. Dezember 2014
01:43
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

@Tom: Woah - ich bin am Lesen und Probieren . . . ::))

sl mepaso

5. Dezember 2014
15:45
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

So, ich habe jetzt 12 alte divx-MOVs mit dem Skript konvertiert, alle ohne Werbe-Zwischen-Schnitte (3sat/phoenix-Dokus). 10 wurden gut, 2 wurden asynchron, egal welches Skript.

Ich weiß nicht, warum die 2 asynchron werden. Möglicherweise liegt es daran, mit welchem Programm der ursprüngliche Schnitt gemacht wurde. (Ich hab damals, 2010/11, teilweise noch mit ColdCut unter Windows, teilweise mit SOTR und teilweise mit noch was anderem geschnitten …)

6. Dezember 2014
00:25
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

Tom said
So, ich habe jetzt 12 alte divx-MOVs mit dem Skript konvertiert, alle ohne Werbe-Zwischen-Schnitte (3sat/phoenix-Dokus). 10 wurden gut, 2 wurden asynchron, egal welches Skript.

Das entspricht auch meinem Durchschnitt, ca. 10% werden asynchron (sowohl Handbrake, FreeAVConverter, Deine Scripte)

Wenn man diese Dateien in iMovie lädt, sieht man am Beginn der Asynchronität einen 100% Ton - anscheinend werden hier mehrere, ich sage mal,
Ton-Frames zusammengeschoben (sry, kann es nicht präziser ausdrücken)

Erstaunlicherweise liegen diese /Ton-Häufungen/ _nicht_ an einem (vorherigen) Cut ???

Eine Lösung habe ich nicht, aber wenn ich nach der Konvertierung die alte Spiellänge mit der neuen vergleiche, erkenne ich sofort den
möglichen Fehler (ca. 1-2 Sekunden Unterschied)

Übrigens haben alle diese Fehler-Konvertierungen DixX / MP3 Ton ??? - H264 und MP3 Ton (die vom alten SuperOTR ohne MP4 Convert)
sind alle korrekt (okay, waren bis jetzt max. 10, könnte also noch zufällig sein)

Vielleicht hilft das Dir etwas weiter, ich mache gerne alle Teste und Versuche mit *g*

sl mepaso

6. Dezember 2014
09:19
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline

ich mache gerne alle Teste und Versuche mit *g*

Sehr schön :-)

Ich denke, ich habe eine Lösung für die 10% Problemkinder:

Ich hab ein neues Skript problemsimplecut hochgeladen, das ausschließlich mit ffmpeg konvertiert. Damit funktioniert das. (Es geht nicht bei divx mit Werbe-Zwischenschnitten, aber da funktioniert bei mir das multicut-Skript zu 100%.)

Diese reine ffmpeg-Lösung ging vor 3 Jahren auch schon, aber ich hab es immer gemieden wegen der schlechten Qualität des ffmpeg-AAC-Encoders (libfaac).

Gestern hab ich gesehen, dass es jetzt einen besseren AAC-Encoder für ffmpeg gibt, libfdk_aac. (Ähm, vielleicht gibt’s ihn auch schon etwas länger ;-) Laut Hydrogenaudio soll der qualitätsmäßig an Apple’s Core Audio AAC rankommen.

Wegen der Bitrate-Einstellung den Kommentar im Skript lesen. Bin da noch am rumexperimentieren …

Installieren:

Wenn du ffmpeg normal mit Homebrew installiert hast, dann ist der libfdk_aac-Codec nicht dabei. Um ihn nutzen zu können, musst du aber lediglich ffmpeg neu installieren mit …

brew reinstall ffmpeg --with-fdk-aac

(Falls es noch nicht installiert war, dann machst du aus dem ‘reinstall’ ein ‘install’.)

Falls du ihn nicht installieren willst, findest im Skript auch eine kommentierte Zeile mit der alten libfaac-Variante.


Zusammenfassend hätten wir jetzt also folgende Skripte, die hoffentlich alle divx-MOVs abdecken (mit absteigender Präferenz):

  1. Simplecut (Filme ohne Werbe-Zwischenschnitte)
  2. Multicut (Filme mit Werbe-Zwischenschnitten)
  3. Problemsimplecut (ohne Werbe-Zwischenschnitte, wenn Simplecut async produziert)
Skript MP4-Muxing Audio-Enc.
simplecut mp4box Core Audio
multicut ffmpeg (über mkv) Core Audio
problemsimplecut ffmpeg libfdk_aac

PS: Wenn nach einer ffmpeg-Konvertierung das Bild zuckelt, dann hast du wahrscheinlich eines der selteneren divx mit B-Frames erwischt.

PPS: Bei der ersten Version des multicut hatte ich den Switch für die MP4-Optimierung vergessen. Bitte das neue benutzen, sorry. Bereits Konvertiertes kannst du mit dem Skript Iso to Clean MP4 nachträglich optimieren.

Edit: Skript-Link aktualisiert

6. Dezember 2014
14:44
Avatar
mepaso
Member
Members
Forum Posts: 68
Member Since:
20. Mai 2012
sp_UserOfflineSmall Offline

@Tom: *thx* ::))

Weihnachtsferien, ihr könnt kommen - es warten 984 Files . . .

@All: nur, um es nochmal zu erwähnen:

Diese Umwandlung ist für alte Filme gedacht, die nicht mehr auf Mirrors verfügbar sind.

Die beste Alternative ist, den Film (als HQ/HD) neu zu laden (insbesondere hat sich 2012 einiges bei OTR
bei der H264 Codierung getan) und mit SuperOTR neu zu decodieren, zu MP4 wandeln und
dann zu schneiden - das ergibt deutliche bessere Ergebnisse als die modifizierten DivX

Aber es gibt halt alte Filme und Serien, die nicht mehr verfügbar sind, und die man
einfach nicht wegwerfen will, bzw. die man auf MP4 / MOV wandeln will - u.a. wg.
Apple TV, iPad - und der Möglichkeit des Nach-Cuts mit SuperOTR . . .

sl mepaso

6. Dezember 2014
17:44
Avatar
Tom
Member
Members
Forum Posts: 176
Member Since:
14. Mai 2012
sp_UserOfflineSmall Offline
  • es warten 984 Files …

Ach du heilige Sch., wer hat das geahnt ;-)

Ich hatte nur noch ca. 50 von der alten Sorte, und bin jetzt praktisch mit allen durch. Mit den 3 Skripts konnte ich 100% konvertieren, ohne eine Sekunde Video neu zu kodieren.

D.h. ich werde leider auf keine neuen Probleme mehr stoßen und dadurch die Skripts wahrscheinlich nicht mehr anpassen. Aber wenn du bei deinen ein unentdecktes Problem findest, melde dich einfach.1

Bei nur vereinzelten Sync-Problemen mit konstantem Versatz über die Länge des Films bietet es sich evtl. an, einfach den Audiotrack des Output-MP4 zu shiften. Dazu fügst du nur im Skript Iso to Clean MP4 einen delay hinzu, sodass es dann z.B. so aussieht:

mp4box -add "$oldFile" -delay 2=-1500 "$mp4File"

Siehe auch hier.


  1. Jedes Problem verhilft zu neuer Erkenntnis, und am Ende winkt der Himmel der absoluten MP4-Erleuchtung ;-)
Forum Timezone: Europe/Berlin

Most Users Ever Online: 21

Currently Online:
1 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

Tom: 176

Timm: 88

mepaso: 68

Baa: 38

ovicula: 24

matze: 11

raphael: 8

goetzibubu: 7

i-land: 5

Felix: 5

Member Stats:

Guest Posters: 10

Members: 72

Moderators: 0

Admins: 1

Forum Stats:

Groups: 1

Forums: 2

Topics: 74

Posts: 560

Newest Members:

JudithDam, JosephRhymn, Johnnieweemy, CindyIsors, Jacobgoamy, johnnynef, Mzoomica, Larryabnopyday, Januszek45slees, MonicaIsomi

Administrators: Stephan: 57

Kommentare sind geschlossen