Beiträge von Road_to_Cairo

    Ja, jetzt läuft es, danke. :)

    Heute Nacht, nach dem Start des Jobs, war ich noch verwirrt, weil das Finished wieder so schnell erschien und ich die kopierte Datei nicht fand.

    Noch eine kleine Schönheitskorrektur: Für die Reportdateien und Zwischendateien (.264 und kopierte Audiodatei) den eingestellten Tempordner verwenden. Macht sx264, glaub ich, auch so. Bei mir landet alles im Zielordner.
    ___
    Ach ja, und wenn der Datei-Öffnen-Dialog für die Audiodatei auch den Input-Path nutzen würde; ist bei mir immer wieder der Windows-System-Ordner.

    Zuvor vielleicht mal hier gucken (aus dem Job-Tab):

    Code
    01_copy 100% FINISHED F:\Video-Temp\Sherlock Holmes.mp2.CUT.mp3 ### "C:\Users\Public\Recorded TV\Done\Sherlock Holmes_und_aid_0__15_19_05_262_01.mp3"


    Sind die ‚###’ vielleicht Kommentarzeichen aus dem Quellcode, die da gar nicht hingehören und den Zieldateinamen auskommentieren? Nur so ein Gedanke, ansonsten:

    Die aktuelle Version: Hybrid 100227_3, Win 32bit.

    Keine Fehlermeldung, im Gegenteil: FINISHED.

    Videodatei geladen (egal was, Script, avi, mpg, ts), externe Audiospur hinzugefügt (mp3), keinerlei Audiobearbeitung, Job hinzugefügt, Job gestartet. Sofort erscheint ein FINISHED hinter dem copy-Job und die Videobearbeitung läuft anschließend problemlos durch. Danach dann Muxen zu mp4 mit einer Tonspur, die nicht exstiert. Im Anhang zwei Debug-Outputs: Einmal wie gerade beschrieben, ein zweites Mal mit wav-Datei statt mp3 und im Audio-Tab die mp3-Codierung eingeschaltet (*)(beide allerdings abgebrochen, nachdem hinter dem Audiojob ein FINISHED erschien und die Videocodierung gestartet war). An den Zugriffsrechten kann es nicht liegen, Audio- und Videodateien liegen ja in denselben Ordnern bzw. werden in denselben erzeugt, und Videobearbeitung funktioniert ja.
    ___
    (*) in diesem zweiten Fall lief es richtig durch.

    Zitat

    benutzt Du auch sicher die aktuelle sx264 Version? (rev573)


    Jetzt ja (war noch rev571) und klappt jetzt auch (das mit der Framerate).

    AvsInfo liefert am Prompt dieselbe Ausgabe, die es auch bei „funktionierenden“ Scripten liefert:

    Code
    f:\scripte\Planet der Affen.avs: Aufloesung: 720x576, Framerate: 25 fps, Laenge: 162652 frames, PRO


    allerdings gefolgt von der Windows Crashmeldung, erst wenn ich die wegklicke, erscheint wieder das Prompt:


    Ich vermute mal so aus dem Bauch heraus, dass eine Fehler-oder Warnmeldung von xvidvfwdll nicht abgefangen wird.

    So, da hätte ich ja auch gleich drauf kommen können, dass ich kein komplettes Video berechnen lassen muss, 1000 Frames reichen ja.

    Zu dem zweiten Problem mit der Framerate, hier mal die Report-Datei:

    Code
    2010.02.27 - 15:56:25 - Job 155625610 2010.02.27 - 15:56:25:Encoding: F:\Temp\test-riddick.mp4Job 155625610 2010.02.27 - 15:56:25:decoderCL:mencoder "F:\Scripte\Riddick.avs" -really-quiet -ovc raw -noskip -lavcopts threads=1  -lavdopts threads=1  -mc 0 -vf scale,format=i420 -forcedsubsonly -fps 23.976 -nosound -of rawvideo -o -Job 155625610 2010.02.27 - 15:56:25:encoderCL:x264 --profile high --crf 21 --level 4.1 --ref 3 --keyint 250 --min-keyint 25 --scenecut 40 --bframes 6 --b-bias 0 --b-pyramid strict --direct auto --b-adapt 2 --cplxblur 20 --qcomp 0.5 --no-mbtree --rc-lookahead 40 --qblur 0.5 --sync-lookahead 0 --qpmin 1 --qpmax 51 --qpstep 4 --ipratio 1.4 --pbratio 1.3 --chroma-qp-offset 0 --partitions i4x4,p8x8,b8x8 --me umh --merange 16 --subme 10 --trellis 2 --psy-rd 0.8:0 --no-fast-pskip --weightp 2 --aq-mode 2 --aq-strength 1.2 --vbv-maxrate 62500 --vbv-bufsize 78125 --threads auto --thread-input --filter -1,-1 --fps 23.976  --output "F:\Temp\test-riddick_155625610.264" - 704x576Job 155625610 2010.02.27 - 15:59:34:Audioencoder: muxerCL(1):MP4Box -add "F:\Temp\test-riddick_155625610.264"#video -add "F:\Temp\test.mp3"#audio -brand avc1 -new "F:\Temp\test-riddick.mp4"


    Sieht so aus, als wenn MP4Box das nicht richtig einträgt? Der h264 Stream hat ja die korrekte Framerate (MediaInfo, Yamb, s.o. lesen die ja offensichtlich aus).

    ___
    Hier mal der Schluss des Debug-Outputs für das erste Problem (Crash wegen XviD):

    Code
    [i][…][/i]2010.02.27 - 16:06:14 - Progress: 932010.02.27 - 16:06:14 - Progress: 932010.02.27 - 16:06:15 - Progress: 942010.02.27 - 16:06:15 - Progress: 942010.02.27 - 16:06:15 - Progress: 952010.02.27 - 16:06:15 - Progress: 952010.02.27 - 16:06:19 - Job 160455525 2010.02.27 - 16:06:19:processErrorDec2010.02.27 - 16:06:19 - Job 160455525 2010.02.27 - 16:06:19:Video decoder - QProcess::Crashed2010.02.27 - 16:06:19 - x264Model: deleteTempFiles called2010.02.27 - 16:06:19 - deleting: F:\Temp\test-pda_160455525.2642010.02.27 - 16:06:20 - grabStateChanged 160455525 12010.02.27 - 16:06:20 - Progress: 952010.02.27 - 16:06:20 - waitingCount 02010.02.27 - 16:06:20 - Progress: 952010.02.27 - 16:06:20 - Progress: 962010.02.27 - 16:06:20 - Progress: 962010.02.27 - 16:06:20 - Progress: 972010.02.27 - 16:06:20 - Progress: 972010.02.27 - 16:06:21 - Progress: 982010.02.27 - 16:06:21 - Progress: 982010.02.27 - 16:06:21 - Progress: 992010.02.27 - 16:06:21 - Progress: 992010.02.27 - 16:06:22 - Job 160455525 2010.02.27 - 16:06:22:x264 [info]: frame I:5     Avg QP:18.01  size: 13577x264 [info]: frame P:191   Avg QP:19.32  size:  5252x264 [info]: frame B:804   Avg QP:21.59  size:  1224x264 [info]: consecutive B-frames:  1.0%  1.6%  3.6%  7.6% 18.1% 39.2% 28.8%x264 [info]: mb I  I16..4: 38.9% 51.2%  9.9%x264 [info]: mb P  I16..4:  8.7%  0.0%  1.0%  P16..4: 49.4% 12.4% 12.4%  0.0%  0.0%    skip:16.1%x264 [info]: mb B  I16..4:  0.3%  0.0%  0.0%  B16..8: 29.7%  0.3%  0.4%  direct: 2.5%  skip:66.9%  L0:43.1% L1:52.9% BI: 4.1%x264 [info]: 8x8 transform intra:10.0% inter:84.5%x264 [info]: direct mvs  spatial:99.3% temporal:0.7%x264 [info]: coded y,uvDC,uvAC intra: 15.0% 30.2% 9.1% inter: 4.9% 13.0% 0.4%x264 [info]: i16 v,h,dc,p: 62% 19%  8% 11%x264 [info]: i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 10%  4%  9% 11% 15% 18% 10% 12% 10%x264 [info]: i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 21%  5% 14%  8% 14% 15%  8%  9%  7%x264 [info]: Weighted P-Frames: Y:18.8%x264 [info]: ref P L0: 63.8% 23.7% 11.6%  0.7%  0.2%x264 [info]: ref B L0: 88.2% 11.8%x264 [info]: ref B L1: 90.2%  9.8%x264 [info]: kb/s:410.99encoded 1000 frames, 11.53 fps, 410.99 kb/s2010.02.27 - 16:06:22 - Progress: 1002010.02.27 - 16:06:22 - Job 160455525 2010.02.27 - 16:06:22:Video temp:


    Sieht so aus, als wenn der Absturz kurz vor dem Ende des Codierens erfolgt. Vielleicht ist aber auch schon ein anderer Thread mit der nächsten Aufgabe beschäftigt. Das fertige Video hat jedenfalls genauso viele Frames, wie das Script in VirtualdubMod geladen.

    Im Anhang die vollständigen Debug und Report Dateien, „Planet der Affen“ hatte das Crash-Problem, „Riddick“ war die Datei mit 23.976fps.

    ___
    Ich hatte auch mal mit Hybrid rumprobiert, scheint noch sehr Beta. Im Misc-Tab komme ich nicht an die Pfad- und Tools-Einstellungen, da tut sich in dem Dialog gar nichts. Das macht es ziemlich umständlich, irgendwas zu laden oder zu speichern. Die Crashmeldung von avsInfo nach dem Laden des Scripts erscheint auch hier. Der Versuch, ein Video mit Tonspur zu berechnen, scheiterte gleich zu Beginn mit einer CRASH-Meldung im Log, bei dem Versuch, die Audiodatei zu kopieren

    Hier mal das Log:

    Code
    Log Messages analysing: F:\Scripte\Planet der Affen - Kopie.avsexitCode: -1073741819 Video changed to:Frame rate: 25Resolution: 720x576Interlacing: progressiveAspect ratio: 1Frame count: 162652Analysing finished.analysing: F:\Video-Temp\Planet der Affen CUT.mp3grabbing audio ids ...found audio ids: 0analysing audio streams...analysing audio streams with mplayerAdded new job with id: 19_32_15_39519_32_15_395_01_copy: renaming ...

    Die Ausgabe im Job-Tab:

    Code
    19_32_15_395 0% CRASHED Couldn't copy F:\Video-Temp\Planet der Affen CUT.mp3 and to "F:\Temp\pda-test_und_aid_0__19_32_15_395_01.mp3"
         01_copy 0% CRASHED F:\Video-Temp\Planet der Affen CUT.mp3 ### "F:\Temp\pda-test_und_aid_0__19_32_15_395_01.mp3"
    
    
    [i][… wartende Aufträge weggelassen][/i]


    Debug Datei dazu habe ich nicht.

    Ich werde wohl vorläufig mit sx264 weitermachen – klappt ja soweit ganz gut – und jetzt erstmal meine Festplatte etwas aufräumen, da wartet noch so einiges. Viel Spaß mit den Logdateien.

    Ich hab ’s jetzt mal mit aktiviertem „create debug file“ und „create report file“ gestartet, das meintest du, nehme ich an. Läuft jetzt erstmal wieder ein paar Stunden.

    Ich glaub ja auch nicht, dass der Fehler in avsInfo oder MEncoder selbst liegt. Vermutlich stürzt eine Routine in der xvidvfw.dll ab, und der Fehler wird nicht abgefangen, oder so. Liegt lange zurück, dass ich mich mal rudimentär mit Programmieren beschäftigt hatte. Windows präsentiert dann avsInfo bzw. MEncoder als abgestürzte Anwendung.
    ___
    Möglicherweise bin ich eben über eine zweite Macke gestolpert. Ich hatte erst zum zweiten Mal ein Script mit srestore, das eine Ausgabe mit 23.976fps lieferte und beide Male trat folgender Fehler auf: Script wurde mit richtiger Framerate erkannt und im Log eingetragen. Die fertige mp4 jedoch hatte 25fps (und war natürlich total asynchron). MediaInfo sagt dazu:

    Code
    Bildwiederholungsrate            : 25,000 FPSoriginale Bildwiederholungsrate  : 23,976 FPS

    Extrahieren der Streams mit Yamb liefert einen h264-Stream mit 23.976fps, erneut gemuxt, und auch die mp4 stimmt:

    Code
    Bildwiederholungsrate            : 23,976 FPS

    Übersehe ich nur eine zusätzliche Einstellung zur Framerate, oder wird grundsätzlich mit 25fps gemuxt?

    So, durchgelaufen, und nee, kam keine weitere Fehlermeldung, Ausgabe ist praktisch dieselbe. Allerdings kam kurz vor Schluss auch die Windowscrashmeldung, dann erst das Prompt.

    Vielleicht nochmal zur Erinnerung: Der Crash erfolgt ja erst nach abgeschlossener Codierung, und schon beim Laden des Scripts crashed avsInfo, zeigt aber nach dem Wegklicken der Fehlermeldung die korrekten Informationen an; auch da wird als Fehlermodul ‚xvidvfw.dll‘ genannt. Das Script selbst liefert am Ende allerdings gar keine Frames aus der XviD-Datei mehr, davon werden ja nur ein paar Sekunden mitten im Video benutzt. Sonst hätte ich darauf getippt, dass es irgendwas mit dieser Fehlermeldung zu tun hat, die VirtualdubMod am Ende fast jeder Berechnung einer XviD-Datei brachte; irgendwas mit B-Frames und Loop. Vielleicht wird die Datei ja trotzdem von avsInfo oder mencoder komplett bis zum Ende gelesen und die stolpern über dasselbe Problem.

    Na ja, kann ich mit leben; kommt ja nicht oft vor. Wollt ’s nur mal als Feedback gemeldet haben.

    Hybrid bietet genau so wie sx264 die Möglichkeit sowohl PAR als auch Auflösung fest zu legen.


    Ja, ich meinte die Tonspur (das kommt davon, wenn man immer noch was dran hängt an einen Satz).

    Zitat


    Ps.: Link zu einer Hybrid Version bei der das Avisynth Problem behoben sein sollte, hab ich Dir per PM geschickt.

    Ja danke, probier ich bei den nächsten Videos dann mal aus.

    Der Vollständigkeit halber noch die Fehlermeldung und das Log des letzten Crashs, vielleicht hilft es ja (hat wohl tatsächlich was mit der XviD-Einbindung zu tun, kodiert man ja normalerweise auch nicht nochmal):

    Code
    MEncoder funktioniert nicht mehrProblemsignatur:  Problemereignisname:	APPCRASH  Anwendungsname:	mencoder.exe  Anwendungsversion:	0.0.9.0  Anwendungszeitstempel:	4b557968  Fehlermodulname:	xvidvfw.dll  Fehlermodulversion:	0.0.0.0  Fehlermodulzeitstempel:	4a9155a3  Ausnahmecode:	c0000005  Ausnahmeoffset:	00001e79  Betriebsystemversion:	6.0.6002.2.2.0.768.3  Gebietsschema-ID:	1031  Zusatzinformation 1:	2ee0  Zusatzinformation 2:	bdcb96bd7b1566a856698683b0c87809  Zusatzinformation 3:	a094  Zusatzinformation 4:	cbc3aaa7fc321f82a916e4ccfa6195fb

    Windows 32bit.


    Hm, das Script ist mittlerweile ziemlich unübersichtlich geworden, hab mal die ganzen im Laufe der Zeit hinzugekommenen und wieder auskommentierten Zeilen gelöscht.

    Das ist der Teil, der zum Absturz von avsinfo führt (übrigens auch in der Kommandozeile); v3 ist lädt eine XviD-avi-Datei:

    Code
    v3 = avisource("..\video-temp\planet der affen (2001).avi")  v3 = v3.spline64resize(v.width, v.height)  v3 = v3.killaudio() #Getchannel(1,1).ssrc(48000)  v3 = blankclip(v3,570) + v3  v3 = Zoom(v3,500,161420,10,18,12,0,in=false,out=false,frames=1000)  v = v.trim(0,10763) ++ v3.trim(10764,11205) ++ v.trim(11206,54931) ++ v3.trim(54931,55323) ++ v.trim(55325,161334)    \++ v3.trim(161222,161402) ++ v.trim(161516,162349) + blankclip(v,302)

    Das vollständige Script lädt zunächst zwei neuere Aufnahmen und verwurstelt die so miteinander, dass Werbeblöcke (und anderes Unerwünschtes) möglichst verschwinden. Außer der Logoentfernung kommen keine Filter zum Einsatz. Ich hab schon hunderte von Videos problemlos auf diese Weise berechnet; allerdings ohne den oben angeführten Ausschnitt, mit diesem vielleicht ein Dutzend Videos, immer erfolgte der genannte Crash von avsinfo.

    Woher soll ich den wissen was Du regelmäßig nutzt?


    Na ja, vor allem das Laden einer Tonspur und die Auflösungseinstellungen (also par).

    Hybrid scheint dazu überhaupt keine Einstellung zu bieten? Hatte mal kurz den Dialog geöffnet.

    Wenn Du dazu genauere Infos gibst werde ich mich dran setzen um zumindest das zu verhindern.


    Eigentlich sollte es reichen, Audio-Handling einzuschalten und dann ein AVS-Script ohne Tonspur zu laden. Oder auch eine Tonspur zu laden (bei mir immer mp3), bevor überhaupt ein Video geladen wurde. Bei mir wird in beiden Fällen das Fenster grau, nichts kann mehr angeklickt werden. Im ersten Fall erscheint zuvor noch eine Fehlermeldung: „Found no audidata at all! …“

    Du verwechselst hier Pixel Aspect Ratio und Display Aspekt Ratio, es macht gar keinen Sinn das Pixel Aspect Ratio auf 4:3 oder 16:9 zu stellen.


    Nee, ich setz das auf 16:15 bzw. 64:45. (5:4)*(16:15)=(4:3) bzw. (5:4)*(64:45)=(16:9); nur so werden die bei mir dann auch korrekt angezeigt. Dabei spielt es auch keine Rolle, ob ich oben und unten (Kinoformat) noch was wegschneide.

    Zitat

    Kann das Problem in sx264 nicht nachstellen. Kannst Du das von Dir geschriebene Skript den in z.B. Virtual Dub öffnen?


    Ja. Ich benutze Virtualdubmod ja fürs Editieren des Scripts.

    So, hab hoffentlich jetzt alles zusammen. Muss jetzt erstmal weg.

    Hallo und danke für sx264, endlich ein Interface, mit dem ich AviSynth-Scripte im Batchmodus abarbeiten kann; Avidemux und MeGUI wollten irgendwie nicht. Nach ca. 2, 3 Monaten (ich benutze es bisher nur, um TV-Captures via AviSynth nach .h264 zu wandeln) und ohne den Thread jetzt gelesen zu haben (nur mal ein paar Seiten letztes Jahr) ein paar Bemerkungen (rev571):


    AVSInfo stürzt immer ab, wenn in einem Script sowohl MPEG-2-Streams als auch XviD verarbeitet werden (gelegentlich benutze ich ältere letztere, um Werbeeinblendungen in neueren Captures loszuwerden). Das ist nicht weiter tragisch, die .h264-Datei wird trotzdem berechnet. Danach allerdings, vor dem Muxen, crashed auch sx264 und ich muss die temporäre 264-Datei und die externe mp3-Tonspur mit Yamb zur fertigen mp4 muxen. Damit kann ich solche Scripte im Batch allenfalls als letzten Eintrag hinzufügen.


    sx264 löscht anscheinend schon berechnete Dateien ohne weitere Nachfrage, wenn man nach dem Laden eines weiteren Scriptes vergisst, unter Output einen neuen Namen einzutragen; eine Sicherheitsabfrage scheint nur zu kommen, wenn man im entsprechenden Dialog den Namen einer schon existerenden Datei eingibt. Vorschlag: Nach dem Laden einer neuen Input-Datei die Zeile für den Output löschen. (oder automatisch den Namen anpassen).


    Ein Wunsch: Alle Einstellungen, die regelmäßig neu eingestellt werden (müssen) auf den Main-Tab. Insbesondere eine externe Tonspur als Eingabedatei betrachten und nicht als „Audio-Handling“ (AH) und AH per default abschalten. Momentan muss ich jedesmal nach dem Start von sx264 für das erste Script erst auf den Audio-Tab und AH abschalten, dann auf den Main-Tab und das Script laden (enthält bei mir nie Ton!), dann wieder auf den Audio-Tab und AH aktivieren – dann erst kann ich die Tonspur laden, ansonsten friert sx264 ein.

    Außerdem hätte ich gerne die Einstellung fürs Seitenverhältnis auf dem Main-Tab. Ausgerechnet dieses wird nach jedem Laden einer neuen Eingabedatei auf 1:1 gesetzt. Da ich aber praktisch ausschließlich 720 (oder auch 704) Pixel breite Videodateien berechne, muss ich jedesmal das Seitenverhältnis für 16:9 oder 4:3 anpassen. Die anderen Einstellungen ändere ich eher selten (AQ hin und wieder).


    Danke noch mal.

    ___
    Ach ja, ich hatte auch mal kurz dieses Hybrid versucht, stürzte aber immer schon beim Laden eines Scriptes ab. Ich vermute mal, dass es dafür nicht gedacht ist?

    Vorab: Ich habe nicht wirklich Ahnung von dem, was ich hier tue, das Kommandozeilenprogramm vdub habe ich noch nie benutzt, die Scriptsprache dazu kenne ich nicht; gibt es da vielleicht einen Direktlink zu?

    Ich möchte alle Videos (Xvid/mp3) innerhalb eines Ordners mit einem einzelnen for-Befehl in Video- und Tonspur aufteilen und nach Bearbeitung der Tonspur wieder zusammenfügen (den Thread zum Stichwort Replay Gain dazu hatte ich schon gefunden).

    Ich hab mir dazu zwei einfache Scripts für vdub geschrieben (vielmehr: aus der .jobs-Datei zusammengefummelt):


    Durch den Aufruf von

    vdub /i demux.script beispiel

    erhalte ich also die beiden Dateien beispiel-video.avi und beispiel-audio.mp3 und nach Aufruf von

    vdub /i mux.script beispiel

    die neue Datei beispiel-neu.avi.

    Klappt soweit auch, aber die Dateien beispiel.avi und beispiel-neu.avi sind, auch wenn ich die Scripte unmittelbar hintereinander ausführe, laut fc verschieden und unterscheiden sich in der Länge um etwa 1900 Byte, bei der Betrachtung fällt mir allerdings nichts auf.

    Da ich jede Menge Zeilen aus der .jobs-Datei fortgelassen habe (z.B. Interleave), frage ich mich, ob es daran liegt? Kann ich die Unterschiede ignorieren? Die beiden Videos selbst müssten doch völlig identisch sein?!

    Danke schon mal.