Ach doch, das habe ich aktiviert. Das erklärt auch, warum das mal hier, mal da landete.
Ich hatte noch ein kurzes Edit an den letzten Beitrag gehängt: Für den Datei-Auswahl-Dialog der Audiodatei den Input-Path wählen.
Ach doch, das habe ich aktiviert. Das erklärt auch, warum das mal hier, mal da landete.
Ich hatte noch ein kurzes Edit an den letzten Beitrag gehängt: Für den Datei-Auswahl-Dialog der Audiodatei den Input-Path wählen.
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):
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.
Das Kopieren der Audiodatei klappt in der neuen Hybridversion jetzt jedenfalls.
Unwetterbedingt jetzt erst: Das kam wohl doch zu früh: Die Audiodatei wurde gar nicht kopiert, nur kam statt der Crashmeldung eine Erfolgsmeldung (FINISHED …). Beim Muxen kam auch keine Fehlermeldung, allerdings enthielt die mp4 keine Tonspur.
Ja, kann man nix machen.
Das Kopieren der Audiodatei klappt in der neuen Hybridversion jetzt jedenfalls.
Zitatbenutzt 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:
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:
avsInfo funktioniert nicht mehr
Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: avsInfo.exe
Anwendungsversion: 0.0.0.0
Anwendungszeitstempel: 49358e9d
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: 759f
Zusatzinformation 2: e9ece1d6d7561e7143fa610050d6c6ae
Zusatzinformation 3: 0105
Zusatzinformation 4: 61a3e9011ae5a8271abd39a6fed7e6a9
Alles anzeigen
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:
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):
[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:
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:
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:
Extrahieren der Streams mit Yamb liefert einen h264-Stream mit 23.976fps, erneut gemuxt, und auch die mp4 stimmt:
Ü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):
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
AVSAnalyser forced for input: F:\Scripte\Planet der Affen.avs
Analysing video only with AVSAnalyser
analysing: F:\Scripte\Planet der Affen.avs
exitCode: -1073741819 #
Collected the following video infos:
> Frame rate: 25
> Width: 720
> Height: 576
> Interlace mode: PRO
> PAR: 1
> Frame count: 162652
> Duration: 6506.08
Analysing audio only with MediaInfoAnalyser
Collected the following audio infos:
> ID: 0
> Format: ffmp3
> Bitrate: 192 kBit/s
> Channels: 2
> Sample rate: 48000 Hz
> Stream count: 1
> A/V delay: 0 ms
Job 135358798 2010.02.26 - 13:53:58:
decoderCL:
mencoder "F:\Scripte\Planet der Affen.avs" -really-quiet -ovc raw -noskip -lavcopts threads=1 -lavdopts threads=1 -mc 0 -vf scale,format=i420 -forcedsubsonly -fps 25 -nosound -of rawvideo -o -
Job 135358798 2010.02.26 - 13:53:58:
encoderCL:
x264 --profile high --crf 16 --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 80 --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 2 --vbv-maxrate 62500 --vbv-bufsize 78125 --threads auto --thread-input --sar 64:45 --filter -1,-1 --fps 25 --output "F:\Temp\Planet der Affen (2001) -v2_135358798.264" - 720x576
Job 135358798 2010.02.26 - 19:55:41:
[COLOR='Red'][B]Video decoder - QProcess::Crashed[/B][/COLOR]
Job 135358798 2010.02.26 - 19:55:44:
x264 [info]: frame I:1813 Avg QP:14.11 size: 36412
x264 [info]: frame P:37644 Avg QP:15.62 size: 16283
x264 [info]: frame B:123195 Avg QP:17.74 size: 6608
x264 [info]: consecutive B-frames: 2.4% 3.2% 10.3% 19.0% 17.8% 38.0% 9.2%
x264 [info]: mb I I16..4: 5.0% 83.7% 11.3%
x264 [info]: mb P I16..4: 10.4% 0.0% 18.9% P16..4: 35.0% 24.9% 8.5% 0.0% 0.0% skip: 2.3%
x264 [info]: mb B I16..4: 1.3% 0.0% 0.9% B16..8: 49.7% 3.4% 3.5% direct:12.9% skip:28.4% L0:39.6% L1:44.4% BI:16.0%
x264 [info]: 8x8 transform intra:9.8% inter:70.7%
x264 [info]: direct mvs spatial:100.0% temporal:0.0%
x264 [info]: coded y,uvDC,uvAC intra: 61.3% 62.7% 27.0% inter: 30.0% 29.2% 1.2%
x264 [info]: i16 v,h,dc,p: 29% 16% 11% 44%
x264 [info]: i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 10% 12% 6% 8% 11% 6% 12% 10%
x264 [info]: i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 16% 5% 13% 9% 12% 15% 9% 12% 10%
x264 [info]: Weighted P-Frames: Y:5.1%
x264 [info]: ref P L0: 67.8% 20.5% 10.6% 1.1% 0.0%
x264 [info]: ref B L0: 90.3% 9.7%
x264 [info]: ref B L1: 91.4% 8.6%
x264 [info]: kb/s:1835.83
encoded 162652 frames, 7.49 fps, 1835.83 kb/s
Alles anzeigen
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:
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.
try {
_AUDIO = false
_FILE = "..\video-temp\planet der affen -a1"
v = _AUDIO ? mpeg2source(_FILE + ".d2v")
\: mpeg2source(_FILE + ".d2v", cpu=6)
a = _AUDIO ? Exist(_FILE + ".ac3.wav") ? WAVSource(_FILE + ".ac3.wav")
\ : WAVSource(_FILE + ".mp2.wav")
\: ""
v = _AUDIO ? AudioDub(v, a) : v
v = v.trim(486,30747) + v.trim(39675,71732) + v.trim(81330,116048) + v.trim(122245-75,187732)
v1 =v
_FILE = "..\video-temp\planet der affen -a2"
v = _AUDIO ? mpeg2source(_FILE + ".d2v")
\: mpeg2source(_FILE + ".d2v", cpu=6)
a = _AUDIO ? Exist(_FILE + ".ac3.wav") ? WAVSource(_FILE + ".ac3.wav")
\ : WAVSource(_FILE + ".mp2.wav")
\: ""
v = _AUDIO ? AudioDub(v, a) : v
v = v.trim(3620,56282) + v.trim(66860-12,99809) + v.trim(110911-50,144455) + v.trim(154159-100,197488)
v2 = v
o = ovl(v1,v2)
v = o.trim(0,30262) ++ v2.trim(30263,30600) ++ o.trim(30601,52656) ++ v1.trim(52657,53020) ++ o.trim(53021,62313)
\++ v2.trim(62314,62660) ++ o.trim(62661,85616) ++ v1.trim(85617,86025) ++ o.trim(86026,97039)
\++ v2.trim(97040,97489) ++ o.trim(97490,119219) ++ v1.trim(119220,119669) ++ o.trim(119670,0)
v = zoom(v,0,70+64,74,0,76,120,in=false,out=true,frames=64)
v = Logo4(v)
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)
v
}
catch(fehler) {
ShowError(fehler)
}
function Logo4(clip v){
cl = v.crop(592,456,0,0)
# cl = servelogo(cl,96,96,"LO",snipsize=24)
cl = Overlay(delogo(cl,96,96,"LO","rtl2\16zu9-2-1"),
\ delogo(cl,96,96,"LO","rtl2\16zu9-2-2"),opacity=0.667)
return Overlay(v,cl,x=592,y=456)
}
# Reinzoomen, um unerwünschte Dinge am Rand auszublenden
function Zoom(clip v, int von, int bis,
\ int "left", int "top", int "right", int "bottom",
\ int "frames", bool "in", bool "out"){
left = Default (left, 0)
top = Default (top, 0)
right = Default (right, 0)
bottom = Default (bottom,0)
frames = Default(frames, 30)
in = Default(in, false)
out = Default(out, false)
endwidth = v.width - (left+right)
endheight = v.height - (top+bottom)
z = v.trim(von,bis)
zin = z.trim(0, (bis-von)/2)
zout = z.trim((bis-von)/2 +1, 0).reverse()
zin = in ? zin.Animate(0, frames, "Spline64Resize",
\ zin.width, zin.height, 0, 0, zin.width, zin.height,
\ zin.width, zin.height, left, top, endwidth, endheight)
\: zin.crop(left,top,-right,-bottom).Spline64Resize(zin.width,zin.height)
zout = out ? zout.Animate(0, frames, "Spline64Resize",
\ zout.width, zout.height, 0, 0, zout.width, zout.height,
\ zout.width, zout.height, left, top, endwidth, endheight)
\: zout.crop(left,top,-right,-bottom).Spline64Resize(zout.width,zout.height)
z = zin ++ zout.reverse()
v = von==0 ? z ++ v.trim(bis+1,0) : v.trim(0,von-1) ++ z ++ v.trim(bis+1,0)
return v
}
Alles anzeigen
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.
ZitatKann 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):
//Script: demux.script
declare _AVIin;
declare _AVIout;
declare _mp3;
_AVIin = VirtualDub.params[0] + ".avi";
_mp3 = VirtualDub.params[0] + "-audio.mp3";
_AVIout = VirtualDub.params[0] + "-video.avi";
VirtualDub.Open(_AVIin);
VirtualDub.audio.SetMode(0); // Direct Stream Copy
VirtualDub.SaveWAV(_mp3); // Tonspur speichern
VirtualDub.audio.SetSource(0); // kein Ton
VirtualDub.video.SetMode(0); // Direct Stream Copy
VirtualDub.SaveAVI(_AVIout); // Video speichern
VirtualDub.Close();
// Script: mux.script
declare _VideoIn;
declare _mp3In;
declare _AVIout;
_VideoIn = VirtualDub.params[0] + "-video.avi";
_mp3In = VirtualDub.params[0] + "-audio.mp3";
_AVIout = VirtualDub.params[0] + "-neu.avi";
VirtualDub.Open(_VideoIn);
VirtualDub.audio.SetSource(_mp3In);
VirtualDub.video.SetMode(0); // Direct Stream Copy
VirtualDub.audio.SetMode(0); // Direct Stream Copy
VirtualDub.SaveAVI(_AVIout);
VirtualDub.Close();
Alles anzeigen
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.