View Full Version : MeGUI - x264/XviD/lavc/Snow encoder with MP4/MKV/AVI output & audio
Doom9
26th June 2005, 19:40
@Rash: Thank you for the attachment. Unfortunately I've only added the important trace line in the 0.2.0.1a version. I've just noted that Brazilian Portuguese uses the comma as decimal separator, and since odyn reported that the 0.2.0.1a fixes all problems for him with regards to the progress bar, perhaps you could give it a try as well and let me know if it works out for you: http://forum.doom9.org/showthread.php?t=96415
What does that MP4 overhead option on the "AutoEncode" window does?It sets the overhead assumption for the bitrate calculation. While lower than other containers, MP4 still does have an overhead per video frame that has to be taken into account. You can set that in the GUI. It'll be set to 10.4 bytes/frame when you use b-frames, and 4.3 bytes/frame when you do not use b-frames (so you can see that b-frames incurr a significant container overhead.. but compared to AVI's 24 bytes/frame for video only (and a lot more with VBR audio).. it's still low).
I have exposed that setting, and am writing muxing statistics for each mp4 muxed to a file mp4stats.txt in your MeGUI directory.. hopeing that enough people will send me that file (it's not really happening right now I'm afraid) so that I can gather enough statistics to make better assumptions about the overhead.. it seems 10.4 works out pretty well at least for x264 with b-frames, but I'm not so sure about the rest. Seems some time I also have to go over the whole statistics reporting again because it's not really up to the scenarios that are now possible (e.g. mp4 muxing with a video-only mp4.. that scenario wasn't foreseen when I started the muxer and it only was introduced when I started supporting x264.exe).
Rash
26th June 2005, 20:12
I was going to attach the logs here, but since it is 100% now with 0.2.0.1a (including a coma in the fps :D) I won't give you anymore trouble.
But I couldn't find a mp4stats.txt in my MeGUI folder, otherwise I would send it to you. Is that because I'm doing a video only encode?
Doom9
26th June 2005, 21:23
Is that because I'm doing a video only encode?Indeed.. it is only written when you're muxing something into an mp4.. either using auto-mode or using the muxer manually.
Doom9
26th June 2005, 23:55
alright, the next version is out.
A word of advice: I haven't tested what will happen if you have an mp3 job configured and try to launch auto-mode.. it might explode your PC.. realistically seen if I did all the preparation right it shouldn't allow you to launch auto-mode, but you never know. Either way MP3 in MP4 will not be a supported configuration.
Please let me know if you need another other lame options for casual mp3 encoding but note that I'm not going to support every option. I have no plans to create a BeLight clone.. I don't think that would be useful in the MeGUI context, plus I consider it unethical to write a clone of an existing program just because I can, and bring nothing of my own to the table.
Rash
27th June 2005, 00:17
Doom9, if I may make a suggestion, you could do only LAME --preset options. For example:
--preset medium
--preset standard
--preset extreme
Or let the user type the switch he prefers himself. Afterall the LAME presets are supposed to make the best possible quality. I don't know, just a suggestion. I won't use MP3 anyway. ;)
And thank you for the new version.
Doom9
27th June 2005, 00:25
well.. I added the options I think I might ever use.. those are the ones that are highly likely to stay ;)
savior
27th June 2005, 01:23
here is the debugview log
debug log (http://home.comcast.net/~slapp_happy/megui.log)
was set up for auto 2pass, and to mux previously encoded audio.
was you needing another other type of log file??
Doom9
27th June 2005, 01:35
I think I got it from here. Looking at your log I see that the video bitrate is 0. Looking a bit further I see that the bitrate was set to 0 because the framerate of your video appears to be 0. Looking at the debugview log, x264.exe reports the same framerate. So, clearly something is wrong with your video. If you open the script again.. do you get a proper view preview window where you can actually see your video?
Also, set the second pass back to waiting, and start again while leaving Debugview running.. I guess it'll catch an x264.exe error. Apparently a bitrate of 0 works for the first pass but I'm confident it won't work for the second pass.. x264.exe will abort with an error message that I seem not to catch as such. If you get nothing interesting in the debugview, could you also try to run your second pass commandline from dos mode and append "> output.txt" at the end of the commandline, then post output.txt here.
savior
27th June 2005, 02:07
set back to waiting and started second pass. nothing happened as you stated.
2nd log (http://home.comcast.net/~slapp_happy/megui2.log)
trying 2nd pass in dos mode to see what happens.
loaded avs again and preview comes up perfect.
noticed this in the log
Desired size of this automated encoding series: 734003200 bytes
Encoded audio file is present: C:\BASKBALL\VIDEO_TS\baseketa.mp4 has a size of 46925530 bytes.
adjusting desired size. New desired size = 687077670 bytes
No audio encoding. Calculating desired video bitrate directly.
Setting video bitrate for the video jobs to 0 kbit/s
Desired size of this automated encoding series: 734003200 bytes
Encoded audio file is present: C:\BASKBALL\VIDEO_TS\baseketa.mp4 has a size of 46925530 bytes.
adjusting desired size. New desired size = 687077670 bytes
No audio encoding. Calculating desired video bitrate directly.
Setting video bitrate for the video jobs to 0 kbit/s
Next job job1-1 is a video job. encoder commandline:
"x264.exe" --pass 1 --bitrate 0 --stats "2pass.log" --subme 4 --analyse p8x8,b8x8,i4x4 --progress --no-psnr --output NUL "C:\BASKBALL\VIDEO_TS\baseket.avs"
successfully set up video encoder and callbacks for job job1-1
----------------------------------------------------------------------------------------------------------
Log for job job1-1
avis [info]: 640x352 @ 0.00 fps (148305 frames)
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
x264 [info]: slice I:594 Avg QP:47.95 Avg size: 130
x264 [info]: slice P:147711 Avg QP:51.00 Avg size: 17
x264 [info]: slice I Avg I4x4:0.1% I8x8:0.0% I16x16:99.9%
x264 [info]: slice P Avg I4x4:0.0% I8x8:0.0% I16x16:0.0% P:0.0% P8x8:0.0% PSKIP:100.0%
x264 [info]: kb/s:0.0
Actual bitrate after encoding without container overhead: 0.00
----------------------------------------------------------------------------------------------------------
job job1-1 has been processed. This job is linked to the next job: job1-2
Next job job1-2 is a video job. encoder commandline:
"x264.exe" --pass 2 --bitrate 0 --stats "2pass.log" --subme 4 --analyse p8x8,b8x8,i4x4 --progress --no-psnr --output "C:\BASKBALL\VIDEO_TS\baseketv.mp4" "C:\BASKBALL\VIDEO_TS\baseket.avs"
successfully set up video encoder and callbacks for job job1-2
----------------------------------------------------------------------------------------------------------
so unable to process 2nd pass due to these para.
savior
27th June 2005, 02:16
ok this is confusing, when loading .avs in virtualdub or mpc, virtualdub closes and mpc crashes. so maybe something with mpeg2dec.dll im using??
but it loads in megui , weird heh.
and that was just the renamed dgdecode.dll from the dmpgdec zip file.
LigH
27th June 2005, 06:18
Immediately closing or crashing applications... one possible reason is that you may have placed an AviSynth 2.0x plugin into the auto-load folder of AviSynth 2.5x. Does the "version()" script work well?
Furthermore, I see no reason to rename DGDecode.dll to MPEG2Dec.dll - and I hope you know that d2v project files must always be generated with the same DGIndex.exe that was bundled together with the DGDecode.dll used to open it.
savior
27th June 2005, 10:10
it is the dgindex.exe and dgdecode.dll from the dgmpgdec140rc3.zip file i have. it was renamed due to just with avisynth only installed the preview window would not load in megui. i had to manually load the plugin each time for a video. so yes the .dll being used was packaged with the dgindex im using. also the version() does work when loaded into mpc. avisnyth 2.55.
bond
27th June 2005, 10:28
i wasnt able to set the paths for mp4box and mencoder in the settings
mencoder.exe and mp4box.exe is simply not displayed to be existing the folder (altough they are of course)
Doom9
27th June 2005, 10:34
mencoder.exe and mp4box.exe is simply not displayed to be existing the folder (altough they are of course)The directory filter was set to besweet.exe and mp4.exe respectively.. naturallly mencoder.exe and mp4box.exe don't fall under that filter. Wait a few minutes for 0.2.0.2a
bond
27th June 2005, 10:41
i also noticed that you offer mp4, aac to aac, mp3 encoding via besweet
note that besweet doesnt offer aac decoding so you cant use it for reencoding aac (in mp4 or not)
Doom9
27th June 2005, 11:54
i also noticed that you offer mp4, aac to aac, mp3 encoding via besweetNot so much offering as not removing the open filter.. there are tons of caveats when switching between audio output formats.. I doubt I can deal with every possible scenario. Just imagine somebody accessing the audio codec dropdown, selecting mp3 output by mistaken.. and boom.. his configured mp4 input is gone, even though he only selected mp3 by mistake. So, in addition to remove the input filter (that I can do), I'd have to kick out his configured mp4 input.. if he goes back to AAC mode.. the previously loaded mp4 is still gone and will have to be reloaded.. not really ideal, is it?
In auto-mode, since the input is an mp4... it'll be muxed.. the rest of the config won't matter. In the future with AVI output, isInputAVIMuxable() will return false on that stream.. so the stream will be discarded because it wasn't configured properly.
If you have a solution that covers every!! scenario that you think is better than mine, please let me know.
Doom9
27th June 2005, 12:07
Alright, the latest build discards mp4/aac input of the first configured track. The second track doesn't really apply because it will never be used (mencoder only supports 1 audio track in mp3).
bond
27th June 2005, 13:37
you didnt seem to understand what i mean:
besweet cant decode aac audio so of course also the aac->aac conversion will not work
therefore you cant allow aac/mp4 input in the audio input tab independantly of the output format
edit: btw would be nice if the logs could be moved to a seperate log folder, cause they can get a lot and fill the main folder quickly
Doom9
27th June 2005, 15:06
you didnt seem to understand what i mean:Hmm.. you wrote it differently the first time, but you did point out a problem in mp3 mode. Now in mp3 mode as you can see mp4 output is no longer possible.
And as far as mp4 input goes.. did you notice that it's not possible to select an output file when you select an mp4 input? It's also not possible to start encoding with an .aac/.mp4 loaded as audio input. In auto-mode, if your audio input it set to an aac/mp4 file, it will be muxed in the mux step.. no audio encoding will be done. Audio encoding to mp4 is only done if the input is a non aac/mp4 file and the output is an aac/mp4 file.
If that doesn't work as it should please file a bugreport but at least I know it used to work exactly how I want it. I found it rather cumbersome to have to configure audio tracks in a separate window, hence I also allow audio input files that will only be muxed, not encoded, as well as those that will be encoded and muxed (and those that will only be encoded in audio only mode.. pressing queue in the audio groupbox will create just an audio job independent of any other thing you may have configured).
edit: btw would be nice if the logs could be moved to a seperate log folder, cause they can get a lot and fill the main folder quicklyOkay, I'll move them to a logs/ subfolder in the MeinGUI folder in the next release (not the one I'm about to release).
Doom9
27th June 2005, 15:48
I have a conceptual question, for bond, and everybody else:
Does it make sense that you can configure audio streams to be muxed in the main GUI or should this only be possible in the muxing window?
Right now, you can select .aac/.mp4 audio tracks in the main GUI, then when you press AutoEncode, you configure the final output name, split size, etc. And if you check "Add subtitles & chapters" before pressing GO, you can configure the name of the audio tracks you'll get (be it tracks that will be muxed, or tracks that will be encoded and then muxed), and add additional streams.
To permit configuration of both audio tracks that will be encoded and those that will only be muxed in the main window, I had to go through considerable hoops. Now with the addition of AVI output in auto encoding mode, it might get worse, and conceptually I'm not sure it makes a lot of sense to configure audio tracks that are to be muxed, not encoded, in the main GUI which is clearly meant for setting up jobs that are to be encoded.
Thus, what would you think about the following:
In the main GUI in the audio section, you configure audio jobs that are to be encoded. Then if you go into auto-mode, the checkbox you can check to give audio tracks a language, as well as adding subtitle tracks and chapters, will lead you to the mux configuration window where you can not only add a language descriptor to existing audio tracks (those that you set up for encoding in the main GUI), but you'll also be able to add additional existing audio tracks (.aac/.mp4 files for mp4 output).
And in case of AVI output, the additional window will just allow you to specify pre-existing MP3/AC3 audio tracks.
Or simply put: everything that you're going to encode is set up in the main window, everything that you're going to mux is set up in an additional window from within the auto-encode window (and of course the muxing functionality will also be available separately from the tools menu.. the mp4 muxer is already available from that menu today).
I think that way would be cleaner insofar that encoding and muxing are clearly separated. Considering all the work already put into this, it might not really make my life easier at this point, but from a coding point of view at least it would still be a more easy to understand workflow.
bond
27th June 2005, 18:24
Hmm.. you wrote it differently the first time, but you did point out a problem in mp3 mode. Now in mp3 mode as you can see mp4 output is no longer possible.
i also noticed that you offer mp4, aac to aac, mp3 encoding via besweeti didnt only talk about mp3 encoding, but about aac encoding too
And as far as mp4 input goes.. did you notice that it's not possible to select an output file when you select an mp4 input? It's also not possible to start encoding with an .aac/.mp4 loaded as audio input. In auto-mode, if your audio input it set to an aac/mp4 file, it will be muxed in the mux step.. no audio encoding will be done. Audio encoding to mp4 is only done if the input is a non aac/mp4 file and the output is an aac/mp4 file.ah that makes sense and is a great thing
it might be good to disable the config tab too in that case, cause this made me think megui wants to reencode the aac
about the autoencode muxing, its working fine
about the new avc profile setting feature:
- great that you offer this!
- setting custom macroblocks allows using high profile mb even with main and baseline profile
- cqm seems to always be disabled, even when high profile is set
- a feature request: also being able to set the levels (automatically together with the vbv values of the levels) would make the profile/level support complete
one issue i noticed:
when clicking on the config tab megui isnt displayed in the windows taskbar at the bottom of the screen anymore
when closing the config tab it appears again
is that a normal behaviour? it makes switching between megui and eg writing a thread on doom9 (or reading a guide) slightly (!) more difficult
cheburashka
27th June 2005, 18:44
@Doom9
I like x264cliGUI 1st pass speedup section. It make 2-3 pass configuration more flexible. It would be nice to have similar options in MeGUI interface.
Doom9
27th June 2005, 19:08
I like x264cliGUI 1st pass speedup section. It make 2-3 pass configuration more flexible.Could you outline this a bit? In fact you already have turbo mode in MeGUI which disables certain options (only during the first pass).. notably it lowers subq, number of reference frames and certain mb options.
@bond: thanks for the feedback on the profiles. Do you have a link about the levels? I took your sticky for that feature but I didn't find anything about buffers (I looked.. I figured buffers most come into play at some point).
is that a normal behaviour?Yup.. I ended up having about 5 windows on top of each other in certain configurations and that simply was too much for me so I started hiding forms.. basically the main GUI is inacessible when you are in a configuration dialog. But, if you know a more userfriendly way.. you can show/hide any form, show or not show it in the taskbar, dynamically set minimize/maximize buttons on form.. you name it. Just tell me how I can make it better.
it might be good to disable the config tab too in that case, cause this made me think megui wants to reencode the aacYou mean the config button, right? I guess I could do that but I see the following problem: say a user wants to configure/create/edit an audio profile.. now in order to do that he/she first needs to load an encodeable audio file.. as a counterexample you can configure codecs in both GordianKnot or VirtualDub even if no encodable video source is loaded.. I guess moving the non-encodable audio input selection into a place where it becomes more apparent that they're only being muxed will improve the "straightforwardness". I'll await some more feedback before changing anything though.
bond
27th June 2005, 19:25
@bond: thanks for the feedback on the profiles. Do you have a link about the levels? I took your sticky for that feature but I didn't find anything about buffers (I looked.. I figured buffers most come into play at some point).
you would need to have a look at the specs (which i link to in the sticky), i dont know anything about the different vbv settings so i dont think i can be much help here
Yup.. I ended up having about 5 windows on top of each other in certain configurations and that simply was too much for me so I started hiding forms.. basically the main GUI is inacessible when you are in a configuration dialog. But, if you know a more userfriendly way.. you can show/hide any form, show or not show it in the taskbar, dynamically set minimize/maximize buttons on form.. you name it. Just tell me how I can make it better.
always display the main gui in the taskbar and the others not
You mean the config button, right? I guess I could do that but I see the following problem: say a user wants to configure/create/edit an audio profile.. now in order to do that he/she first needs to load an encodeable audio file.. as a counterexample you can configure codecs in both GordianKnot or VirtualDub even if no encodable video source is loaded.. I guess moving the non-encodable audio input selection into a place where it becomes more apparent that they're only being muxed will improve the "straightforwardness". I'll await some more feedback before changing anything though.
maybe you should move the audio muxing to the autoencode tab? after all you can also mux mp3 audio to .mp4 with mp4box, so it might make sense to seperate the reencodeaudio from the muxaudio inputs
or you allow an own switch in the config tab which lets people choose between "mux" and "encode" (encode also offering the codec settings)
Pasqui
27th June 2005, 19:43
@Doom9
So far the only problem I have with MeGUI (now taht x264 progress bar works) is the suggest resolution checkbox in AviSynth sript generator panel. Each time I check it I get the following error:
System.FormatException: Le format de la chaîne d'entrée est incorrect.
at System.Number.ParseDouble(String s, NumberStyles style, NumberFormatInfo info)
at System.Double.Parse(String s, NumberStyles style, IFormatProvider provider)
at MeGUI.AviSynthWindow.suggestResolution_CheckedChanged(Object sender, EventArgs e)
at System.Windows.Forms.CheckBox.OnCheckedChanged(EventArgs e)
at System.Windows.Forms.CheckBox.set_CheckState(CheckState value)
at System.Windows.Forms.CheckBox.OnClick(EventArgs e)
at System.Windows.Forms.CheckBox.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Is it a known issue ?
Regards
cheburashka
27th June 2005, 20:38
Could you outline this a bit? In fact you already have turbo mode in MeGUI which disables certain options (only during the first pass).. notably it lowers subq, number of reference frames and certain mb options.
This sections would allow you to manually adjust default "turbo" settings and to change me method as well.
See attached image:
http://forum.doom9.org/attachment.php?attachmentid=4220&stc=1
savior
28th June 2005, 00:02
doom9, after deleting the folder again, starting with your latest version and going back to dgindex 1.30 issue has been fixed. dunno if the fix was local or not but im glad its fixed. thank you for your time and your great program.
:)
job job1-1 has been processed. This job is linked to the next job: job1-2
this series of jobs starts with an audio job and is followed by regular twopass video jobs
The audio job is named job1-2 the first pass job1-2 and the second pass job1-3
The second pass job has a desired final output size of 734003200 bytes and video bitrate of 700 kbit/s
The audio file size is 113850023 bytes
calculateVideoBitrate(113850023, 734003200, 148299, 4.3, 23.976)
Setting the desired bitrate of the subsequent video jobs to 801 kbit/s
Next job job1-2 is a video job. encoder commandline:
"x264.exe" --pass 1 --bitrate 801 --stats "2pass.log" --analyse p8x8,b8x8,i4x4 --progress --no-psnr --output NUL "C:\BASKBALL\VIDEO_TS\base.avs"
successfully set up video encoder and callbacks for job job1-2
Doom9
28th June 2005, 12:52
Is it a known issue ?Well.. the AR uses a dot as decimal separator.. I suppose if you were to change the decimal separator in the language settings in the control panel it would work. I think this is the exact same issue as the progress bar, except that there's an ample amount of error catching done in the encoder (hence you just didn't get any status updates.. double parsing would bomb out and that was that) which isn't the case here.
This sections would allow you to manually adjust default "turbo" settings and to change me method as well.I see. Though I'm wondering if this is such a smart thing. Some of those changes might actually have a noticeable impact on the quality of the final product.
cheburashka
28th June 2005, 18:13
I see. Though I'm wondering if this is such a smart thing. Some of those changes might actually have a noticeable impact on the quality of the final product.
You may put this section in advanced tab, so only people who know what they do will change defaults.
cheburashka
28th June 2005, 18:31
Doom9,
You tool is getting more and more mature to be "all in one" frontend.
The only thing I miss is a compressibility test. After that it would be "new GK without VFW." :cool:
Doom9
28th June 2005, 21:00
well.. I'm a bit wary about that feature.. if you have aku backing you up that it's safe to use certain options in a first pass without visible quality degration, then I believe the turbo option should do all those things. There's a turbo option in libavcodec, xvid and the x264 vfw version.. it's all one checkbox, so I'd say it's kinda what people can be trusted to handle safely.. give them another 10 options on top of what's already there might just end up confusing people more and drive them to using another codec. And for those who know what they're doing, they're probably not looking for a tool that is as automatic as MeGUI has become.
As far as the compressibility check goes.. personally I find that a useless feature.. but if there's a demand and somebody can tell me what I'd have to do (I really don't have a clue what is done in such a check.. it's just something I never felt any particular need for knowing), perhaps I'll do it. Of course.. there's 4 different codecs, and I figure 3 different stats formats at least (libavcodec based encoders, xvid and x264).
AMED
29th June 2005, 03:42
Hi,
I gave MeGUI a go last night and found a couple of problems.
I have ripped the monster inc DVD using DVDDecrypter using IFO mode.
i have set all the locations for all the needed files in MeGUI and i'm using x264 for encoding, not mencoder
i open up MeGUI and start the d2v creator and load the first vob file from the ripped DVD. i get and error stating that it couln't find the stream information.txt
MeGUI is looking for the file named vts_13 - stream information.txt when i look in the folder where i ripped the disc the files are as below.
VTS_13_0.IFO
VTS_13_PGC_01 - Stream Information.txt
VTS_13_PGC_01_1.VOB
VTS_13_PGC_01_2.VOB
VTS_13_PGC_01_3.VOB
VTS_13_PGC_01_4.VOB
VTS_13_PGC_01_5.VOB
i click ok on the couldn't find dialogue box, demux all audio streams and build the d2v.
onto AVS.
i open up the AVS creator and load the d2v file i just made. i get an error saying that dgdecode.dll wasn't found.
System.DllNotFoundException: Unable to load DLL (dgdecode.dll).
at MeGUI.d2vReader.openMPEG2Source(String fileName)
at MeGUI.d2vReader.openD2V()
at MeGUI.VideoPlayer.loadVideo(String path, PREVIEWTYPE type)
at MeGUI.AviSynthWindow.openVideo(String videoInput)
at MeGUI.AviSynthWindow.openVideoButton_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
i checked the directory where DGIndex.exe is and sure enough dgdecode.dll is there, so i copied dgdecode.dll into the same dir that MeGUI.exe is in and that fixed that problem. i save the AVS file after cropping the picture (using autocrop).
I load the AVS into the video part and specify the output name, and click autoencode.
a couple of encoding boxes pop up and then dissapear and the log shows this
Desired size of this automated encoding series: 734003200 bytes
No audio encoding. Calculating desired video bitrate directly.
Setting video bitrate for the video jobs to 587201 kbit/s
Next job job1-1 is a video job. encoder commandline:
"H:\Stored Files\Video\MeGUI-0.2.0.4\x264.exe" --pass 1 --bitrate 587201 --stats "2pass.log" --analyse p8x8,b8x8,i4x4,p4x4,i8x8 --8x8dct --progress --no-psnr --output NUL "G:\UNDEFINED\MeGUI.avs"
successfully set up video encoder and callbacks for job job1-1
----------------------------------------------------------------------------------------------------------
Log for job job1-1
avis [error]: unsupported input format (DIB )
----------------------------------------------------------------------------------------------------------
job job1-1 has been processed. This job is linked to the next job: job1-2
Next job job1-2 is a video job. encoder commandline:
"H:\Stored Files\Video\MeGUI-0.2.0.4\x264.exe" --pass 2 --bitrate 587201 --stats "2pass.log" --analyse p8x8,b8x8,i4x4,p4x4,i8x8 --8x8dct --progress --no-psnr --output "G:\UNDEFINED\Megui video.mp4" "G:\UNDEFINED\MeGUI.avs"
successfully set up video encoder and callbacks for job job1-2
----------------------------------------------------------------------------------------------------------
Log for job job1-2
avis [error]: unsupported input format (DIB )
could not open input file 'G:\UNDEFINED\MeGUI.avs'
desired video bitrate of this job: 587201 kbit/s - obtained video bitrate: 0 kbit/s
----------------------------------------------------------------------------------------------------------
job job1-2 has been processed. This job is linked to the next job: job1-3
Next job job1-3 is a mux job. mp4box commandline:
"H:\Stored Files\Video\MeGUI-0.2.0.4\MP4Box\MP4Box.exe" -add "G:\UNDEFINED\Megui video.mp4" -fps 24 -new "G:\UNDEFINED\Megui video-muxed.mp4"
successfully set up muxer and callbacks for job job1-3
----------------------------------------------------------------------------------------------------------
Log for job job1-3
Error setting job priority. Error message: Cannot process request because the process (2780) has exited. stacktrace: at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.GetProcessHandle(Int32 access)
at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
at MeGUI.MP4Muxer.encode()
----------------------------------------------------------------------------------------------------------
Hi had a feeling that there was something funky with the AVS file, so i used Gordianknot to create an avs to compare with the MeGUI one.
This is the MeGUI created AVS
mpeg2source("G:\UNDEFINED\monsters.d2v")
crop(10,0,-10,-2)
LanczosResize(640,480)
and the one from gordain knot (which works)
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\UnDot.dll")
mpeg2source("G:\UNDEFINED\monsters.d2v")
crop(10,0,700,572)
LanczosResize(640,480)
Undot()
sorry for such a long post.
LigH
29th June 2005, 07:26
"avis [error]: unsupported input format (DIB )"
Very strange: The FourCC "DIB " is one of the few valid for RGB24. But your script looks like it shall output YV12 because there is no colorspace conversion after MPEG2Source.
I wonder if it is possible that any kind of "forced colorspace conversion" kicks in between AviSynth and x264. But where, and how?!
berrinam
29th June 2005, 07:49
i checked the directory where DGIndex.exe is and sure enough dgdecode.dll is there, so i copied dgdecode.dll into the same dir that MeGUI.exe is in and that fixed that problem.
Not actually, it just made it disappear. You also need dgdecode.dll in your AviSynth plugins folder (normally, c:\program files\AviSynth 2.5\plugins), but it won't tell you about that error in any explicit way (ie, it will just fail quietly with the symptoms you have).
AMED
29th June 2005, 08:01
having dgdecode.dll in c:\program files\AviSynth 2.5\plugins and in the same folder as MeGUI.exe seems to have fixed all my problems.
Doom9
29th June 2005, 08:12
vts_13 - stream information.txtThat's the default setting.. you can have tons of ways of DVD Decrypter naming the output files.. just as AutoGK expects certain options checked, I do, too.
And as far as dgdecode goes.. somewhere in the readme it should say that the dll needs to be in the megui folder for the AviSynth creator, and in your autoload folder. I've often moved around scripts to machines that had the proper DLLs, but not at the proper place.. hence relying on auto-load where I don't have to worry about the location of the DLLs.
AMED
29th June 2005, 08:42
That's the default setting.. you can have tons of ways of DVD Decrypter naming the output files.. just as AutoGK expects certain options checked, I do, too.
And as far as dgdecode goes.. somewhere in the readme it should say that the dll needs to be in the megui folder for the AviSynth creator, and in your autoload folder. I've often moved around scripts to machines that had the proper DLLs, but not at the proper place.. hence relying on auto-load where I don't have to worry about the location of the DLLs.
couldn't you have it search for *stream information.txt in the folder of where the ripped files are?
Di Abolico
29th June 2005, 09:52
Hi! Great thanks to you, Doom9 and all who participated, for such a great tool!
Got a minor question that's not exactly on topic, but surely related to. The other day I did some dvd-rip encoding with MeGUI + mencoder to Xvid. There was great speed, no errors, and colors, totally messed up in resulting video. Checked avs script - it played ok in players like MPC and Light Alloy, however mplayer, just as mencoder (no wonder), produced wrong colors. After adding "ConvertToRGB32()" to avs script weird effect went away, but doesn't mencoder accept YV12-source material?
Doom9
29th June 2005, 10:46
couldn't you have it search for *stream information.txt in the folder of where the ripped files are?That wouldn't work if you have two VTS sets in the same directory.. but I see what I can do about the naming.. it would have to be VTSX (where the X matches the VOB you selected.. it needs to be the first one by the way as DGIndex expects to be given the first one and picks up subsequent ones automatically) + *Stream Information.txt.. I have to check if I can make a filter like that.
@Di Abolico: If you're using dgindex.. which version? mencoder can only handle true YV12.. DGIndex used a slightly different format until v1.2.1 that would lead to discolored results when used with mencoder.
Di Abolico
29th June 2005, 11:17
Doom9
Unbelievable! Yes, you were absolutely right! Upgrading DGIndex (the version had been, ashamed to say, 1.0.12) entirely solved the problem. Thank you kindly!
stax76
29th June 2005, 11:25
Of course.. there's 4 different codecs, and I figure 3 different stats formats at least (libavcodec based encoders, xvid and x264).
also don't forget everytime a change is made to the stats format it's a breaking change, mine is based on filesize, 40 lines (old and ugly) code, works regardless of the used codec and quite good for DivX and XviD. I wonder how do you find your bitrate without doing a compcheck?
Doom9
29th June 2005, 12:39
I wonder how do you find your bitrate without doing a compcheck?it's all based on the per frame overhead assumption. Fortunately the Nero AAC encoder takes MP4 overhead (or actually... "underhead" as the raw stream is bigger than the one packed into an MP4) into account so I really only have to worry about video and the values I'm using (the ones ateme gave me with their avc encoder) seem to work out reasonably well.
Either way, somebody first has to guide me through a compcheck for me to be able to figure out the amount of work and if I really want to do that. Of course, since it's open source, anybody can step in..
@cheburashka: I've started a discussion on turbo "features" in the official x264 thread.. if there are any changes that could be added to the current turbo mechanism, I prefer to implement all those, rather than risk that people either use settings that make things slower but not better, or break anything. In the end what I think mostly matters is that you get the best possible speed gain without degrading the end results.. anything else should be up to people setting up first and second pass (and 3rd for that matter.. I'm currently contemplating adding an automated 3 pass even though it's not something I'd ever use, but it's easy enough for regular encoding, just needs some additional intelligence in automated mode)
superdump
29th June 2005, 17:03
I've started a discussion on turbo "features" in the official x264 thread.
And I've replied. :)
Doom9
29th June 2005, 20:35
by the way.. here's another way you can help, without even needing to know how to code: since subtitles cannot be OCR'ed completely automatic in most cases, I have asked for VobSub subtitle import to mp4box (Nero style using private streams). I haven't gotten around to even encoding a sample stream though so if you have one ready, could you please attach it here: https://sourceforge.net/tracker/?func=detail&atid=571741&aid=1227952&group_id=84101
Having that feature in mp4box would mean I could also offer fully automated subtitle processing in MeGUI and get one step closer to the one click ideal.
berrinam
30th June 2005, 12:11
Is matroska output (eg for AC3+AVC) through mkvmerge a possible future for MeGUI, or do you plan to stick to the mp4 container?
Doom9
30th June 2005, 13:38
I'm not really a fan supporting 10 different containers.. each has its own sets of problems that need to be dealt with. For instance, Matroska cannot handle raw AVC so you'll either have to have two mux jobs (raw -> mp4, mp4 -> mkv), or restrict the encoder to x264.exe.. then there's bitrate calculation, yet another muxer to be supported, new muxing dialogues, new audio formats (ogg), new ways of transferring audio streams in between dialogs.. even adding avi is a pain in the ass even though I have a neat workaround in mind (you can mux audio during video encoding).
Doom9
1st July 2005, 23:06
I've already fixed all the issues bond mentioned (no level support yet) and the ultra-fast turbo, as well as all the other issues that have come up. In addition, I believe to have fixed another old muxing issue also related to commas.. I think I got them all now.
I really got myself into a mess with that AVI feature though.. I'm still not done with that :/ Should've stuck to MP4 output.
Doom9
2nd July 2005, 21:15
Alright, with the new release out, a few notes:
mencoder freezes when muxing AC3. This is because it cannot get the properties of your audio file. unixfs wrote a patch for that which was turned down (http://forum.doom9.org/showthread.php?t=94787&page=1&pp=20).. I'm going to file a bug report hoping it'll be fixed fast.
Note that I have yet to adjust the load button to take care of the newly created muxjob type so don't try to load an AVI mux job.
mencoder can't split (right now) so AVI split sizes are ignored. I kept it in the hope that this will change some day.
And I hope that's it.
avc cqm files have the extension .cfg, not .txt!
Doom9
3rd July 2005, 00:06
avc cqm files have the extension .cfg, not .txt!alright, I'll adjust that. Not that it would matter since it's still an ASCII text file ;)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.