Hmpf... Bei Hybrid bekomme ich "Speicherzugriffsfehler".
Kannst das eventuell auch als src-Package zur verfügung stellen?
Ich benutze Gentoo, und da bin ich vorkompalierte Packete nicht gewohnt...
Hmpf... Bei Hybrid bekomme ich "Speicherzugriffsfehler".
Kannst das eventuell auch als src-Package zur verfügung stellen?
Ich benutze Gentoo, und da bin ich vorkompalierte Packete nicht gewohnt...
ZitatKannst das eventuell auch als src-Package zur verfügung stellen?
Sorry, aber momentan bleibt Hybrid erst mal ClosedSource.
Hybrid ver. 100223
*added*
- LogTab
- limit dts-hd extension size analyse for dts-hd inside m2ts containers
*cosmetics*
- moved a bunch of things
*fixed*
- bug when audio&video passthrough were enabled at the same time (e.g. when just remuxing&tagging a file)
- checking that 'cbrHD' output is not supported when aiming for an .mp4 file
- not using 30000/1001 etc. for mp4box calls but decimals since mp4box otherwise creates files with a 30000fps info in the header.
Downloads:
Hybird Win32: http://www.selur.info/hybrid/Hybrid_100223.zip
Hybird Win64: http://www.selur.info/hybrid/Hybrid_100223_64bit.zip
Hybrid Linux32bit binary: http://www.selur.info/hybrid/Hybrid_100223_binary.zip
Hybrid Linux64bit binary: http://www.selur.info/hybrid/Hybrid_100223_64bit_binary.zip
Der Link für das 64bit Windows Binary von sx264 ist kaputt.
Und noch 'ne kleine Frage (bevor ich mich durch diesen Dicken Thread wühle, ich bitte um nachsicht...): Wo ist der unterschied in Hybrid und sx264?
Gruss und Danke
Bitspyer
Hybrid ist als eine Arte Nachfolger von sx264 zu beurteilen, der a. mehr kann und b. eine angenehmere Codebasis hat, was ihn wartbarer macht.
Hybrid unterstützt mehrere Audiostream, kann auch den Videostream durchreichen (kann also zum reinen Remuxen verwendet werden) und ist an sich etwas mehr durchdacht.
Cu Selur
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?
ZitatAVSInfo stürzt immer ab, wenn in einem Script sowohl MPEG-2-Streams als auch XviD verarbeitet werden
Wie sieht das Skript aus, was Probleme macht?
ZitatVorschlag: Nach dem Laden einer neuen Input-Datei die Zeile für den Output löschen. (oder automatisch den Namen anpassen).
Da ich nur noch Bugfixes bei sx264 mache werde ich dies in sx264 nicht mehr ändern, aber ich schreib es mir mal als Option für Hybrid auf.
ZitatAlle Einstellungen, die regelmäßig neu eingestellt werden (müssen) auf den Main-Tab.
Woher soll ich den wissen was Du regelmäßig nutzt?
ZitatInsbesondere eine externe Tonspur als Eingabedatei betrachten und nicht als „Audio-Handling“ (AH) und AH per default abschalten.
Nutze persönlich vielleicht in 1% der Fälle die Möglichkeit eine separate Audiospur zu laden.
Zitatansonsten friert sx264 ein.
Wenn Du dazu genauere Infos gibst werde ich mich dran setzen um zumindest das zu verhindern.
ZitatAuß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.
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.
ZitatAch 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?
ich guck mal drauf,..
Das Avisynthproblem in Hybrid kann ich nachstellen und werde mich ran machen es zu fixen.
-> denke ich habe das Problem in Hybrid gefixed, würde Dir auch eine gefixte Version schicken, wenn ich nur wüsste was Du verwendest,... (Win/Linux 32/64 bit)
Kann das Problem in sx264 nicht nachstellen. Kannst Du das von Dir geschriebene Skript den in z.B. Virtual Dub öffnen?
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.
ZitatNa 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.
Hybrid bietet genau so wie sx264 die Möglichkeit sowohl PAR als auch Auflösung fest zu legen.
Cu Selur
Ps.: Link zu einer Hybrid Version bei der das Avisynth Problem behoben sein sollte, hab ich Dir per PM geschickt.
Hybrid ver. 100226
*fixed*
- Avisynth input (remember: on 64bit Systems make sure that you can decode the Avisynth skript with e.g. Virtual Dub)
*added*
- option to manually set path of helper tools
- support for '--pic-struct' option
*compatibility*
- x264 'use internal decoder' disabled as default (only enable it if your x264 build comes with the necessary support)
- use absolute paths in calls
*cosmetics*
- moved a bunch of things
(you need to enable Misc in the Main-Tab to enable the Misc-Tab)
Reset Defaults in Misc-Tab on first start
Hybrid ist umgezogen: http://forum.gleitz.info/showthread.php?t=41981
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
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 - | 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
sieht eigentlich okay aus, gibt die Zeile (wie ich sie gepostet habe) mal 1:1 in ner Konsole im sx264 Verzeichnis ein und guck ob da eventuell noch eine genauere Fehlermeldung kommt, glaube aber nicht, dass das ein sx264 Problem ist, denn es sieht eher so aus, als ob der Xvid Decoder den Du (mittels Avisource) im Avisynth Skript verwendest crashed.
Cu Selur
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.
avsInfos wird nur beim Laden des Skripts zur Analyse verwendet, hat also sicher nichts mit dem Problem zu tun.
Da es nach dem eigentlichen Encoding wohl zu Problemen kommt wäre interessant wie ein DebugOutput bzw. die Befehle die nach dem Encoding aufgerufen werden aussehen,..
Cu Selur
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?
ZitatÜbersehe ich nur eine zusätzliche Einstellung zur Framerate, oder wird grundsätzlich mit 25fps gemuxt?
k.A. ohne DebugOutput,..
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.
ZitatSieht so aus, als wenn MP4Box das nicht richtig einträgt?
Yup, ist ein Bug, sollte es tun.
-> Ist mir total unklar wie das passieren kann,.. benutzt Du auch sicher die aktuelle sx264 Version? (rev573)
wie der entsprechende Codeabschitt:
ret = "MP4Box";
ret += " -fps "+outputFramerate+" -par 1="+parW+":"+parH;
ret += " -add \""+videoTemp+"\"#video";
ohne, dass da par&fps gesetzt werden ist mir schleierhaft und kann ich bei mir nicht nachstellen,....
ZitatIch 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.
Resette mal die Defaults im Misc Register, wenn da noch die Defaults einer älteren Version existieren kann das passieren.
ZitatDie Crashmeldung von avsInfo nach dem Laden des Scripts erscheint auch hier.
Was gibt avsInfo den aus, wenn Du in einer Konsole im sx264 Verzeichnis:
avsInfo "F:\Scripte\Planet der Affen - Kopie.avs"
aufrufst?
Zitat19_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"
-> hab die Methode mal etwas umgeschrieben, sollte in der neuen Hybrid Version gehen.
Damit ich hier nicht total verrückt werde bitte Hybrid Probleme im Hybrid Thread posten.
Cu Selur
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.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!