also für asynchronität gibt es in der regel 2 gründe:
1) falsche framerate
2) delay
um herauszufinden was das problem ist beantworte mal bitte die frage ob die asynchronität immer gleich gross ist oder mit der laufzeit immer größer wird?
also für asynchronität gibt es in der regel 2 gründe:
1) falsche framerate
2) delay
um herauszufinden was das problem ist beantworte mal bitte die frage ob die asynchronität immer gleich gross ist oder mit der laufzeit immer größer wird?
Also die Asynchronität nimmt auf jeden Fall mit zunehmender Anzahl an Videos die ich aneinander merge ab.
Und die Framerate der Videos ist auf jeden Fall bei allen gleich, falls du das meinst.
dann hast du vermutlich eine falsche framerate verwendet. versuch einmal andere zu verwenden
Welche würdest du denn vorschlagen? Das Ausgabefile soll nachher auf einem iPod abspielbar sein. Der schluckt bis 30fps, was die Untergrenze ist steht leider nicht auf der Apple Homepage.
15, 23.976, 25, 29.97 fps
Hab die verschiedenen Frameraten mal ausprobiert, leider ohne Erfolg. Das Video ist genauso asynchron wie vorher.
an den Frameraten kanns ja auch nicht liegen, denn Du wandelst alle die Unterschiedlichsten Video mit der gleichen Commandline und dann müssen ja auch die gleichen MP4s rauskommen. Jedoch ist das Audio/Video am Ende eines MP4s fast nie Syncron zu Ende. Daher kommen sicherlich die Probleme.
Ergo: machs Endlich so wie wir es Dir gesagt haben. Alle Videos per AVISynth verbinden und als EIN Stück encoden. Das ist die einzige Beste Variante.
Wenn Du kein AVISynth unter Linux hast, das werfe des Bastelsystem wech und Encode es unter reinem Windows.
Und Überhaupt, warum willst Du denn unterschiedliche Videos joinen? Darin versteh ich nun mal garkeinen Sinn.
Wenn Du kein AVISynth unter Linux hast, das werfe des Bastelsystem wech und Encode es unter reinem Windows.
Ich könnte mir vorstellen das er einen Linux Webserver hat. Nur so eine Vermutung.
Ich glaube nicht das die Persönliche Einschätzung von Linux als Bastelsystem ihm bei seinem Problem hilft. Man sollte sich bemühen immer möglichst sachlich zu bleiben, es kommt sonnst nur zur Flamewars.
Ich glaube nicht das die Persönliche Einschätzung von Linux als Bastelsystem ihm bei seinem Problem hilft. Man sollte sich bemühen immer möglichst sachlich zu bleiben, es kommt sonnst nur zur Flamewars.
Ich bin immer noch ein Mensch und keine SupportMaschine. Wenn ich zu bestimmter Hard/Soft-ware eine Meinung habe, tut ich des auch und lass es mir von niemanden verbieten. Und wenn es unter bestimmten Bedingen, einfach keinen Weg zum Ziel führt, muß man halt über den Tellerrand schauen. Selbst ich mußte von meinem W2K auf XP umsteigen, was mir noch heute oft Schmerzen bereitet. Genauso wird es sicherlich beim neusten Win-System sein, wo ich heute noch sage Niemals. Und glaube mir, ich bin werde die erste sein, die auf Linux umsteigen würde, wenns denn Einfach wäre und es Software gäbe. Aber bis dahin, ist es nicht weiter als ein Bastelsystem.
Ich bin immer noch ein Mensch und keine SupportMaschine. Wenn ich zu bestimmter Hard/Soft-ware eine Meinung habe, tut ich des auch und lass es mir von niemanden verbieten.
Ich wollte dir auch nicht deine Meinung vorschreiben, schließlich habe ich auch ich nur meine Meinung dazu geäußert, daß ich es nicht für geschickt halte Wörter zu verwenden die jemand im Zusammenhang mit seinem vergötterten Betriebsystem als Beleidigung auffassen könnte.
Wenn du ihm nahe legen wolltest das er zu Lösung seine Problems ein anderes Betriebsystem verwenden müsse, wäre das auch anders gegangen.
Aber jeder ist letzt endlich nur ein Mensch und läßt sich gerne mitreißen. Auch ich konnte mir nicht verkneifen meine Meinung zu "Bastelsystem" loszuwerden. Sollte ich dich mit Kritik angegriffen habe möchte ich mich dafür entschuldigen und wünsche einen guten Rutsch ins neue Jahr
also wenn der desync gleichmäßig (dh nicht sprunghaft) immer größer wird, dann kann der grund nur eine falsche framerate sein
Fangen wir nochmal von vorne an
so hab ich das verstanden...
zwiebel_sondermann encode input1.avi nach output1.mp4 mit folgender Commandline:
ffmpeg -y -i input.avi -aspect 4:3 -s 320x240 [B]-r 25[/B] -vcodec h264 -level 13 -b 300k -flags +loop -flags2 +mixed_refs -me_method 2 -subq 6 -trellis 2 -refs 3 -coder 0 -me_range 16 -g 250 -qmin 10 -qmax 51 -qdiff 4 -acodec aac -ac 2 -ar 44100 -ab 80 output.mp4
dann macht er das gleiche mit
input2.avi nach output2.mp4
input3.avi nach output3.mp4
input4.avi nach output4.mp4
da -r 25 ist habe alle output*.mp4 = 25 Frames/Sec.
diese sollen für sich alleine alle Syncron sein.
und dann joint er:
output1.mp4 + output2.mp4 + output3.mp4 + output4.mp4 nach output.mp4
und dieses ist dann unsycron.
RICHTIG?
* wenn ja: wie soll dann es an der Framerate liegen?
* wenn nein: was denn dann?
nur weil alle videos die gleiche framerate haben bedeutet das noch nicht, dass die auch mit dem audio synchron sind
edit: wenn der delay sprundhaft ansteigt, also zb teil1 ist synchron, nachdem teil2 anfängt ist es desync, nach teil 3 noch mehr desync usw... dann liegt das wahrscheinlich daran, dass ein audio/video delay in jedem file vorhanden ist.
da avi nicht fähig ist einen audio/video delay korrekt abzubilden, hat man einen hack entwickelt (so wie man es immer macht mit avi) und einfach lauter nullen am anfang des audiostreams angehängt. natürlich sind solche nullen nicht korrekte teile von aac streams und könnten daher vermutlich den desync verursachen
also egal was ich schon mit ffmpeg & -r gewandelt habe, es war immer syncron. Und wo bitte nimmst Du das Delay her? Es ist doch garkeins angegeben.
also egal was ich schon mit ffmpeg & -r gewandelt habe, es war immer syncron. Und wo bitte nimmst Du das Delay her? Es ist doch garkeins angegeben.
wenn der delay sprunghaft ansteigt (!) dann ist der delay vermutlich schon in den quell avi dateien
wenn man mit ffmpeg quellen wandelt. Und selbst das Audio 10sec später beginnt würde. Beginnt im Output Film das Audio bei 0 und es ist syncron.
ABER: endet der VideoStream vor dem AudioStream Encodet ffmpeg genauso weiter. Und der VideoStream Endet vor dem AudioStream wie in der Quelle.
Daher wirds evt. das Problem herkommen.
wenn man mit ffmpeg wieder quellen wandelt. Und wenn, selbst das Audio 10sec später beginnt würde. Beginnt im Output Film das Audio bei 0 und es ist syncron.
hm, klingt komisch, ist aber wohl so
dennoch wäre es nicht uninteressant von zwiebel_sondermann zu erfahren ob der delay sprunghaft ansteigt (jeweils bei start eines neuen teils) oder nicht sprunghaft immer stärker zunimmt
Also die Asynchronität nimmt auf jeden Fall mit zunehmender Anzahl an Videos die ich aneinander merge ab.
bei zweiterem ist es eine falsche framerate
bei ersterem ist es entweder das delay problem, dass ich beschrieben habe, oder irgendwas anderes, wobei ich keine ahnung habe was das sein sollte
Ich denke das liegt am joinen ( Video/Audio Ende) oder der Player Hardware, die das einfach nicht sauber abspielen kann, weil sie den Container nicht richtig versteht.
Ich denke das liegt am joinen ( Video/Audio Ende) oder der Player Hardware, die das einfach nicht sauber abspielen kann, weil sie den Container nicht richtig versteht.
für mp4 sollte das keinen unterschied machen. wichtig ist, dass die audio/video streams die gejoint werden mit den exakt gleichen optionen enkodiert wurden
Fangen wir nochmal von vorne an
so hab ich das verstanden...
Ja richtig, so wäre die idealste Lösung. Ich lade gerade per Rapidshare zwei Files hoch, die habe ich allerdings über den "workaround" wie in meinen aller ersten Post beschrieben erzeugt. Also mit ffmpeg ein AVI erzeugt, das gemerged, Ton und Video extrahiert und mit mp4box zu einer mp4 gemuxt.
An der Playerhardware liegt es wohl nicht da das Problem auch schon mit jeglichen Software-Playern auftritt.
bond: Die Files werden wirklich alle mit den exakt gleichen optionen enkodiert.
Ich poste gleich mal die beiden links, für die Beispielvideos.
Don’t have an account yet? Register yourself now and be a part of our community!