View Full Version : MeGUI - x264/XviD/lavc/Snow encoder with MP4/MKV/AVI output & audio
Pages :
1
[
2]
3
4
5
6
7
8
9
10
11
12
lesnick
6th July 2005, 17:05
hello, i have the problems:
1) i cant use 1st pass cording x264 with mencoder: fps -1, time 0
Next job job4-1 is a video job. encoder commandline:
"E:\My things\Prog\meGUI\tool\mencoder.exe" "E:\vid\tg.avs" -ovc x264 -o NUL: -passlogfile "2pass.log" -x264encopts pass=1:bitrate=700:bframes=1:b_adapt:subq=1:no8x8mv:nob8x8mv:me=0
successfully set up video encoder and callbacks for job job4-1
----------------------------------------------------------------------------------------------------------
Log for job job4-1
----------------------------------------------------------------------------------------------------------
job job4-1 has been processed. This job is linked to the next job: job4-2
Next job job4-2 is a video job. encoder commandline:
"E:\My things\Prog\meGUI\tool\mencoder.exe" "E:\vid\tg.avs" -ovc x264 -passlogfile "2pass.log" -x264encopts pass=2:bitrate=700:bframes=1:b_adapt:i4x4 -o "E:\vid\gh\ged.264" -of rawvideo
successfully set up video encoder and callbacks for job job4-2
---------------------------------------------------------------------------------------------------------
Log for job job4-2
----------------------------------------------------------------------------------------------------------
The current job was aborted. Stopping queue mode
2) if i use B frames (when i don`t use b frames - all is O.K.) in AVC with mencoder i have file 0 kb:
Log for job job4-1
----------------------------------------------------------------------------------------------------------
job job4-1 has been processed. This job is linked to the next job: job4-2
Next job job4-2 is a video job. encoder commandline:
"E:\My things\Prog\meGUI\tool\mencoder.exe" "E:\vid\tg.avs" -ovc lavc -passlogfile "2pass.log" -lavcopts vpass=2:vbitrate=700:vmax_b_frames=2:vb_strategy=1:qpel:vqdiff=2:trell -o "E:\vid\gh\ged.m4v" -of rawvideo
successfully set up video encoder and callbacks for job job4-2
----------------------------------------------------------------------------------------------------------
Log for job job4-2
[mpeg4 @ 00A9C848]b_frame_strategy must be 0 on the second passCould not open codec.
FATAL: Cannot initialize video driver.
Cannot find codec matching selected -vo and video format 0x32315659.
desired video bitrate of this job: 700 kbit/s - obtained video bitrate: 0 kbit/s
----------------------------------------------------------------------------------------------------------
job job4-2 has been processed. This job is linked to the next job: job4-3
Next job job4-3 is a mux job. mp4box commandline:
"E:\My things\Prog\meGUI\tool\MP4Box.exe" -add "E:\vid\gh\ged.m4v" -fps 25 -new "E:\vid\gh\ged.mp4"
successfully set up muxer and callbacks for job job4-3
----------------------------------------------------------------------------------------------------------
Log for job job4-3
an exception ocurred when trying to read from stdout: Could not find file "E:\vid\gh\ged.mp4".
----------------------------------------------------------------------------------------------------------
Doom9
6th July 2005, 17:22
Let's start with number two: I see you're using the b-frame reduction mode, and the 2nd pass error message tells me all I need to know.
Looking at the mencoder manpage I found this:
vb_strategy=<0-1> (pass one only)It appears that I missed that one and add vb_strategy to first and second pass, causing your problem. I will fix this in the next version. For now just don't use the adaptive b-frame setting when using lavc.
As for your first problem, I had to consult the manpage again but I'm afraid that's my fault, too. The me=0 option is the culprit.. mencoder uses me=1-4
I guess the error message in both cases would be there, but doesn't have either the word error or anything else I identify as an error in it.. otherwise MeGUI should halt immediately and not start subsequent jobs.
lesnick
6th July 2005, 18:48
Sorry for oftop. Can you tell me, what you prefer: Mencoder or x264 for x264 cording, and why? And can you tell me where i can get x264CLI SSE/SSE2 ?
Sharktooth
6th July 2005, 18:54
x264 CLI (coz it's smaller and is usually more up to date - also, less code, less bugs...) and it already comes with SSE/SSE2. The MMX suffix is there to warn ppl it REQUIRES AT LEAST MMX to work.
Doom9
6th July 2005, 18:55
Mencoder or x264 for x264 cording, and why?It depends.. if you want AVI output, mencoder is clearly preferable. If you want mp4 output, x264 is more practical. Right now with the summer break this one doesn't matter much, but the reason I added support for another encoder in a mencoder GUI is because x264.exe is smaller and more up-to-date.. we're lucky to get one mencoder build a week, but the latest x264 compilations are out only hours after a new revision has been committed.
But I'm glad you're using mencoder.. you discovered two bugs.. not good for me but good for all the other users.
lesnick
6th July 2005, 19:19
Thanks for prompt replies. I shall wait the following release
Doom9
6th July 2005, 21:27
Alright, before I unleash the one click mode upon the world here's the list of caveats for the upcoming release:
You will need to create a profile for the audio and video codec you're going to use.
Set AR to Auto Detect in the one click window or make sure you select the proper one manually.
DVDs with MPEG audio might cause problems.. if you have one, please get me the stream info file. The same applies to LPCM tracks.
AVI output in the one click window has NOT!! been tested. Trying to use it might make your head explode.
The language selection seems to suffer from the fact that depending on where you bought a DVD, the language might be indicated using the native name (like Français), or the English name. Currently, MeGUI only supports English names. Whether or not it will be possible to support both is currently under investigation.
I moved around a LOT!! of tested code which inevitably might lead to problems. It is therefore crucial that those who try the one click mode and run into problem, try reproducing the problem using a "lesser" mode. So here's the how to for the various parts:
Opening a video source: start the dgindex project creator (control-d), and set it up just like you did set up the job in the one click window
DGIndex problem: same as above, try reproducing in the dgindex project creator window
DGIndex has run successfully but jobs are not properly created: try the AviSynth project creator (Control-A in the main gui). Open your d2v, check "autocrop", check "suggest resolution", check "on save close and load", then press save. This reproduces the steps that will be taken after running dgindex in the one click window.
Problem encoding/muxing: try using the auto mode using the same video and audio profile and the video/audio you got demuxed.
Since the code is the same, bugfixing will always be done first in the separate modules (easier scenarios).
Doom9
6th July 2005, 21:57
alright, the new release is out now.
haubrija
7th July 2005, 05:01
Ok... I'm laying myself out for ridicule... but I don't want anyone else to go through the same thing.
I set up my jobs doing an auto encode. Come back in the morning and my mp4 is way oversized. Plus it has no audio. I'm thinking what the hell?
Doom9... it might be a good idea to have megui perform a check so the user doesn't name both the video and audio output the same thing hence overwriting one of their jobs in the process. I realize this may be a little redundant and no one else may make my idiotic mistake...but just in case :)
btw love your tool. Keep up the good work.
Doom9
7th July 2005, 09:30
Doom9... it might be a good idea to have megui perform a check so the user doesn't name both the video and audio output the same thing hence overwriting one of their jobs in the process.Well, I could certainly do that.
As for the oversize I would need to see your logfile..
leowai
7th July 2005, 09:38
I set up my jobs doing an auto encode. Come back in the morning and my mp4 is way oversized.
I got the same problem. I used v0.2.0.8. Double checked that v0.2.0.9 also the same.
haubrija, you're more lucky than I am. I only realize this oversize problem on the process of 2nd pass. First pass takes me about 22hrs to complete on my P3 1GHz machine. :(
From the command line generated by MeGUI, I think MeGUI should replace the bitrate in the configuration panel (says 700 default) to what it calculated (says 626kps, with 128kps of AAC audio) in the AutoEncode mode.
It doesn't make sense since the audio size is already known, the "Automatic Encoding" dialog box also shows the required Avereage Bitrate to fit the target output size. Why the program doesn't allow to change the default 700 (in config panel) to the calculated bitrate? This option is remain in gray and unselectable. :(
This is a bug of MeGUI?
Thanks.
Doom9
7th July 2005, 09:54
It doesn't make sense since the audio size is already known, the "Automatic Encoding" dialog box also shows the required Avereage Bitrate to fit the target output size. Why the program doesn't allow to change the default 700 (in config panel) to the calculated bitrate? This option is remain in gray and unselectable. What do you mean by the config panel? There's no panel.. just dialogs. You can set any bitrate you want in a codec configuration dialog (this is the window you get when you press the config button in the main gui).. in auto-mode, this will be discarded... you cannot set a bitrate you are required to set a size and the bitrate is automatically calculated based on your configuration.. all that calculation info is actually part of the log (so where is it?). The way you're describing things, I'm wondering if you are using MeGUI correctly.. you get your jobs set up from the autoencode window, don't you? If you load one of those created jobs from the queue, you'll see that it has the bitrate that was calculated. It makes absolutely no sense to propagate a calculated bitrate to the codec configuration dialog.. once you enter the auto mode, you cannot reconfigure the codec and your last configured settings will be taken. The only way you can still change anything after clicking queue in the auto encode window is if you load a job from the queue, change something, and update the existing job.
A job has it's own configuration.. at the point you press queue, the currently active settings (minus bitrate in case of video in auto-encode or one click mode) will be plugged into that job. After it is in the queue, it has no reference whatsoever to what you see in the codec configuration dialog. You can change that all you want.. once a job is in the queue, you can only change it if you a) load it, b) modify it, c) update it. a & c require the appropriately named buttons in the queue tab.
Now if you're refering to the "Average Bitrate" textfield in the "Automatic Encoding" groupbox in the Automatic Encoding window... this is a bitrate preview and it does change if you change the file size. I'm quite confused why you think you need to specify a bitrate. You do not.. MeGUI is smart enough to calculate the bitrate for you, taking up to two audio tracks and up to 5 subtitle tracks automatically into account. And it has to be a hell of a coincidence if the average bitrate in the place I just mentioned is exactly 700 kbit/s. Try this: configure audio and video, go into one click mode, note the average bitrate shown. Then press cancel, press the X button to clear the audio, and go to the auto encode window again. Note that the average bitrate has changed.
leowai
7th July 2005, 11:46
Now if you're refering to the "Average Bitrate" textfield in the "Automatic Encoding" groupbox in the Automatic Encoding window... this is a bitrate preview and it does change if you change the file size.
Yes, I mean the Average Bitrate in "Automatic Encoding". I also noticed the change of video size and bitrate if an audio is included.
I'm quite confused why you think you need to specify a bitrate. You do not.. MeGUI is smart enough to calculate the bitrate for you, taking up to two audio tracks and up to 5 subtitle tracks automatically into account.
Yes, it does show the changes. However, when I double check with the command line in quequed jobs (3 pass), it shows the bitrate is equals to the one specified in the config dialog instead of the calculated one.
Following is my encoding steps:
1. Video: a. Set input AviSynth Script. (A movie windows shown).
b. Define the Video Output: AVC, MP4 and use "automated 3pass"
*If the bitrate is 800 here, I will get this in the command line!
2. Define Audio input and output @128kbps (assume no problems here).
3. Click on "AutoEncode", now I got the calculated is 626kbps (Video file size will be 593221KB). Assume no additional audio, subtitles and chapters to add. I click on "Queque" button.
4. Use text edit to open the corresponding job file *.xml. I found the command lines in jobs now specifying "--bitrate 800". This 800 is the bitrate in the config dialog rather than the calculated 626 (which takes audio size into account).
My problem is the MeGUI "AutoEncode" provide correct bitrate but when it generate the command line for jobs, it uses the bitrate in the config dialog! Wondering is this happen to you too, or it just happen to me only. :(
May be my steps in creating the jobs are incorrect.
And it has to be a hell of a coincidence if the average bitrate in the place I just mentioned is exactly 700 kbit/s. Try this: configure audio and video, go into one click mode, note the average bitrate shown. Then press cancel, press the X button to clear the audio, and go to the auto encode window again. Note that the average bitrate has changed.
"One Click Mode"="One Click Encoder" in the tools menu? If you refers to the "AutoEncode" button, see above.
Hope my explanation above is clear enough.
Thanks.
Doom9
7th July 2005, 13:06
Yes, it does show the changes. However, when I double check with the command line in quequed jobs (3 pass), it shows the bitrate is equals to the one specified in the config dialog instead of the calculated one.That is correct, if you are also encoding audio. Think about it for a second: when you're encoding audio, you do not know the audio size in advance... you can guess (which MeGUI does and shows you the results from that guess), but that guess is generally not very accurate, especially in VBR mode. So what happens is that the bitrate is left as configured in the configuration dialog, up until the point where all audio jobs have been completed. Then you'll see entries in the log in between the last audio and the first video job telling you the size of the audio stream(s) and which bitrate MeGUI recalculates for the video knowing how big your audio file(s) is/are. Sure I could add the calculated bitrate from the autoencode average bitrate field into all the jobs.. but what good will that do me if I have to recalculate the bitrate anyway? It's just an additional step that serves no purpose.
However, if you try without audio encoding, but do specify an audio track to be muxed, then you will immediately see in the log that MeGUI is calculating the video bitrate, and if you check the jobs, the bitrate will match the value the log tells you. If you're just muxing pre-existing audio files, MeGUI can calculate the video bitrate accurately right there. And if you combine the two scenarios (one pre-existing audio track, one to be encoded), you'll have a hybrid mode in which MeGUI reduces the desired size by the size of the pre-existing audio, and then recalculates again once your audio track to be encoded has been encoded.
So, once again.. if your output is oversized I need to see the log, plain and simple. You'll see MeGUI recalculating bitrates in there. The last version might lack some entries but you'll see the recalculation for sure as that's a part of the code I have not touched since the introduction of the 3 pass mode. And naturally I have checked that the bitrate recalculation works properly when I made those changes.
leowai
7th July 2005, 14:02
However, if you try without audio encoding, but do specify an audio track to be muxed, then you will immediately see in the log that MeGUI is calculating the video bitrate, and if you check the jobs, the bitrate will match the value the log tells you.
Yup. Check that if I mux the video with an existing audio, the command output to the jobs are correct. i.e. skip step 2 and add additional audio(s) at the end of step 3.
If you're just muxing pre-existing audio files, MeGUI can calculate the video bitrate accurately right there. And if you combine the two scenarios (one pre-existing audio track, one to be encoded), you'll have a hybrid mode in which MeGUI reduces the desired size by the size of the pre-existing audio, and then recalculates again once your audio track to be encoded has been encoded.
I see. This means the bitrate will be changed according to the output audio size. Just wondering, since job files are save after MeGUI closed, will MeGUI update the jobs when encoding if the jobs start after MeGUI is closed and re-open?
My senerio might be able to be explained. I've input an EXISTING audio as one of the encoding job. I then delete off the job later because only doing this I would notice the change of bitrate in Video to fit 1 CD correctly in the "AutoEncode" dialog. I simply thought that the shown bitrate in gray will be used in the encoding process. That is my first use of MeGUI and that's why I thought I was correct. Now I know I shouldn't do so :).
I've tried the encoding with auto3pass and it takes me 20hrs+ for a pass of 2hr DVD movie. I don't want to wait for another day and I think it might be good enough with a 2nd pass video. It is my mistake to remove the 3rd pass while the 2nd encoding is in process. I just thought that they are independent processes running in sequence. Not knowing that MeGUI is getting the jobs done in sequence with dependant of previous job in auto3pass.
I believe that is the cause where the video size is increased to an undesired size after I've remove the 3 pass from the encoding sequence.
Thanks for you well explanation about the details. Keep on the good job.
berrinam
7th July 2005, 14:12
it takes me 20hrs+ for a pass of 2hr DVD movieI'm not sure if you are aware, but the Turbo option in the x264 (if that's what you're using) settings will give a 3-5 times speed-up on the first pass with no noticeable quality loss.
Doom9
7th July 2005, 14:18
Just wondering, since job files are save after MeGUI closed, will MeGUI update the jobs when encoding if the jobs start after MeGUI is closed and re-open?It depends. As I said, the update is done when you have a series of jobs belonging together. If an audio job links to a video job, that's when the recalculation kicks in. The only time this isn't done is if audio encoding is manually aborted (but then if you redo it, it'll be done again switching from audio to the video job), or if there was an error in the audio job (same thing here, redoing the audio job will redo the calculation).
So, even if you stop encoding after audio encoding by pressing the stop button in the queue tab, the bitrate will still be updated.. but the next job won't be encoded.
So unless you manage to crash MeGUI just in the right moment, the recalculation will always be done.
With pre-existing audio, unless MeGUI crashes before adding the jobs to the queue, the bitrate will be in order.
I've input an EXISTING audio as one of the encoding job. I then delete off the job later because only doing this I would notice the change of bitrate in Video to fit 1 CD correctly in the "AutoEncode" dialog.Yes that is indeed your problem. Doing so you the knowledge about the audio stream away from MeGUI, and it no longer knew that it had to reduce the video bitrate prior to encoding the first pass. That is why there's a warning if you delete a single job of a series of jobs.. deleting one can cause undesired results.
What you should've done is just set up video, then check "add additional streams" and specify your audio stream in the mux window that pops up.. that way the size of the audio would've been taken into account and your video would've ended up having the size you wanted it to have.
leowai
7th July 2005, 14:33
I'm not sure if you are aware, but the Turbo option in the x264 (if that's what you're using) settings will give a 3-5 times speed-up on the first pass with no noticeable quality loss.
Thanks, heard that before but haven try on it yet.
Again, thanks doom9. I would try these out and let the machine runs for this coming weekends. I'll report again if the oversize problem presented. However, I don't think it will happen again. :)
haubrija
7th July 2005, 18:11
Doom9,
Just a point of clarification. I beleive it was oversized because it mp4box imported the video twice. It saw that they were the same name so it imported the video (named temp.mp4) and then what it thought was the audio but was actually the same file (temp.mp4). So I don't think the oversize was the fault of megui... just me.
IgorC
7th July 2005, 19:57
What version of xvid (1.0.3 or 1.1 beta 2) mplayer has?
Doom9
7th July 2005, 21:30
What version of xvid (1.0.3 or 1.1 beta 2) mplayer has?as far as I can tell from my limited experience with the mencoder source, you have to compile in the xvid sources to actually get xvid support. Thus it would be up to whomever compiles mencoder to include whichever version of the xvid sources he/she saw fit. I know it's devapi4 (so 1.x), but that's that.
IgorC
7th July 2005, 21:38
It would be great (at last for me) to see mplayer/MeGUI working with last Xvid 1.1 beta 2 Koepi's build.
Doom9
7th July 2005, 21:45
Xvid 1.1 beta 2 Koepi's build.that is a vfw build.. I'm not using vfw for encoding and I don't plan to ever change that. If you want vfw, look for tools automating avs2avi or the VfW codec (Gordian Knot, AutoGK, DVX, AVI.NET, etc).
MeGUI is a mencoder gui (hence the first two letters of the name).. it'll support what mencoder supports in terms of codecs.
Doom9
7th July 2005, 22:52
the new build for today is out. enjoy
I got a crash on exiting MeGUI 0.2.1.0a - I cleaned the directories for a fresh install of MeGUI and all required tools, created a few video profiles, and closed MeGUI. Here, .NET reported a failure not being able to access a file (unsupported path format). The reason must be: I used a colon in the profile description ("x264 HQ Auto3pass 16:9"). This would result in an invalid filename.
In case you still need a crash report, I saved it.
Beave
8th July 2005, 18:24
MeGUI is getting better and better. I like it. I'm still playing around with x264 and found your GUI very helpful.
A few suggestions from my side:
Could you add the output filename automaticly when opening an avs or an audio file? Like when I open mymovie.avs, the output box could already have the filename "mymovie-video.mp4" or something simmilar in the same directory. For autoencode it doesn't really matter how the immidiate files are called anyways.
I wouldn't mind seeing the commandlines in the mainwindow. Something like in the config windows, would be nice.
In the x264 config window when selecting automated 2-pass the shown commandline is a bit confusing. Could you maybe show both passes seperately on top of each other in the commandline?
The avsynth creator doesn't support resolutions higher than 720.
I would like to be able to define the noise-options with my favorite filters for avisynth myself somewhere.
I wouldn't mind seeing ProjectX support in MeGUI to fix the sync-issues in some of the TS files. Having this in the 1-click tool would be great, too.
Now something farfetched maybe, but I'll ask anyways:
When doing lots of testencodes with x264 with resolution up to 720p I noticed, that playback load depends on many parts. The more options you choose for x264 the higher the playback load (obviously!). The higher the bitrate, the higher the playback load. The more noisereduction filters in avisynth the lower the playback load. The last two things are hard to predict, but they change the playback performance quite a bit.
Maybe there is some way to guess or compute the expected playback performance?
Could you add a compressibility check with x264 to MeGUI? There is probably too little experience with this yet, but it would help to decide on the right options.
superdump
8th July 2005, 18:40
The higher the bitrate, the higher the playback load. The more noisereduction filters in avisynth the lower the playback load. The last two things are hard to predict, but they change the playback performance quite a bit.
Maybe there is some way to guess or compute the expected playback performance?
The higher the bitrate, the more data that has to be decoded, hence why it produces more load. Noise reduction filters make the video easy to encode, reducing the bitrate and so reducing playback load.
There is a standardised restriction on bitrate and other properties such that the video can be guaranteed to be playable on hardware capable of decoding this h.264 profile/level. I believe Doom9 is considering adding these profiles/levels to the gui.
Doom9
8th July 2005, 19:08
Could you add the output filename automaticly when opening an avs or an audio file?Yes, that would be no problem.
I wouldn't mind seeing the commandlines in the mainwindow. Something like in the config windows, would be nice.I don't see the point of that.. when you configure you can show the commandline and it won't change in the main window.. all that is added is input and output filenames..
In the x264 config window when selecting automated 2-pass the shown commandline is a bit confusing. Could you maybe show both passes seperately on top of each other in the commandline?Why is it confusing? You're configuring the second pass.. MeGUI does the rest when it's time. It's not like the first pass configuration is just out there.. it has to be generated manually and that code doesn't belong into the commandline generation.
The avsynth creator doesn't support resolutions higher than 720. Hmm.. I guess that is due to me setting a maximum for the updown control. I can change that in function of the video that is being opened.. I just wanted to prevent that people resize video to a size larger than the original.
I would like to be able to define the noise-options with my favorite filters for avisynth myself somewhere.And you can.. copy and paste them into the avisynth creator preview once you're done selecting from the available options in the GUI. I you want a full fledged AviSynth encoder, there are plenty of tools around for that and it just wouldn't be right copying other tools - I rather spend my time elsewhere.
I wouldn't mind seeing ProjectX support in MeGUI to fix the sync-issues in some of the TS files. Having this in the 1-click tool would be great, too.I have no idea what you mean by that.
Maybe there is some way to guess or compute the expected playback performance?I don't have a clue about that.. there's not even an attempt anywhere at such a thing.
Could you add a compressibility check with x264 to MeGUI? Asked and answered before. I don't know how a compcheck works so I need somebdy to lay it out for me. Give me the specs and I'll tell you if I can and will do it. But since it's not a feature I consider useful (I know it's in my guides but I have never personally used it for my own purposes, ever), all you can potentially expect from me in this matter is coding.. not the "figuring out how it works and specify the workflow" work. But bring it here and we'll see.
haubrija
8th July 2005, 19:15
Doom9,
I'm at work right now so I can't drop post a log, but I beleive I'm having a problem with the acc encoding. I want to encode to 5.1 aac but it seems to only be encoding in regular 2.0. I'm using mplayer for playback. In my audio options, I've been setting it for: 5.1, CBR 224, HE, leaving everything else default.
I have a soundstorm motherboard so I'd really love to get the 5.1 working. Is this a limitation of mplayer or a possible problem with megui. Thanks for any help.
Doom9
8th July 2005, 19:34
@haubrija: :logfile:
I believe Doom9 is considering adding these profiles/levels to the gui.those, yes, but that's for standalone players/hardware chips, not PCs.
To #275 ^:
Maybe this might help? http://www.codeproject.com/file/isvalidfilename.asp
Beave
9th July 2005, 02:11
I don't know how a compcheck works so I need somebdy to lay it out for me. Give me the specs and I'll tell you if I can and will do it. But since it's not a feature I consider useful (I know it's in my guides but I have never personally used it for my own purposes, ever), all you can potentially expect from me in this matter is coding.. not the "figuring out how it works and specify the workflow" work. But bring it here and we'll see.
OK, basicly it encodes a certain percentage of the video (usually 1-5%) with a fixed quant and generates the probable size for the whole movie. This way you can easily see how well compresseble it is when comparing to the final desired filesize.
I would suggest an extra window for that. There should be a box to put in the percentage for the comptest. A box for the desired filesize and for the bitrate (radio button style, so that only one can be selected). A config button to choose the x264 settings. Then you would take the input avs add a line to it (selectevery(300,15) for example, depending on the given percentage) and start the test.
Why is it confusing? You're configuring the second pass.. MeGUI does the rest when it's time. It's not like the first pass configuration is just out there.. it has to be generated manually and that code doesn't belong into the commandline generation.
When I select "turbo" it shows partly the settings of the second pass, but changes some settings to reflect the ones from the first pass.
I have no idea what you mean by that.
ProjectX is a software that takes input files like TS Transport Streams and demuxes them to .m2v and .ac3 or to another TS. While doing that it corrects errors to keep video and audio in sync.
I'd love to see a on click version for that. Taking a .ts file running it through ProjectX, then making a d2v file, then creating an avs with desired resolution and encoding it to .mp4. But maybe there isn't much demand for that?
Beave
9th July 2005, 02:22
The higher the bitrate, the more data that has to be decoded, hence why it produces more load. Noise reduction filters make the video easy to encode, reducing the bitrate and so reducing playback load.
When I encode a movie to a desired filesize the overall bitrate doesn't change. If the movie is more compressible the codec will just do a better job in compressing it. But how should that effect the playback performance? My guess is, it doesn't use that much "tricks" to encode so that playback doesn't need to decode all those "tricks". But shouldn't those "tricks" use the settings in the config? If I choose CABAC or 8x8dct or bframes playback should suffer, but not if the movie is less compressible. In that case it should only look worse, but use the same cpu load on playback.
Sorry for bringing this up in this thread. It only has slightly to do with MeGUI.
Doom9
9th July 2005, 02:28
When I select "turbo" it shows partly the settings of the second pass, but changes some settings to reflect the ones from the first pass.Which ones? I don't reacall turbo changing anything.. it shouldn't.
Don't you have a whole bunch of other things that need to be done with digital TV streams? Like cutting. That's definitely no job for MeGUI.. it's a video and audio encoding application.
Beave
9th July 2005, 03:14
I posted a screenshot. It shows different settings when selecting turbo in the commandline. Notice the subme=1 part. In the GUI there is number of reference frames = 3 selected.
Doom9
9th July 2005, 03:18
I posted a screenshot. okay.. I got it. This will actually happen in every codec that has turbo.. the problem is that in automated mode you have your second/third pass settings and the turbo flag that belongs to the first pass. When creating the jobs, the two are separated.. but that's only done when adding jobs to the queue. I'll remove the turbo flag for the commandline generation in the next version. if you set encoding mode to 2nd/3rd pass you'll see what you get in automated encoding mode (the two changes that are made when adding the job is setting the mode to second/third pass and removing the turbo flag)
stax76
9th July 2005, 04:28
To #275 ^:
Maybe this might help? http://www.codeproject.com/file/isvalidfilename.asp
thanks for the link, I just rewrote my routine based on this, in optimized basic it looks like this
Public Shared Function IsValidFileSystemName(ByVal name As String) As Boolean
For i As Integer = 0 To name.Length - 1
Dim charValue As Char = name.Chars(i)
Select Case charValue
Case """"c, "*"c, "/"c, ":"c, "<"c, ">"c, "?"c, "\"c, "|"c
Return False
End Select
If AscW(charValue) < 32 Then
Return False
End If
Next
Return True
End Function
translated to C# with Reflector:
public static bool IsValidFileSystemName(string name)
{
int num2 = name.Length - 1;
for (int num1 = 0; num1 <= num2; num1++)
{
char ch1 = name[num1];
char ch2 = ch1;
if (((((ch2 == '"') || (ch2 == '*')) || (ch2 == '/')) || ((ch2 == ':') || (ch2 == '<'))) || (((ch2 == '>') || (ch2 == '?')) || ((ch2 == '\\') || (ch2 == '|'))))
{
return false;
}
if (ch1 < ' ')
{
return false;
}
}
return true;
}
Microsoft has a internal method that don't follow this rules exactly, it throws an exception and can be seen with Reflector and accessed with Reflection:
GetType(System.IO.Path).InvokeMember("CheckInvalidPathChars", _
Reflection.BindingFlags.InvokeMethod Or _
Reflection.BindingFlags.NonPublic Or _
Reflection.BindingFlags.Static, _
Nothing, Nothing, New String() {"filename"})
stax76
9th July 2005, 06:16
Don't you have a whole bunch of other things that need to be done with digital TV streams? Like cutting. That's definitely no job for MeGUI.. it's a video and audio encoding application.
You've got a video preview and AviSynth script maker, these could be used to add cutting, it don't require much or sophisticated code I think. There was just a topic about a AC3 cutting tool that would be handy for this. Tools like ProjectX and Cuttermaran that are slow or don't support keys or lack features in general do the cutting job rather poor.
berrinam
9th July 2005, 06:39
Cutting can be done with the current apps that MeGUI requires -- video cutting is easy and frame-accurate with AviSynth (trim command), and BeSweet can cut audio, I believe.
lesnick
9th July 2005, 09:21
Help please - sometimes I need to recode very quickly, certainly I use mencoder for this purpose, prompt me, what options are desirable for the maximal speed. (though on mine celeron 1.7 it likely is ridiculous)
@ stax:
Great!
One of my most important problems with new programming languages being learned is: How is that function named, which will do what I want - and does it already exist at all, or do I have to write myself? Syntax can be learned in a snap, but the "word pool / vocabulary" is often sooooo different... you are lost without well referenced help.
stax76
9th July 2005, 12:15
Cutting can be done with the current apps that MeGUI requires -- video cutting is easy and frame-accurate with AviSynth (trim command)
I meant that our applications generate those Trim commands, I've done cutting in DVX with VirtualDub script and in AVSEdit with AviSynth Trim commands, in Stax Media Encoder both will be supported VirtualDub and AviSynth cutting.
@LigH
If you learn .NET I highly recommend to use Visual Studio 2005, the Express Beta Versions are free and work very well (until May 2006) and will be very cheap (50$) after that. They are designed for beginners. I use VS 2005 Express exclusively and many new features like generics extensively, there are tons of really cool new features though a beginner much likely struggles with the basics.
Doom9
9th July 2005, 12:40
Alright, so video cutting could be done easily.. and be analogue to zones. But what about audio? You cannot cut audio at an arbitrary position, it needs to be aligned with an audio frame or you'll get corrupt audio. And say we're using AC3 audio and incurr an almost 30ms delay (size of an audio frame) for each cut.. the audio would get way off base.
And I wasn't aware that besweet supported audio cutting.. I thought that was something for besplit.
I wrote my own filename code similar to the above, but it returns a string with a valid filename. I replace all invalid character by _<2 letter shortcut to the invalid char>_, so for instance * turns into _st_, < turns into _lt_, etc. I think it's reasonable to assume that users will not have a profile using such convention and another one using the invalid character so that there'll be two files named the same.
@lesnick: select 2 pass first pass, check turbo, check the commandline. Basically it's no MV options, subq 1, the lowest me method. But, if you use that for the second pass quality will be visibly degraded. Plus, perhaps you're using one of the other 3 codecs ;) <hint>it is important to tell us right when asking the question exactly what it is you want</hint>
stax76
9th July 2005, 12:56
Alright, so video cutting could be done easily.. and be analogue to zones. But what about audio? You cannot cut audio at an arbitrary position, it needs to be aligned with an audio frame or you'll get corrupt audio. And say we're using AC3 audio and incurr an almost 30ms delay (size of an audio frame) for each cut.. the audio would get way off base.
wave would be fine for my captures which AviSynth can Trim, other formats I have to investigate first
lesnick
9th July 2005, 13:02
meGUI 0.2.1.1 was crashed if push "config" for XVID
-----------------------------------------
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at MeGUI.CommandLineGenerator.generateXviDCommandline(String mencoderPath, xvidSettings xs, String input, String output)
at MeGUI.CommandLineGenerator.generateVideoCommandline(MeGUISettings settings, VideoCodecSettings vSettings, String input, String output)
at MeGUI.xvidConfigurationDialog.showCommandLine()
at MeGUI.xvidConfigurationDialog.dropDownBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
at MeGUI.xvidConfigurationDialog.set_CodecSettings(xvidSettings value)
at MeGUI.MeGUI.videoConfigButton_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)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
MeGUI
Assembly Version: 1.0.2016.3771
Win32 Version: 1.0.2016.3771
CodeBase: file:///E:/My%20things/Prog/meGUI/MeGUI.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
bz6gxvzg
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
************** JIT Debugging **************
To enable just in time (JIT) debugging, the config file for this
application or machine (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the machine
rather than being handled by this dialog.
----------------------------------------------------
Doom9
9th July 2005, 13:21
wave would be fine for my captures which AviSynth can TrimBut the problem is that BeSweet doesn't read AviSynth scripts..
meGUI 0.2.1.1 was crashed if push "config" for XVIDWeird.. I don't recall changing anything since testing and it worked then but I can reproduce this now.
Doom9
9th July 2005, 16:15
OK, basicly it encodes a certain percentage of the video (usually 1-5%) with a fixed quant and generates the probable size for the whole movie. This way you can easily see how well compresseble it is when comparing to the final desired filesize.
I would suggest an extra window for that. There should be a box to put in the percentage for the comptest. A box for the desired filesize and for the bitrate (radio button style, so that only one can be selected). A config button to choose the x264 settings. Then you would take the input avs add a line to it (selectevery(300,15) for example, depending on the given percentage) and start the test.and then what? Using given settings I can predict how big the final movie is going to be.. but that's not what the comptest is about, is it? It's about picking the proper resolution given a certain target size.
towerblocks
9th July 2005, 18:13
meGUI 0.2.1.1 was crashed if push "config" for XVID
-----------------------------------------
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at MeGUI.CommandLineGenerator.generateXviDCommandline(String mencoderPath, xvidSettings xs, String input, String output)
at MeGUI.CommandLineGenerator.generateVideoCommandline(MeGUISettings settings, VideoCodecSettings vSettings, String input, String output)
at MeGUI.xvidConfigurationDialog.showCommandLine()
at MeGUI.xvidConfigurationDialog.dropDownBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
at MeGUI.xvidConfigurationDialog.set_CodecSettings(xvidSettings value)
at MeGUI.MeGUI.videoConfigButton_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)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
MeGUI
Assembly Version: 1.0.2016.3771
Win32 Version: 1.0.2016.3771
CodeBase: file:///E:/My%20things/Prog/meGUI/MeGUI.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
bz6gxvzg
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
************** JIT Debugging **************
To enable just in time (JIT) debugging, the config file for this
application or machine (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the machine
rather than being handled by this dialog.
----------------------------------------------------
I get the same error,Using windows2000
Doom9
9th July 2005, 23:59
@towerblocks: lesnick already reported that bug and I confirmed it.. on the very same page nontheless.. please take a couple minutes to read posts since the last release for any issues that might already have been reported. Thank you.
towerblocks
10th July 2005, 12:30
@towerblocks: lesnick already reported that bug and I confirmed it.. on the very same page nontheless.. please take a couple minutes to read posts since the last release for any issues that might already have been reported. Thank you.
ok prob sorted thanks,But i've ran into another prob,it crashes on 2pass-1st pass,I hit the start button window appears then closes,It's probarbly
something i'm doing wrong here's the log.
Next job job3 is a video job. encoder commandline:
"C:\Megui.2.1.1\mencoder.exe" "C:\Documents and Settings\Administrator\Desktop\buf.avs" -ovc xvid -o NUL: -passlogfile "C:\Documents and Settings\Administrator\Desktop\Megui.2.1.1\logs\2pass.log" -xvidencopts pass=1:bitrate=963:max_key_interval=250:vhq=4:chroma_me:trellis:min_iquant=1:max_iquant=2:min_pquant=1:max_pquant=2:min_bquant=1:max_bquant=2:keyframe_boost=100:kfthreshold=1:kfreduction=20:chroma_opt:zones=1,q,1/60631,q,20
successfully set up video encoder and callbacks for job job3
----------------------------------------------------------------------------------------------------------
Log for job job3
Option xvidencopts: Unknown suboption zones
LigH
10th July 2005, 12:48
Your mencoder does not know the option "zones" - which version do you use?
towerblocks
10th July 2005, 14:04
Your mencoder does not know the option "zones" - which version do you use?
I've updated to the latest version,Works now thanks.
parcival
11th July 2005, 15:47
MeGUI seems great! I will use it as soon as I get back home!
It seems that it does all the things I am currently doing manually (DGIndex, 2-pass X.264, HE-AAC). I only hope it will support matroska container sometime since it is my favourite one, although it isn't really an issue since I can always do MP4->MKV easily with mkvmerge.
So :thanks: !
Doom9
11th July 2005, 21:24
the new release already supports matroska. If there will ever be matroska support in any other mode depends on a few things though.. whether it is possible to do all the operations mp4box does in one go (add various streams, assign language codecs, split), and if somebody can give me a good approximation of the container overhead for each codec type (in function of b-frames if that matters for matroska as well) and audio type (ac3, mp4, aac/mp4, and perhaps ogg as well).
parcival
12th July 2005, 09:34
You mean it supports Matroska as an input, right? Because from what I can tell only MP4 and AVI are supported as output.
MKVmerge is really a command line tool. The MKVmergeGUI is just an interface to create the command line for MKVmerge. So, the answer to your question is yes, it can create everything in one go, add streams, assign language, chapters, merging etc. MKVmergeGUI and MKVmerge are part of MKVtoolnix that has a lot more things in it than just what these two tools offer. All tools are command line so I believe that their integration to meGUI would be simple enough.
Before Matroska container I was using MP4. I made the switch to Matroska because back then it supported multiple audio and subtitle streams and it generally gave me less trouble with the players. Concerning container overhead I remember that it gave me smaller file sizes than MP4 for the same streams (I was using XviD and 5.1 HE-AAC, latter I switched to H.264). But you can find out more about this here:
http://www.matroska.org/technical/overhead/index.html
Besides the above the Matroska container is under the GPL, is free and it doesn’t have the legal limitations that MP4 tools might face in the future (or are already facing).
I have also a few notes for meGUI. I think, concerning the Avisynth script creation tool, that loading DGDecode.dll should be included by default in the beginning of the script (since it work always in pair with DGIndex). Its containing folder can be easily obtained since it is the same as DGIndex. Also, it would be a good feature to have the option to always include some specific script lines in the auto-created scripts. For example, I am always using Undot and Unfilter (www.trbarry.com) filters since they give me faster encodings with better quality. It would be good if there was a field where I could add these lines (or a way to point to a file containing them, for example filters.avs) and then they would be automatically added at the end of each auto-created script. Finally, the crop menu should have a preview just to give feedback of what you do.
Last, but not least, I couldn’t find a way through your tool to edit out parts of a movie that I do not want. For example, the titles feature is cool but sometimes you do not want titles at all, or you just want to encode a specific scene etc. It would be great if there was a movie edit screen just before opening-closing titles selection and similar to it, or even better similar to the VirtualDub edit abilities. I know that this can be done via the Avisynth script or the DGIndex but still there is no way to do it from inside meGUI and novice users might not know or think of how to workaround it.
Again, thanks for your great tool!
LigH
12th July 2005, 09:40
You mean it supports Matroska as an input, right?
No.
Doom9's MeGUI supports the fact, that the latest x264.exe revision is able to create H.264 video inside a Matroska container as output. So it supports ".mkv" as a valid file name extension for x264.exe - nothing else.
As input, it will still expect raw YV12 video.
berrinam
12th July 2005, 09:53
@parcival: A lot of what you ask for has already been asked for in this thread.
You mean it supports Matroska as an input, right? Because from what I can tell only MP4 and AVI are supported as output.Matrska is supported as output, not input, but only from AVC (x264).
All tools are command line so I believe that their integration to meGUI would be simple enough.To quote Doom9 from the MeGUI development thread, Well, human minds are very flexible. Code is not. It's a simple as that. Hinting that a certain feature would be easy, unless you actually know how the program in question works and having a clear idea of how to implement what you're asking for, is a little pretentious and not exactly how you want to motivate any programmer (it's like somebody telling you that the work you do all day could easily be done in half an hour, in other words you're slow an ineffective (and should thus be fired)).Matroska output will probably come somewhere in the future, but it is in no way simple.
Concerning container overhead I remember that it gave me smaller file sizes than MP4 for the same streams (I was using XviD and 5.1 HE-AAC, latter I switched to H.264).This is not true for H.264, I don't know about XviD.
Besides the above the Matroska container is under the GPL, is free and it doesn’t have the legal limitations that MP4 tools might face in the future (or are already facing).What legal limitations?
I think, concerning the Avisynth script creation tool, that loading DGDecode.dll should be included by default in the beginning of the script (since it work always in pair with DGIndex) Already been mentioned, and replied to, in this thread.
Also, it would be a good feature to have the option to always include some specific script lines in the auto-created scripts. For example, I am always using Undot and Unfilter (www.trbarry.com) filters since they give me faster encodings with better quality.Umm... not faster. This thread (http://forum.doom9.org/showthread.php?t=51181) has a comparison of speeds.
It would be good if there was a field where I could add these lines (or a way to point to a file containing them, for example filters.avs) and then they would be automatically added at the end of each auto-created script. Interesting idea, but I think it succumbs to the 80/20 rule.
Finally, the crop menu should have a preview just to give feedback of what you do.Huh? It already does.
Last, but not least, I couldn’t find a way through your tool to edit out parts of a movie that I do not want. Already suggested in this thread.
I know that this can be done via the Avisynth script or the DGIndex but still there is no way to do it from inside meGUI and novice users might not know or think of how to workaround it.What about audio cutting? That can't be done through AviSynth.
@edit: updated missing url link.
Doom9
12th July 2005, 10:41
Matrska is supported as output, not input, but only from AVC (x264).
In fact only using x264.exe.. mencoder won't work.
What legal limitations?Good question ;) Oh yeah, you have to pay patent fees for the MPEG-4 codecs as well if you use them commercially.. regardless of the container. Try selling videos online using XviD and Matroska.. Larry Horn will eventually get in touch with you just as he would (or an associate of his) if you put the video into the MP4 container.
parcival
12th July 2005, 14:58
Thanks for the quick replies.
I didn’t mean to offend anyone or his/her work. I know that programming is difficult since I am a programmer for more than twenty years. When I said that it looks "easy" to implement of course I didn’t mean in any way to pose myself as the super-programmer that finds anything easy. Many times things that I initially thought easy or simple as a programmer proved to be a real pain for me... Until you get down to the point of writing the code yourself you can never be sure. I only stated my personal opinion that it seems doable spending a reasonable amount of work. This was just an estimation that I shouldn’t have made and I am sorry if I offended anyone in any way.
Concerning the rest of the things I mentioned I am new to the thread and I didn’t have the time to look if they have been stated before. Again I am sorry for double posting.
My intention was to mention a few things that from my point of view would help improve an already great application. Of course the developer is free to do whatever he/she likes since it is his/her call and he/she is the ones spending precious time writing the code and developing a free application.
berrinam
12th July 2005, 15:02
@parcival: It's open-source and you are a programmer. Do you want to contribute?
Doom9
12th July 2005, 15:19
well.. if the assumption that mkvmerge behaves like mp4box, the muxing part itself is indeed not that complex.. but that's a big if. Getting mp4box to work was not as straightforward.. it took two attempts and the help of xtknight to get it done right. The rest won't be straightforward though.. it's not easy to handle different audio types that are are aren't valid for different containers, let the user switch output types and adjust input/output selections accordingly, calculate the bitrate differently taking into account the different overheads for different codec types and containers. MP4 is in fact in many ways a very straightforward container.. all I needed was 2 overhead values, be armed with the knowledge that the Nero AAC encoder takes MP4 container overhead into account, and that's it.
parcival
12th July 2005, 15:37
Yes, of course I want to contribute! That is why I also wrote such a long post in the first place. The problem is that I am working 10+ hours per day and I have little spare time left. In about two months though, I am planning a carrier change since I cannot handle so much work any longer. Then I will have a lot of time to work for the open source community, which is a dream I have for a very long time.
Till then all I have time for is a little bit of testing... :(
Sputnik776
13th July 2005, 01:33
Thanks to berrinam who pointed me to the vfw config when megui wouldn't load my script. That worked out perfect.
MeGui will load the .avs and preview the video as well as use mencoder to encode successfully.
However, when I change the encoder in the settings to be x264 it doesn't allow me to encode. Both the script and error are show below. I've installed both the cli and vfw v273 sharktooth builds from this forum category.
Any help would be greatly appriciated.
script:
# Created by AVSEdit
# Admin 6/14/2005
AVISource("c:\test.avi")
Video is HFYU codec at 30fps 640x480
error:
Next job job2 is a video job. encoder commandline:
"C:\Program Files\x264\x264.exe" --bitrate 700 --analyse p8x8,b8x8,i4x4 --progress --no-psnr --output "C:\test.mp4" "C:\test.avs"
successfully set up video encoder and callbacks for job job2
----------------------------------------------------------------------------------------------------------
Log for job job2
avis [error]: unsupported input format (DIB )
desired video bitrate of this job: 700 kbit/s - obtained video bitrate: 0 kbit/s
----------------------------------------------------------------------------------------------------------
leowai
13th July 2005, 04:58
Sputnik776,
I believe adding this at the end of your script will solve your problem.
ConvertToYV12()
Would it be nice for Sharktooth to include some information about using the AVS script as the input to x264 client in the x264 download page? I think it's useful for the newbies, since this question has been asked over and over again.
Sputnik776
13th July 2005, 17:48
Sorry for my noobish-ness... That did the trick leowai. Doing a fresh install on 2 different machines, both the vfw decoder change and this script addition were needed before things would work. I would imagine others like myself would benefit from that info being put in a faq or something.
Thanks for your patience.
Doom9
13th July 2005, 19:59
well, if I weren't so busy developing I'd have written an FAQ already. But you can't have both at the same time.
Doom9
13th July 2005, 22:12
alright, the bitrate calculator is done. enjoy
roror
14th July 2005, 21:19
is there a way to use ISOs in this tool, without using dvd decryptor to extract individual VOB files first?
Doom9
14th July 2005, 22:37
is there a way to use ISOs in this tool,No.. that would be adding a load of other potential issues that I really have no time for. That's stuff for a future Recode killer using x264 and xvid (which may or may not ever see the light of day).
Rasi
15th July 2005, 00:11
question:
why dont u offer the ability to use vorbis as audio?
xvid and ogg in an mkv container is quite common.... so it would make sense (at least for me ;))
roror
15th July 2005, 01:50
No.. that would be adding a load of other potential issues that I really have no time for. That's stuff for a future Recode killer using x264 and xvid (which may or may not ever see the light of day).
OK. Thanks.
Doom9
15th July 2005, 08:15
why dont u offer the ability to use vorbis as audio?Umm.. I guess you are not familiar with the changelog, are you? mkv output is video only directly from x264.exe (and only from that).. there's no muxing going on anywhere.. MeGUI cannot mux MKV so it has no way of muxing anything into an MKV. And it is after all an MPEG-4 tool.. not a Matroska tool.. you won't even find the word Matroska in the program's description.
Beave
15th July 2005, 12:29
Thanks for putting in the target filename when opening an avs file. Now to make it perfect I would have an additional request:
When I open the dialog box to choose another filename, I would like to see the current filename prewritten in that dialog as well. It would also be nice if in the main window the textfield could be writable so that I could change the filename directly.
These are merely some small suggestions. Your program is already great as it is.
I would love to use MEGui for XVID as well (all the important options are nicely put on one page), but I'm missing the option to choose a custom matrix there. Maybe it has been asked and aswered before, but I couldn't find it using search. My guess is that mencoder probably does not support it.
Could you add 1/6 DVD to the Automatic Encoding DropDownBox as well, please? That would be great.
Doom9
15th July 2005, 13:08
It would also be nice if in the main window the textfield could be writable so that I could change the filename directly. I have disabled that a long time ago because people used it to screw up the process.. putting extension that don't match the chosen output type, putting non existing paths, that kind of things.
I would like to see the current filename prewritten in that dialog as well.What good would that do? I mean if you're not happy with the filename you're getting automatically, you are likely to change everything, are you not?
My guess is that mencoder probably does not support it.
That is correct. All codec options mencoder supports are listed here: http://mplayerhq.hu/DOCS/man/en/mplayer.1.html#CODEC%20SPECIFIC%20ENCODING%20OPTIONS%20(MENCODER%20ONLY)
leowai
15th July 2005, 16:02
Doom9,
Could you make MeGUI updates (saves) the job once it is completed or done?
This is because if the OS crash (or restart) while MeGUI is still running, MeGUI will show all jobs are in waiting status after restarted. As a result, I think it's quite reasonable to update (save to disk) what ever job which has been just completed and so that important information could be retained even if MeGUI terminated unexpectedly.
It will be wonderful if the program can provide the pause and continue function when conversion is in process like Nero Recode has. This requires the support from the encoder client? If conversion is pausable, the long time conversion will be more flexible as sometimes you need more CPU resource to work on other things. This probably also able to let some hot running CPU rest for a while. :)
=========================================================
Lastly, I've a dream. I'm dreaming about the conversion in future could be stopped (and the conversion status are saved). You can do a restart or shutdown you machine. Then, the saved conversion will be able to continue from where it stopped just like we resume a halfway downloaded file from http. If this is workable, conversion of a DVD on low speed machine will never be a painful job. May be this requires the support of data segmentation/slices? x264 support slices, isn't it?
=========================================================
mezzanine
15th July 2005, 16:10
It will be wonderful if the program can provide the pause and continue function when conversion is in process like Nero Recode has.
It doesn't work on Recode, only thing that pauses is the progress bar.
Doom9
15th July 2005, 17:11
well.. depending on how the various encoders handle reading from stdout/stderr, a pause function would effectively be possible. I'm quite certain it will not work for mp4box, but it might work for the audio and video encoders. But should my tests show that it's indeed possible, I expect a couple cases of beer to implement this as it's a feature I really have no use for. And resuming will definitely not be possible.. that's not under my control.
Although, you're really not making a good case for this feature:
If conversion is pausable, the long time conversion will be more flexible as sometimes you need more CPU resource to work on other things. This probably also able to let some hot running CPU rest for a while.If your machine runs too hot, you need a better cooling solution, and with low priority, another application using more resources is no problem. I was playing HL2 and NFS while encoding for the codec comparison. While encoding was dog slow, it still worked.
Could you make MeGUI updates (saves) the job once it is completed or done?
This is because if the OS crash (or restart) while MeGUI is still running, MeGUI will show all jobs are in waiting status after restarted. As a result, I think it's quite reasonable to update (save to disk) what ever job which has been just completed and so that important information could be retained even if MeGUI terminated unexpectedly.That, too is a weak argument. If MeGUI is stable (which I think since I'm not having any open bug reports), if your PC crashes, it's normal that you lose information.. and machines really shouldn't crash at this day and age. If a stable machine crashes once a year that's one too many times, and anything above that should give you reason to worry.
akupenguin
15th July 2005, 17:47
That is correct. All codec options mencoder supports are listed here: http://mplayerhq.hu/DOCS/man/en/mplayer.1.html#CODEC%20SPECIFIC%20ENCODING%20OPTIONS%20(MENCODER%20ONLY) On that page I see:
quant_intra_matrix=<filename> Load a custom intra matrix file. You can build such a file with xvid4conf's matrix editor.
quant_inter_matrix=<filename> ...
Doom9
15th July 2005, 19:50
hmm.. that must be very new. Just last week I went over the manpage and implemented what there was to be implemented.
One thing though, since : is the option separator in mencoder, is using an absolutel windows path even possible (and does it require "s)?
I'm dreaming about the conversion in future could be stopped (and the conversion status are saved). You can do a restart or shutdown you machine. Then, the saved conversion will be able to continue from where it stopped just like we resume a halfway downloaded file from http. If this is workable, conversion of a DVD on low speed machine will never be a painful job. May be this requires the support of data segmentation/slices? x264 support slices, isn't it?Slices won't do you any good here.. they don't extend over the movie and you wouldn't know how big they are either. To resume encoding, you need to have all the encoder parameters at the time of the stop.. and no encoder offers even remotely that capability.
And slow PCs and video encoding just don't mix, and it never will. There will always be a newer format that requires even more computing power so you'll always have to upgrade.. or be content with lower quality compression at higher speeds. I'm sure MPEG-1 encoding is okay on your box ;)
berrinam
16th July 2005, 00:55
Well, x264 can be stopped and restarted later, using the --seek command.
Doom9
16th July 2005, 13:18
hmm.. well.. at first thought it would take quite a bit of work to get this done. Plus, how do you figure out where you have to seek to? It works if you limit the number of frames of the output and let it run till the end, but what do you do if the user aborted at some point, killing x264.exe rather than let it exit gracefully? Worst case, the stats file might end up in an inconsistent state. When I wrote the video encoder, I tested the abort functionality a couple times and ended up getting incomplete lines from the stdout/stderr.. if that happens to the statsfile as well, what will the encoder do?
haubrija
16th July 2005, 22:27
Searched for this but couldn''t find the answer...
What type of chapter file do you specify in DVD Decryptor to use in MeGui? There's about twenty different types and I tried a couple and they didn't work.
Thanks
Doom9
16th July 2005, 22:33
You need to use the Ogg chapter format.
ookzDVD
17th July 2005, 12:40
Can someone help me with the profile?
I really need a good one for XVID - 1 CD and X.264 - 1 CD. TIA.
Doom9
17th July 2005, 13:11
Well, good is a point of view question really. Here's what I use for high quality, but not insanely slow x264 encoding (starting with the megui default)
high profile
2 b-frames, adaptive
3 reference frames
RDO subpixel refinement
All macroblock options enabled
weighted prediction
And 2 threads if I would finally get my X2 back.
You may want to play with the alpha and beta deblocking values a little but that's really a personal thing.. some people prefer their video smooth, other prefer details and can live with a few blocks.
As far as XviD goes, I'm using the VfW defaults there as much as possible so there are less changes
Keyframe interval should be 10 times your framerate
leave number of b-frames at 2, motion search precision at 6, vhq mode at 1
enable vhq for b-frames, qpel
and default values for the rest
Keep in mind though.. that is my personal opinion and you'll find a lot of people who'll suggest something else.. it's up to you to decide what really works.
Beave
17th July 2005, 19:46
Doom9, if you get your X2 machine back, could you test how your x264/aac.mp4 settings would playback a 1280x720 HD movie? I just wonder how fast/new a computer I need to have a decently save cpu usage.
ookzDVD
18th July 2005, 03:09
@Doom9,
Thank you for the profile, I really apreciate that.
Btw,
I just forgot to tell you about the MeGUI,
Which Avisynth should be used ?
I used v2.55 and I got error while run "One Click",
when I read the "avs" manually, I think the script is missing the LoadPlugin command. :(
berrinam
18th July 2005, 04:03
@ookzDVD: Yes, Avisynth 2.55 is fine. I presume you mean the dgdecode.dll plugin? As said before, this needs to be put in the avisynth plugins directory.
haubrija
18th July 2005, 06:33
Doom9,
Found a small bug I beleive using 0.2.1.4. I set up my job to do AVC with AAC in an MP4. Click Autoencode for 1 cd. Now when I change the name of my muxed output, it changes the extension to avi even though I want mp4. I'm assuming this is in name only and the resulting file plays back fine in mplayer. Here's my log in case you need it.
----------------------------------------------------------------------------------------------------------
Next job job2-1 is an audio job. besweet commandline:
"C:\MP4 Encoding\BeSweetv1.5b29\besweet.exe" -core( -input "D:\c2 AC3 T01 2_0ch 192Kbps DELAY 0ms.ac3" -output "D:\audio.mp4" -logfile "besweet.log" ) -azid( -s dplii -c normal -L -3db ) -bsn( -2ch -cbr 160 -codecquality_high -aacprofile_he ) -ota( -d 0 -g max )
successfully set up audio encoder and callbacks for job job2-1
----------------------------------------------------------------------------------------------------------
Log for job job2-1
besweet: "C:\MP4 Encoding\BeSweetv1.5b29\besweet.exe" -core( -input "D:\c2 AC3 T01 2_0ch 192Kbps DELAY 0ms.ac3" -output "D:\audio.mp4" -logfile "besweet.log" ) -azid( -s dplii -c normal -L -3db ) -bsn( -2ch -cbr 160 -codecquality_high -aacprofile_he ) -ota( -d 0 -g max )
BeSweet v1.5b29 by DSPguru.
--------------------------
[00:00:00:000] Initializing...
[00:00:00:000] -- Initializing...
[00:51:54:720] |
SR: 48000, Table idx: 6 - start 12, stop 8
SR: 48000, Table idx: 6 - start 12, stop 8
[00:51:54:720] Finalizing...
[00:51:54:720] Conversion Completed !
Visit DSPguru's Homepage at :
http://DSPguru.doom9.net/
----------------------------------------------------------------------------------------------------------
job job2-1 has been processed. This job is linked to the next job: job2-2
this series of jobs starts with an audio job and is followed by regular twopass video jobs
The audio job is named job2-2 the first pass job2-2 and the second pass job2-3
The second pass job has a desired final output size of 734003200 bytes and video bitrate of 6729 kbit/s
Third pass job found: job2-4
The audio file size is 62597955 bytes
Setting the desired bitrate of the subsequent video jobs to 1722 kbit/s
Next job job2-2 is a video job. encoder commandline:
"C:\MP4 Encoding\x264.exe" --pass 1 --bitrate 1722 --stats "2pass.log" --bframes 2 --no-b-adapt --b-pyramid --subme 1 --weightb --analyse none --me dia --progress --no-psnr --output NUL "D:\Carnivale.avs"
successfully set up video encoder and callbacks for job job2-2
----------------------------------------------------------------------------------------------------------
Log for job job2-2
avis [info]: 640x352 @ 23.98 fps (74680 frames)
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
x264 [info]: slice I:445 Avg QP:11.52 Avg size: 34379
x264 [info]: slice P:25109 Avg QP:12.57 Avg size: 14673
x264 [info]: slice B:49126 Avg QP:14.19 Avg size: 5740
x264 [info]: slice I Avg I4x4:71.6% I8x8:0.0% I16x16:28.4%
x264 [info]: slice P Avg I4x4:0.0% I8x8:0.0% I16x16:15.6% P:68.2% P8x8:0.0% PSKIP:16.2%
x264 [info]: slice B Avg I4x4:0.0% I8x8:0.0% I16x16:2.9% P:51.6% B:12.6% B8x8:0.0% DIRECT:16.9% BSKIP:16.1%
x264 [info]: kb/s:1709.8
Actual bitrate after encoding without container overhead: 21423.59
----------------------------------------------------------------------------------------------------------
job job2-2 has been processed. This job is linked to the next job: job2-3
Next job job2-3 is a video job. encoder commandline:
"C:\MP4 Encoding\x264.exe" --pass 3 --bitrate 1722 --stats "2pass.log" --ref 3 --bframes 2 --no-b-adapt --b-pyramid --subme 6 --weightb --analyse all --8x8dct --progress --no-psnr --output "D:\video.mp4" "D:\Carnivale.avs"
successfully set up video encoder and callbacks for job job2-3
----------------------------------------------------------------------------------------------------------
Log for job job2-3
avis [info]: 640x352 @ 23.98 fps (74680 frames)
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
mp4 [info]: initial delay 250 (scale 2997)
x264 [info]: slice I:445 Avg QP:11.58 Avg size: 32296
x264 [info]: slice P:25109 Avg QP:11.93 Avg size: 14553
x264 [info]: slice B:49126 Avg QP:13.79 Avg size: 5917
x264 [info]: slice I Avg I4x4:26.5% I8x8:46.3% I16x16:27.2%
x264 [info]: slice P Avg I4x4:5.2% I8x8:8.1% I16x16:3.6% P:53.0% P8x8:12.3% PSKIP:17.8%
x264 [info]: slice B Avg I4x4:1.7% I8x8:2.1% I16x16:1.0% P:27.4% B:15.9% B8x8:9.1% DIRECT:9.5% BSKIP:33.3%
x264 [info]: 8x8 transform intra:46.4% inter:26.1%
x264 [info]: kb/s:1722.1
Actual bitrate after encoding without container overhead: 21576.50
desired video bitrate of this job: 1722 kbit/s - obtained video bitrate: 1724.44663661746 kbit/s
----------------------------------------------------------------------------------------------------------
job job2-3 has been processed. This job is linked to the next job: job2-4
Next job job2-4 is a video job. encoder commandline:
"C:\MP4 Encoding\x264.exe" --pass 3 --bitrate 1722 --stats "2pass.log" --ref 3 --bframes 2 --no-b-adapt --b-pyramid --subme 6 --weightb --analyse all --8x8dct --progress --no-psnr --output "D:\video.mp4" "D:\Carnivale.avs"
successfully set up video encoder and callbacks for job job2-4
----------------------------------------------------------------------------------------------------------
Log for job job2-4
avis [info]: 640x352 @ 23.98 fps (74680 frames)
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
mp4 [info]: initial delay 250 (scale 2997)
x264 [info]: slice I:445 Avg QP:11.85 Avg size: 31471
x264 [info]: slice P:25109 Avg QP:12.01 Avg size: 14498
x264 [info]: slice B:49126 Avg QP:13.90 Avg size: 5955
x264 [info]: slice I Avg I4x4:25.6% I8x8:49.1% I16x16:25.3%
x264 [info]: slice P Avg I4x4:5.1% I8x8:8.2% I16x16:3.5% P:52.7% P8x8:12.2% PSKIP:18.3%
x264 [info]: slice B Avg I4x4:1.7% I8x8:2.0% I16x16:1.0% P:26.7% B:15.9% B8x8:9.7% DIRECT:8.9% BSKIP:34.2%
x264 [info]: 8x8 transform intra:46.7% inter:26.1%
x264 [info]: kb/s:1722.3
Actual bitrate after encoding without container overhead: 21579.57
desired video bitrate of this job: 1722 kbit/s - obtained video bitrate: 1724.69168238157 kbit/s
----------------------------------------------------------------------------------------------------------
job job2-4 has been processed. This job is linked to the next job: job2-5
Next job job2-5 is a mux job. mp4box commandline:
"C:\MP4 Encoding\mp4box.exe" -add "D:\video.mp4" -add "D:\audio.mp4";lang=eng -chap "D:\Carni2\VTS_01 - Chapter Information - OGG.txt" -fps 23.976 -new "D:\Outside Damascus.avi"
successfully set up muxer and callbacks for job job2-5
----------------------------------------------------------------------------------------------------------
Log for job job2-5
IsoMedia import - track ID 1 - Video (size 640 x 352)
IsoMedia import - track ID 1 - Audio (SR 48000 - 2 channels) - SBR AAC
IsoMedia import - track ID 2 - media type odsm sub-type MPEG
IsoMedia import - track ID 3 - media type sdsm sub-type MPEG
Saving Outside Damascus.avi: 0.500 secs Interleaving
Let me know if you need any more info.
berrinam
18th July 2005, 08:14
Yes, the file filter in AutoEncodeWindow.muxedOutputButton_Click is currently "MP4 Files (*.mp4)|*.avi"
Doom9
18th July 2005, 08:45
do you set the extension to avi (by selecting it from the dropdown or typing it) or was it changed automatically (and if so exactly at which point, what's the content of the file open dialogue when you press OK)?
berrinam
18th July 2005, 08:49
@Doom9: It's a bug, see my post just before yours.
Doom9
18th July 2005, 12:55
@Doom9: It's a bug, see my post just before yours.I saw that.. just trying to find out if something else is wrong or if it's merely a matter of the dialog filter.
haubrija
18th July 2005, 18:08
Doom9,
I didn't set it to .avi nor did i type it. It states "mp4 files" in the "save as" dialog box when you go to save but other .avi files I had in the same directory are visible when they should not be (as it should only be showing mp4 files).
HookedOnTV
19th July 2005, 06:35
I've got an encode that is acting posessed when it tries to mux at the end. Did a two pass xvid encode to mp4. It seems to have finished creating the m4v file successfully (no errors and sized as desired). When it tried muxing the m4v to mp4 the "video data" field that usually runs up through the file flashes between 0kb and 63316kb. A randomly named file with no extension is created in the root of the c: and just grows until there is no more free disk space (ate aroung 18gb). Abort the job and the file disappears. Tried doing a fresh mux job with the m4v file and the audio file with the same behavior. Was using 0.2.1.3, tried 0.2.1.4.
Going to try mp4box from the command line and see if it works.
Doom9
19th July 2005, 08:46
@HookedOnTV: That does sound more like an mp4box problem.. mp4box is writing that huge file (it's the way it works.. writes a temp file to the root of the target directory using a random name). Please let me know the results when you run mp4box with the same commandline manually.
leowai
19th July 2005, 14:06
Doom9,
I've some questions about the "--me" (ME Algo.) switch for x264 client in MeGUI.
1. MeGUI uses "--me dia" for 1st pass in turbo mode. Does this effect the accuracy if different ME algo. is used in the subsequence passes for automated 2passes and automated 3passes?
2. MeGUI seems to generate the command line as "--me" (without any ME algorithm specified) instead of "--me dia" if diamond (dia) ME algorithm is used.
For muti-passes: If turbo mode is selected, it's ok for the 1st pass (it shows "--me dia"), but I found this problem occurs in the command line of 2nd and 3rd pass (from the job list).
Is this a MeGUI bug?
HookedOnTV
19th July 2005, 15:06
Problems from the command line as well. When it does the "importing video" the counter goes all the way to 200/100 then starts over all the while building the temp file. An encoding job on an entirely different pc is doing the same thing. One pc has version 0.3.0.7 (Celtic Druid) and the other has 0.3.1 (Sharktooth) of mp4box.
Doom9
19th July 2005, 15:11
Does this effect the accuracy if different ME algo. is used in the subsequence passes for automated 2passes and automated 3passes?No, not noticeably. PSNR loss from using the full turbo settings (not only me.. a lot more is influenced by the turbo switch) is negligible.
MeGUI seems to generate the command line as "--me" (without any ME algorithm specified) instead of "--me dia" if diamond (dia) ME algorithm is used.
I'm afraid that's a bug
Problems from the command line as well.Then I'm afraid you need to open a thread in the container forum as it's not a MeGUI problem.
HookedOnTV
19th July 2005, 15:38
One last question before heading to the container area... is there a possibility the m4v is bad? I tried using mp4info on it and it says it can't open it. Is there a way to verify the file?
leowai
19th July 2005, 16:40
HookedOnTV,
Since you can't extract the information using mp4box, I afraid you did some non-standard ways to create such mp4 container with XviD codec.
I did mux x264 video (using native mp4 output) with HE-AAC (mp4), subtitles, chapters into 700MB mp4 without any problem.
As suggested by Doom9, you should to open a new thread, discribes the steps in details how your mp4 container with XviD codec is created.
Negi
21st July 2005, 11:10
Is there any way to make megui directly mux matroska?
Edit: HookedOnTV, if you update to mp4box 0.4x cvs versions, the no-extension file problem is gone.
berrinam
21st July 2005, 11:23
Matroska muxing in MeGUI should probably be coming very soon (I wrote most of the required code a few days ago). Anyway, it is based on mkvtoolnix, so why don't you just use the (better) gui for mkv muxing from them?
Negi
21st July 2005, 19:20
It's not so much that i can't use mkvmerge fine right now, it's just that it's less steps to have the muxing done directly in MeGui and less to worry about.
Emp3r0r
21st July 2005, 19:30
@Doom9: can you add avisynth (w/dgdecode.dll in plugins dir) to the list of required tools at beginning of thread? Also, xvid or ffdshow or something that supports yuv output colorspace is also required.
Doom9
21st July 2005, 20:26
@Emp3r0r: done. I also mentioned the remaining dll placement necessities. I should really write an FAQ one of these days.. but even I feel the summer time and rather do something else than writing or coding.
sillKotscha
21st July 2005, 21:41
Hi doom9,
here are just 2 observations I made on my pc...
under "tools" we have the option to create a *.d2v file. First input choice is a vob file and we can choose a *.mpg file as well. But if I load a *.mpg file, e.g. an edited, formerly DVB-T (*.pva) file MeGUI asks for the info file generated by DVD Decrypter. But for obvious reasons it won't be there ;)
Nevertheless I'm able to choose that *.mpg, choose the destination and DGIndex starts to work after "prepare" is pushed.
But after the d2v file is generated I can't close that window anymore to go back to the "main-settings" screen. All I can do is to kill the exe by using the taskmanager. All other tools/settings work flawless.
and a very strange behaviour concerning x264.exe:
I can do all the settings I want to and of course put the job(s) into queue manager. If I try to start the job list (e.g. automated 3pass) x264.exe starts each job just for a millisecond and closes itself. A 0 byte file is generated. That won't happen with MEncoder.
To circumvent that behaviour I've created a sub-folder and putted x264.exe in that folder (named tools with all other programs, BeSweet, MEncoder, etc.).
And now it works :) If x264.exe is back in the same folder as MeGUI.exe is, than it is again as described. Strange, hu?!
But as I told that has happend only on my machine. Maybe someone else made the same observation as me...
cheers Sill
P.S.: thanks for that very nice piece of work!! It is a pleasure to encode with it. Very nice surface, clean and easy to use. Just great!!
Doom9
21st July 2005, 21:56
Nevertheless I'm able to choose that *.mpg, choose the destination and DGIndex starts to work after "prepare" is pushed.
But after the d2v file is generated I can't close that window anymore to go back to the "main-settings" screen. All I can do is to kill the exe by using the taskmanager. All other tools/settings work flawless.
Do you have a short mpg with which I could reproduce that?
Strange, hu?!Well.. you got a log, don't you?
sillKotscha
21st July 2005, 22:15
Do you have a short mpg with which I could reproduce that?
sure, but not today... tomorrow I'll upload a file.
Well.. you got a log, don't you?
well, I do but I solved it using a little detour ;) for me that's no more a problem... for the coder - I'll uplaod the log as well.
Have a nice eve and thanks in advance.
Cheers Sill
Slogra
22nd July 2005, 11:14
I can't get the aac encoding to work. I've put the aac.dll and aacenc.dll in the besweet folder, but it just skips the audio encoding all the time.
Aac.dll is used for stereo files and aacenc.dll for 5.1 files, is that correct?
I've tried stereo and 5.1 aacs but neither works. I downloaded aacenc from a p2p program cause i couldn't find it anywhere else, so that might be the problem.
Doom9
22nd July 2005, 11:19
I downloaded aacenc from a p2p programI don't know if that is your problem but you've said the magical word that will ensure that nobody is allowed to help you.
Slogra
22nd July 2005, 13:10
Oops, i thought that aac.dll was the nero encoder for stereo stuff and aacenc.dll some freeware pystel thingy that encodes to aac 5.1
sillKotscha
23rd July 2005, 18:54
Do you have a short mpg with which I could reproduce that?
sure, but not today... tomorrow I'll upload a file.
ok, not really "tomorrow" but today... I hope it will help you.
I tried different edited pva-files (demuxed with projectx, cut and multiplexed (by mplex) with cuttermaran 1.65 (and versions below) - HCEnc working behind. All mpg files end up with the same problem... as described
... about the log.file - sorry, no current logfile available. Some kind of magic has happend ;) I tried to reproduce the problem to send you an up to date log with my mentioned problem - now I can't reproduce it... it just works, even with x264.exe in the same folder as MeGUI is. Don't mind - now I got a subfolder as I said and all is working one way or the other.
'nuff headache :)
Thanks in advance
Sill
P.S.: the *.mpg file (http://rapidshare.de/files/3291526/cut.mpg.html)
Doom9
26th July 2005, 23:25
the new version is out. Here are the release notes:
For starters let me say that this is the last time any software of mine will ever support multiple containers. It is a HUUUUUUGE headache to accomodate all possibilities. I love the simplicty of MP4.. MPEG-4 video, AAC audio, and thats' it. No huge multi-level if,then,else and switch statements, and a straightforward bitrate calculation (it was hard enough to get the darned window to work with one codec.. those who can read the code will surely appreciate the feeling).
I labelled this alpha because there's a lot of things untested. I never tested the one click window, never tested the new snow options and snow in mkv, and a bunch of other things. Hence, I left the old release up for download just in case.
The mkv bitrate calculation is ugly and may not be terribly accurate. I figure audio should be okay, but video poses a major problem as it requires the knowledge of how many I, P and B frames you get, BEFORE encoding your video. For more info on Matroska bitrate calculations, please refer to this thread: http://forum.doom9.org/showthread.php?t=96703&page=2. And if you have improvements (formulas, code), you're more than welcome.
Due to a completely unreasonable amount of work to get an accurate audio overhead fro Vorbis, the calculations for Vorbis might be way off track, and I'm extremely reluctant to support that audio codec at all. I rather focus on other interesting features like being able to re-open the status window, pause encoding (it might just work), better statistics, and I guess I can come up with some other features that help usability and don't cater to a minority audience.
Beave
26th July 2005, 23:54
I am fine with just MP4. You can use it for every input and the future support in hardware is more likely than mkv.
Did you give custom quant matrix in XVID another thought? Your tool is perfect for XVID/AAC5.1/MP4. Load the avs and the ac3, load the profile and press the GO Button.
Do you have any thoughts about fast first pass settings for xvid maybe?
I guess I will stick with xvid for a while, cause I get annoyed by the blockage in certain areas (especially blue) with x264 and playback performance is very demanding on high resolutions. XVID is still a great codec especially with custom matrices.
Small suggestion:
After pressing the Auto Encode Button, could you implement, that MEGui remembers the last size setting maybe?
STRG+V doesn't work there, only right click + Paste.
Could You add the possiblity to input the size in MB not in KB as well, maybe setting it up in the settings? I always have to use calc for it.
Doom9
27th July 2005, 00:03
Did you give custom quant matrix in XVID another thought?I recall asking a question about that and never getting an answer. How does it work with windows paths? (window has a : in it, and that's the option separator in mencoder, I know that this causes major issues for an x264 patch that is in the works to enable custom x264 quantizer matrices in mencoder)
If somebody cann tell me what turbo does in XviD I can see what of that can be done in MeGUI.. but naturally it would be better to make a mencoder patch. Or even better, turn enc_raw into an x264.exe equivalent.
Could You add the possiblity to input the size in MB not in KB as well, maybe setting it up in the settings? I always have to use calc for it.The autoencode window works without ugly code.. I'd like to keep it like that. The calculator was torture to write.. exactly the stuff programmers hate so much about GUIs.. there's so many interdependent GUI elements it drives you crazy. If you want to drive somebody away from software, give them a lot of pointers or such a GUI and your chances of succeeding are very high.
Backwoods
28th July 2005, 00:51
VirtualDub = 1-2fps
MeGUI = 3-4fps
Not sure why, but it happens. I like the simplicity of your program too.
Just one question, would it be possible to add delay with the muxing?
Doom9
28th July 2005, 08:34
Just one question, would it be possible to add delay with the muxing?Possible, yet, but desirable? I see a complete audio redesign versus the delay correction in BeSweet that is largely sufficient. And I'm not sure mencoder and mkvmerge support delays while muxing, I only know that mp4box does. Since when encoding audio it makes no sense not to correct the delay, it really only comes down to encode files where delay correction hasn't been done (and that's a case where I think people need to learn the hard way that they must do delay correction during audio encoding), and muxing files that you won't re-encode (AC3 mostly, and some MP2 audio from DVB transmissions).
Backwoods
28th July 2005, 11:04
I would prefer not to re-encode, that is why I asked.
Doom9
28th July 2005, 22:20
Release notes for 0.2.1.6:
pause works reliably for video and audio encoding and unreliably for muxing. The reason for this is that at some point, mp4box just doesn't care anymore if it's stdout and stderr is being read by MeGUI or not, and continues running anyway. There will be a stop eventually, but it's not like you can stop right where you are at any given position (the later you are in the muxing phase the more likely the pause will only activate when the muxed file has already been written).
I removed the alpha status due to lack of bugreports, but I haven't had time to do additional testing of the Matroska features.
sillKotscha
28th July 2005, 22:37
I removed the alpha status due to lack of bugreports
hmmm...
Nevertheless I'm able to choose that *.mpg, choose the destination and DGIndex starts to work after "prepare" is pushed.
But after the d2v file is generated I can't close that window anymore to go back to the "main-settings" screen. All I can do is to kill the exe by using the taskmanager.
;)
North2Polaris
29th July 2005, 06:04
Use the latest ffdshow version (built by Celtic Druid) for playing back x264: http://www.aziendeassociate.it/cd.asp?dir=/ffdshow
(Custom matrices are still not supported by ffdshow. Use Nero decoder if your encodes are made with CQMs
@doom9,
In MeGUI 0.2.1.4 under macroblock options, there are three options -- "all", "none", and "custom". If I set the option to "all" or "none" and then save the profile, when I reopen the profile the option is "custom". Is this correct?
Which option gives you a file that can be played using ffdshow? My latest encodes play only with the Nero decoder.
Thanks.
North
Doom9
29th July 2005, 06:40
If I set the option to "all" or "none" and then save the profile, when I reopen the profile the option is "custom". Is this correct?That sounds plausible. The profile is not something that is saved in a profile, only the checked/unchecked options are.
And I can play everything I create (plus not a megui issue).
TheBashar
29th July 2005, 07:03
Release notes for 0.2.1.6:
I removed the alpha status due to lack of bugreports, but I haven't had time to do additional testing of the Matroska features.
Hi Doom9. I'm not sure how to go about helping diagnose this, but since I upgraded from 0.2.1.3 to 0.2.1.6 a problem has cropped up. I've queued an automatic 2 pass job. I go to the queue tab and start the processing. The first pass job immediately completes (no error) even though it is impossible that it could have run.
Interestingly, the 2nd pass appears to work as it process for a bit before I abort it. Downgrading back to ...3 works without any trouble.
Doom9
29th July 2005, 08:49
I've queued an automatic 2 pass job. I go to the queue tab and start the processing. The first pass job immediately completes (no error) even though it is impossible that it could have run.Umm.. what does it say on the problem reporting guidelines? How can I possibly reproduce that? I'm no medium so I don't know what kind of job you set up (codec, settings, output type, etc etc etc etc etc etc etc.. I'm sure I can easily get up to a 5 digit permutation of options). standard avc 2 pass with default setting works, same with asp (that's the minimum test I run), so a statement like "automated encoding doesn't work" is simply false.
If I set the option to "all" or "none" and then save the profile, when I reopen the profile the option is "custom". Is this correct?It won't be like that in the next version.. stupid boring GUI code. The only good thing adding that had is that I discovered a bug in those options.
berrinam
29th July 2005, 09:27
I get faulty commandlines generated for turbo x264 passes with MeGUI. For any settings with x264, if I click turbo, the commandline generated has --me, but it is not followed by a me method, ie it is followed by whatever is the next option. This only happens with x264 turbo commandlines. I think this is what is causing the first passes that exit immediately.
Also, I don't know if it is just me, but pausing of x264 doesn't actually seem to pause. Instead, it just suspends status updates while x264 continues running in the background.
parcival
29th July 2005, 10:18
Now MeGUI supports Matroska! Great! Thanks!
Only the editing part is now missing. The problem seems to be with the AAC editing. Maybe the method I am currently using might give you an idea how to solve it.
1) I have the d2v file, the Avisynth script and the AC3 ready.
2) I open the Avisynth script with VirtualDubMod.
3) I add the AC3 stream.
4) I cut out the parts that I do not want.
5) I demux the AC3 stream. Only the parts that I want are demuxed.
6) I encode the demuxed AC3 to AAC.
So what I am proposing is edit the AC3 first and then encode the result instead of trying to go directly for the AAC.
I know it is an enormous amount of work and requires a few more MB for the job (for the demuxed AC3 - not a real issue though nowadays) but currently it seems the only solution.
What do you think?
Doom9
29th July 2005, 10:45
What do you think?/me has a headache just reading that.
parcival
29th July 2005, 11:46
/me has a headache just reading that.
Because I poorly explain it or because of the implications going this way? :)
Doom9
29th July 2005, 13:34
Because I poorly explain it or because of the implications going this way?The latter. You're not the first one to ask for something like that, but the implications are higher than the Himalayas. Give me a BeSweet that can handle AviSynth input, and ensure that AC3Source in AviSynth properly decodes AC3 with all channels and I'd consider it doable - I would even offer the cutting functionality (it's not a lot different from the zone creator). But without that, there's no way I'm ever going to do that.
Sirber
29th July 2005, 13:48
AC3Source downmix to stereo, not even sure about surround. I never been able to contact the author :(
North2Polaris
29th July 2005, 14:23
And I can play everything I create (plus not a megui issue).
Understood. Let me rephrase. What settings in MeGUI would constitute a "custom matrix"? This might help me with troubleshooting.
Would it be better to ask this question in a new thread? Thanks.
parcival
29th July 2005, 15:20
The latter. You're not the first one to ask for something like that, but the implications are higher than the Himalayas. Give me a BeSweet that can handle AviSynth input, and ensure that AC3Source in AviSynth properly decodes AC3 with all channels and I'd consider it doable - I would even offer the cutting functionality (it's not a lot different from the zone creator). But without that, there's no way I'm ever going to do that.
But that is why I made the suggestion. It is really a workaround for the limitations of BeSweet etc. The idea is to edit/cut the (5.1) AC3 before encoding it with BeSweet. I do it all the time and it works great.
From my point of view all you need are two things:
1) The cutting functionality that selects the parts you want.
2) A demuxing module for AC3 similar to the one VirtualDubMod has.
Then you just encode the demuxed AC3 to AAC with BeSweet (the whole demuxed AC3 file).
Maybe I do not understand completely what you are saying. Are you saying that what VirtualDubMod does (cutting/editing AC3) cannot be easily implemented to MeGUI?
Anyway, I know that what I am asking is a lot of work, so the case is closed for me. :D
Doom9
29th July 2005, 16:31
What settings in MeGUI would constitute a "custom matrix"? This might help me with troubleshooting. None. In tab 3 you have custom quantizer matrix groupbox.. in there you can load a custom quantizer matrix.. you either have one or don't.
Are you saying that what VirtualDubMod does (cutting/editing AC3) cannot be easily implemented to MeGUI?I'm saying I'm not going to automate VDubMod. If I start using any VfW capable encoding tool, I could just as easily have automated that from the getgo and use VfW codecs. I understand why you're asking but I'm not gonna do it, period.
akupenguin
29th July 2005, 17:17
Random comments (referring to 0.2.1.6):
(Disclaimer: I have not tried an MeGUI encode with all of these bugs, I am just looking at the generated commandlines.)
all:
The zones editor doesn't let you create a zone starting at frame 0 ("The video only starts at frame 1"). But frame 0 is the initial I-frame. (However, in x264 and IIRC also lavc, I-frames' quants are a function of the following P-frames, and not independently controllable. So a zone starting at 1 has the same effect as starting at 0.)
Typo: "WEIGTH" in the zones list.
x264:
x264cli expects zone weights to be factors, not percentages. (1.0 means no modification)
Quantization matrix: "None" and "Flat" are the same.
"Bitrate Variance" controls the same feature as lavc's "Filesize Tolerance". (though with different units)
lavc/ASP & Snow:
The default "Quantizer Blur" and "Quantizer Compression" show 0.0, and are ommitted from the commandline when left at that. MEncoder's default is 0.5 for both.
vrc_override treats a positive modifier as a quantizer, and negative as a bitrate weight (in percent). MeGUI writes positive for both (so all zones are CQ). e.g. "Start: 3, End: 42, Mode: WEIGHT, Modifier: 100" should be "vrc_override=3,42,-100".
"# Motion Predictors" is useful in ASP. It is supported but not useful in Snow. And it's predictors from neighboring blocks in the current frame, not prev.
lavc/ASP:
4MV should not require VHQ or RDO.
Snow:
commandline sets cmp=12 when "SAD" is selected. Should be cmp=0 (or omitted, since cmp=0 is Mencoder's default).
xvid:
As with x264, zones weights are factors, not percentages.
Since xvid zones have only start frames, any one not immediately followed by another zone should be paired with a "<endframe+1>,w,1".
TheBashar
29th July 2005, 17:37
Hi Doom9. I'm not sure how to go about helping diagnose this, but since I upgraded from 0.2.1.3 to 0.2.1.6 a problem has cropped up. I've queued an automatic 2 pass job. I go to the queue tab and start the processing. The first pass job immediately completes (no error) even though it is impossible that it could have run.
Interestingly, the 2nd pass appears to work as it process for a bit before I abort it. Downgrading back to ...3 works without any trouble.
More details. I was mistaken. Reverting to 0.2.1.3 did not fix the problem. The queue entries generated by 0.2.1.6 showed the same behaviour even when processed with 0.2.1.3. Creating new queue entries with 0.2.1.3 does not show the problem.
The problem exhibited itself when the configuration generated the following commandline for the first (turbo pass):
x264.exe --pass 2 --bitrate 1800 --stats 2pass.log --keyint 300 --bframes 2 --subme 1 --weightb --analyse none --me dia --progress --no-psnr --output ep-2b.mp4 ep-2b.avs
The 2pass (which wasn't the problem) has the commandline of:
x264.exe --pass 2 --bitrate 1800 --states 2pass.log --keyint 300 --bframes 2 --subme 6 --weightfb --analyse all --8x8dct --progress --no-psnr --output ep-2b.mp4 ep-2b.avs
Doom9
29th July 2005, 17:40
Also, I don't know if it is just me, but pausing of x264 doesn't actually seem to pause. Instead, it just suspends status updates while x264 continues running in the background.Actually.. give it some time. For some reason, x264 doesn't care that nobody reads its stdout anymore, until about 30 seconds later.. then it stops. The only way to make it stop right away would be to pause MeGUI and you can only do that if you're debugging and hit a breakpoint. And that also stops the GUI thread so the program becomes non responsive. The thread is suspended immediately, I don't see anything else I could do.
The queue entries generated by 0.2.1.6 showed the same behaviour even when processed with 0.2.1.3.Obviously they will since it's the commandlines. What is the difference between the 0.2.1.3 generated first pass commandline and the 0.2.1.6 one? For me, it is the most natural thing in the world to compare those two right at the beginning. Always blame the commandline first and the code later (obviously code generates the commandline but I rather know I have to modify the commandline generator class, than having to look elsewhere)
lesnick
29th July 2005, 18:04
I have problem with last version of MeGUI if i use "turdo" with x264, for example:
-------------------------------------------------------------------------
Next job job1-1 is a video job. encoder commandline:
"E:\My things\Prog\meGUI\tool\x264\x264.exe" --pass 1 --bitrate 700 --stats "2pass.log" --subme 1 --analyse none --qpstep 1 --me --progress --no-psnr --output NUL "D:\preview.avs"
successfully set up video encoder and callbacks for job job1-1
----------------------------------------------------------------------------------------------------------
Log for job job1-1
bad ME method `--progress'
---------------------------------------------------------------------------
Sharktooth
29th July 2005, 18:30
it lacks the ME method.
it should be "--me something" (i think dia for "turbo") in the command line.
Doom9
30th July 2005, 14:36
x264cli expects zone weights to be factors, not percentages. And what's the range? 0.01 to 1.0?
"Bitrate Variance" controls the same feature as lavc's "Filesize Tolerance". (though with different units)So you're saying I should rename one of the two? I stuck to the description in the manpages.
4MV should not require VHQ or RDO.I know, but the manpage suggests that it works better together. I guess I could relax that and use a tooltip instead.
Since xvid zones have only start frames, any one not immediately followed by another zone should be paired with a "<endframe+1>,w,1".I warn people about that in the release notes. I've refrained from doing that automatically since no XviD encoder does that.
akupenguin
30th July 2005, 14:41
And what's the range? 0.01 to 1.0?
x264 accepts anything in 0 < weight <= MAX_FLOAT.
But given the finite range of possible QPs, I expect the range that does actually does anything is around .02 to 50.
Doom9
30th July 2005, 15:24
geez.. 50 times the bitrate? mencoder has it limited to 100. in xvid it only goes up to 2. There goes my one zone to rule them all approach :/
Doom9
30th July 2005, 15:32
about weighted zones in lavc: in the manpage it states quality correction in %. So if I want 10% of the original bitrate, what would the value be? -10?, and consequently -100 to keep the original bitrate, -200 to double the original bitrate, etc?
akupenguin
30th July 2005, 15:34
So if I want 10% of the original bitrate, what would the value be? -10?, and consequently -100 to keep the original bitrate, -200 to double the original bitrate, etc? right
Doom9
30th July 2005, 15:38
"# Motion Predictors" is useful in ASP. It is supported but not useful in Snow. And it's predictors from neighboring blocks in the current frame, not prev.
from the mencoder manpage last_pred=<0-99>
amount of motion predictors from the previous frame
0
(default)
a
Will use 2a+1 x 2a+1 macroblock square of motion vector predictors from the previous frame.
p.s. perhaps you know that: xvid in mencoder now supports custom quantizer matrices, but mencoder uses : as option separator. Is there a workaround built-in for the fact that absolute paths on windows contain a : ?
akupenguin
30th July 2005, 16:13
I guess I misread the code. Lavc keeps a single buffer full of mvs. At any time during motion estimation, some of them have been updated to the current frame, and others still contain the previous frame's values. last_pred uses all neighbors without distinguishing between those states.
xvid in mencoder now supports custom quantizer matrices, but mencoder uses : as option separator. Is there a workaround built-in for the fact that absolute paths on windows contain a : ?
Some of the the suboption parsers have a workaround. The video encoders are not among them. They're waiting for a general option parser rewrite. I don't know if anyone is actually working on it or if it's just being discussed.
Doom9
30th July 2005, 20:42
alright, I implemented all those changes. The XviD intelligence was the biggest pain of all but it's all done now :)
haubrija
31st July 2005, 00:19
Doom9,
When hitting the Config button for AVC, I get an error message with 0.2.1.7. Here the debug log it gives me.
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: '6' is not a valid value for 'index'.
at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
at MeGUI.x264ConfigurationDialog.set_CodecSettings(x264Settings value)
at MeGUI.MeGUI.videoConfigButton_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)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
MeGUI
Assembly Version: 1.0.2037.35636
Win32 Version: 1.0.2037.35636
CodeBase: file:///C:/MP4%20Encoding/MeGUI.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
xsuqgshi
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
zwv8h0ae
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
mca9j7ql
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
************** JIT Debugging **************
To enable just in time (JIT) debugging, the config file for this
application or machine (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the machine
rather than being handled by this dialog.
Do I not have something set up properly or is it a bug?
berrinam
31st July 2005, 01:04
haubrija, I can't reproduce this. How do you create this error, ie what x264 settings, do you use profiles, anything else you think might be useful.
haubrija
31st July 2005, 02:19
Tried to delete my post without success coz I had solved my problem. This is what happened though. I usually just overwrite my current version of MeGui with the new one. I had 0.2.1.4 set up but downloaded the new 0.2.1.7 and overwrote the old one. Apparently the new one didn't like my old profile setting for avc. Figuring that could be a potential problem, I exited MeGui and deleted the files in my profile directory. Opened MeGui back up and no problems. Except I had to resetup my profiles :) .
azsd
31st July 2005, 05:40
Progress window have no "High" priority item.
Backwoods
31st July 2005, 08:57
I tried this twice with the latest build and when I encode an Xvid from this script:
LoadPlugin("C:\Program Files\AviSynth 2.5\yea\DGDecode.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\yea\Decomb521.dll")
Mpeg2Source("00.d2v")
Telecide(order=1,guide=1)
Decimate(cycle=5)
CropBottom(8)
Lanczos4Resize(960,540)
The resulting file is corrupt. The video is roughly 1hr 30min and when I do a quick test (like one minute to three minutes) the video is fine. The resulting file is roughly 7gigs and does not play. Opening that file in VirtualDub results in 20min being recovered then nothing.
Xvid options: Q3, everything else not touched.
File Type: AVI
Doom9
31st July 2005, 12:53
@haubrija: you got this crash because you had an avc profile with rdo activated, and I changed the subq and me assignment code when I fixed the turbo bug. I used to increase subq by one directly in the GUI, now I'm doing it in the commandline generator.
@Backwoods: that almost sounds as if avi isn't up to that, or mencoder.
Progress window have no "High" priority item.Indeed, I forgot about that. It'll be in the next release.
HookedOnTV
31st July 2005, 21:14
@Backwoods: that almost sounds as if avi isn't up to that, or mencoder.
I'm thinking it is mencoder as I am not getting any good HD encodes out of MeGUI(XviD) where the resulting file size is larger than 4GB.
MeteorRain
1st August 2005, 15:43
d9: could you add a button to hide meGUI & status window into systray? XD
Doom9
1st August 2005, 15:51
that is kinda problematic. I have an app that does that when you press the X button.. with the effect that the X button becomes useless to close the application as you cannot catch button clicks outside if the client area (client area = anything below the title bar and inside the external frame border)
stax76
1st August 2005, 16:27
that is kinda problematic. I have an app that does that when you press the X button.. with the effect that the X button becomes useless to close the application as you cannot catch button clicks outside if the client area (client area = anything below the title bar and inside the external frame border)
Spy++ tells you the involved messages which you can trap either overwriting the controls WndProc (note that Form derives from Control) or before the message get posted to the control by setting a message filter (Application.AddMessageFilter).
Doom9
1st August 2005, 17:16
@stax: But is there a difference in between pressing X, minimize and maximize? I've already asked in the microsoft newsgroup and the answers I got pointed to only one catchable event, and that's simply not good enough.
stax76
1st August 2005, 18:36
never had to use it but yes, there should be a difference:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/mouseinput/mouseinputreference/mouseinputmessages/wm_nchittest.asp
which group did you ask? Most active appear to be:
comp.os.ms-windows.programmer.win32
do you know how to use Spy++? It's qite simple.
Doom9
1st August 2005, 19:32
I asked in a .NET group obviously ;) the thing is though, look at those events.. NC... is interesting here. You can catch non client area left, right middle and X button click (I figure that's a combination), and the position. So you'd need to figure out the coordinates of the X button (and then enter the people who use no standard DPI to give me a further headache). If somebody wants to submit a patch they're welcome, but this is just nothing that interests me.
stax76
1st August 2005, 19:59
I played a little bit around and found that you can do something like this:
Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM_SYSCOMMAND AndAlso m.WParam = CType(SC_CLOSE, IntPtr) Then
Exit Sub
End If
MyBase.WndProc(m)
End Sub
There is a handy application called ApiViewer 2004 that knows all the Win32 declarations and even generates the code in various languages.
Doom9
1st August 2005, 20:06
but what does that? Basically the problem is not so much catching the X and minimizing instead of closing, but knowing when to close (Alt-F4 or File - Exit).. they all fire OnClose where you cannot differentate between the X button and the other means to close.
stax76
1st August 2005, 20:46
Maybe I can help you if you want to find a solution for this issue but I would need to know what exactly you want to achieve. I must admit I'm not too familiar with MeGUI, I made only some test encodes.
Doom9
1st August 2005, 20:52
This isn't tied to MeGUI. Basically an app that when pressing the X button minimizes to the system tray, and when pressing alt-f4 or file-exit it exits.
stax76
1st August 2005, 21:09
Alt + F4 could be handled explicit:
Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM.SYSCOMMAND AndAlso m.WParam = CType(SC.CLOSE, IntPtr) Then
MoveToTray()
Exit Sub
End If
MyBase.WndProc(m)
End Sub
Private Sub MainForm_KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs) Handles MyBase.KeyDown
If e.KeyData = (Keys.Alt Or Keys.F4) Then
Close()
End If
End Sub
boombastic
3rd August 2005, 10:15
I've got a standalone divx player which can only playback AVI encoded with the xvid DXN HT PAL profile, if i use unrestricted it stops about every two minutes because of bitrate spikes i presume :angry:
I've got some questions:
1)is there a way with MeGui to assure that i can playback the file ?
2)What is "HC AC coefficients" option ?
3)I'd like to get a target size: if i use Automated 2 pass where can i set the desired size?
Doom9
3rd August 2005, 10:45
is there a way with MeGui to assure that i can playback the file ?Don't use QPel, don't use GMC, and use maximum 1 B-frame. I'm not sure on the packed bitstream, that (but other things as well) depend on which player you have. Unfortunately you cannot limit bitrate buffers in mencoder, and thus MeGUI so if the buffers cause problems for you, then I'm afraid you have to stick to the VfW or use the lavc codec where you can control max bitrate and buffer size.
if i use Automated 2 pass where can i set the desired size?You need to use the auto-mode. You don't even have to set the encoding mode with that, just configure the rest of the options.
boombastic
3rd August 2005, 15:10
I'm afraid you have to stick to the VfW or use the lavc codec where you can control max bitrate and buffer size.
.
What are vfw and lavc codec?If my player plays divx/xvid can also play avi made with them?Where can i find them?In ffdshow package?
Doom9
3rd August 2005, 16:01
lavc is shorthand for libavcodec mpeg-4 asp codec.. it's used when you select ASP from the codec dropdown.
VfW is Video for Window (searching would've helped).. you use it if you encode XviD in VirtualDub or any app based on that (Gordian Knot, AutoGK, DVX), and other VfW based apps like avs2avi.
haubrija
3rd August 2005, 18:22
Doom9,
I was setting up an encode last night and think I found a bug. I had the Show Commandline switch enabled. I set up the x264 encode for 3 Reference Frames but failed to see and resulting change in the commandline. If I'm not mistaken there was no switch for ref frames added and definately nothing changed when I would switch the number of ref frames in the dialog box (i.e. I saw no changes when switching from 3 to 4 refs). I hope I'm not showing my ignorance here of not understanding how one setting impacts another. Other than the default settings, here's how I have my encode set up:
2 Pyramid B Frames
RDO
Weighted Prediction
All Macroblock Options.
Let me know if you need any more info.
Doom9
3rd August 2005, 19:32
let me guess.. you had encoding mode set to automated 2-pass or 3-pass and turbo checked? Or a multi-pass single pass mode with turbo enabled? In the former case, you pretty much get to see the first pass settings (only pass is left at 2), in the latter case you'll see the actual first pass settings with turbo enabled. Turbo overrides a bunch of options, as number of reference frames, subq, me method and which macroblock options are enabled (none with turbo). However, perhaps you've noted that once you queue, your automated 2/3 pass turns into 2 / 3 separate jobs. If you click on one, press load, then go back to the codec configuration, you'll see what you really get. Basically in autuomated 2/3 pass you configure the second pass.. if you activate turbo, turbo overrides the second pass commandline so it is not shown.. but your settings are all still kept for the second pass.. so when the two passes are separated, they will be as you want them.
haubrija
3rd August 2005, 19:37
Ah... I was afraid it was something like that. Thanks for taking the time to explain. I did have Automated 3 pass with turbo checked.
dejected_is_me
4th August 2005, 02:24
I was encoding AD police last night with this:
# PLUGINS
LoadPlugin("C:\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\GORDIA~1\AviSynthPlugins\decomb.dll")
LoadPlugin("C:\GORDIA~1\AviSynthPlugins\VSFilter.dll")
# SOURCE
mpeg2source("C:\DVD Encodes\Raws\AD Police 1-3\d2v\ad 1.d2v", idct=7)
# IVTC
Telecide(order=1,guide=1).Decimate(cycle=5, quality=3)
# CROPPING
crop(2,0,704,480)
# RESIZING
LanczosResize(704,480)
# DENOISING: choose one combination (or none)
TextSub("C:\DVD Encodes\Raws\AD Police 1-3\subs\logo\ad 1 logo.ssa")
and the resulting video came out all garbled. There are alternating lines in the video and the actual video can be seen blinking in the backround. The sizes came out wrong too. Im incodeing with XVID into an avi. here are my settings.
(PS i can put this script into Virtualdub mod and it encodes OK)
<VideoProfile xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Name>2 Pass Xvid</Name>
<Settings xsi:type="xvidSettings">
<EncodingMode>4</EncodingMode>
<BitrateQuantizer>1153</BitrateQuantizer>
<KeyframeInterval>300</KeyframeInterval>
<NbBframes>1</NbBframes>
<MinQuantizer>2</MinQuantizer>
<MaxQuantizer>31</MaxQuantizer>
<SARX>0</SARX>
<SARY>0</SARY>
<Turbo>false</Turbo>
<V4MV>false</V4MV>
<QPel>false</QPel>
<Trellis>true</Trellis>
<CreditsQuantizer>20</CreditsQuantizer>
<FourCCs>
<string>XVID</string>
<string>DIVX</string>
<string>DX50</string>
<string>MP4V</string>
</FourCCs>
<Logfile>2pass.log</Logfile>
<CustomEncoderOptions />
<FourCC>0</FourCC>
<Zones />
<MotionSearchPrecision>6</MotionSearchPrecision>
<VHQMode>4</VHQMode>
<QuantType>0</QuantType>
<PAR>0</PAR>
<MinPQuant>2</MinPQuant>
<MaxPQuant>31</MaxPQuant>
<MinBQuant>2</MinBQuant>
<MaxBQuant>31</MaxBQuant>
<BQuantRatio>150</BQuantRatio>
<BQuantOffset>100</BQuantOffset>
<KeyFrameBoost>100</KeyFrameBoost>
<KeyframeThreshold>1</KeyframeThreshold>
<KeyframeReduction>20</KeyframeReduction>
<OverflowControlStrength>5</OverflowControlStrength>
<MaxOverflowImprovement>5</MaxOverflowImprovement>
<MaxOverflowDegradation>5</MaxOverflowDegradation>
<HighBitrateDegradation>0</HighBitrateDegradation>
<LowBitrateImprovement>20</LowBitrateImprovement>
<ReactionDelayFactor>16</ReactionDelayFactor>
<AveragingPeriod>100</AveragingPeriod>
<FrameDropRatio>0</FrameDropRatio>
<RateControlBuffer>0</RateControlBuffer>
<PackedBitstream>true</PackedBitstream>
<GMC>false</GMC>
<CartoonMode>true</CartoonMode>
<ChromaMotion>true</ChromaMotion>
<ClosedGOP>true</ClosedGOP>
<VHQForBframes>true</VHQForBframes>
<ChromaOptimizer>false</ChromaOptimizer>
<HQAC>true</HQAC>
<AdaptiveQuant>false</AdaptiveQuant>
<Greyscale>false</Greyscale>
<Interlaced>false</Interlaced>
<BframeThreshold>0</BframeThreshold>
<PARs>
<string>vga11</string>
<string>pal43</string>
<string>pal169</string>
<string>ntsc43</string>
<string>ntsc169</string>
</PARs>
<IntraMatrix />
<InterMatrix />
</Settings>
</VideoProfile>
any ideas...
dejected_is_me
4th August 2005, 06:53
ok i figured it out....
the aspect ratio intrestingly enough was what was doing it. I could of swore it was the tecline. On a side note is there increments to croping that i dont know about for megui (or in general). I had the values set to quotents of 2 with a aspect ratio of 704x480. The preview window would open for megui and it would look ok but after encode the error would ensue. I changed it to 640x480 and it worked. Another thing i dont get is why the script with 704x480 (the one that didn't work in megui) loaded and encoded ok in virtual dub mod? anywho...thanks for the great program.
Doom9
4th August 2005, 08:53
this certainly hasn't anything to do with your problem, but you're cropping, and then resizing to the same resolution.. get rid of the resizing, it doesn't do anything but potentially degrade quality and slow encoding down (I'm putting this in conditional tense because I don't know if the filter is intelligent and doesn't do anything if input and output resolution is the same).
I only support 16x resolutions because anything else is trouble.. certain codecs take care of that with tricks, and some don't work at all.. so to be on the safe side always go for 16x.
LigH
4th August 2005, 10:00
For example, x264.exe simply closes if width and height are not multiples of 16 (the size of a macroblock).
theronmoore
4th August 2005, 15:11
I'm definitely not the most versed reader of these forums, so I may be doing something incredibly simple wrong. But I seem to be running into a probelm when the Auto-Encode queue gets to muxing. It doesn't seem to be doing anything even after leaving it for a number of hours. Any suggestions?
Doom9
4th August 2005, 15:35
Any suggestions?Yes.. read the problem reporting guidelines and provide info.....
Doom9
4th August 2005, 20:42
a new build is up. Just a couple small things here and there, but those wishing to specify a bitrate rather than size in the autoencode window can rejoice.
haubrija
4th August 2005, 23:23
Doom9,
Just a small suggestion. Maybe on the abort button present during encoding, when its pressed have a seperate dialog that asks you if you're sure you want to do this. I was closing some other open windows last night while an encode that was half way done (and had been running for a day already) got accidentaly closed as well. I cursed at myself for an hour :). If its a pain, don't worry about it, but it might help with some grief people may experience.
Yama4050242
5th August 2005, 02:59
for the latest 0218
i choose exhaustive, use the show commandline, it is "--me esa --progress", but when encoding, it gives "--me --progress" and return a error
if i choose multi hex, use the show commandline, it is "--me umh --progress", when encoding, it gives "--me esa --progress"
other settings
"x264.exe" --pass 2 --bitrate 4096 --stats "2pass.log" --keyint 300 --ref 3 --bframes 3 --no-b-adapt --b-pyramid --subme 6 --weightb --analyse all --8x8dct --qpstep 1 --me umh --progress --no-psnr --output "I:\temp.264" "I:\temp.avs"
MeteorRain
5th August 2005, 03:51
for 0218:
do you forget to change the version number on the window title? :o
leowai
5th August 2005, 05:53
Ya. It's same here. Title shows 0.2.1.7 rather than 0.2.1.8.
for the latest 0218
i choose exhaustive, use the show commandline, it is "--me esa --progress", but when encoding, it gives "--me --progress" and return a error
if i choose multi hex, use the show commandline, it is "--me umh --progress", when encoding, it gives "--me esa --progress"
other settings
"x264.exe" --pass 2 --bitrate 4096 --stats "2pass.log" --keyint 300 --ref 3 --bframes 3 --no-b-adapt --b-pyramid --subme 6 --weightb --analyse all --8x8dct --qpstep 1 --me umh --progress --no-psnr --output "I:\temp.264" "I:\temp.avs"
Well, just have a quick test (queqe the job and exam on the job*.xml) on both single pass (CQ & ABR) and auto 2pass. All works fine for me.
dejected_is_me
5th August 2005, 07:06
Doom 9
thanks for the reply. the 16x resize is the answer i was looking for, incedently i was using 32x. with LanczosResize.
On a side note: i got the damn thing too encode but the sizes where way off. Previous version had been spot on. Im not sure if it has something to do with the source( AD police DVD: interlaced top field first) but i set it too 230 minus 10 megs for the audio, and it came out as the following, tried three times: 193mb, 177mb, and 181mb. Same settings as previous post and this time at a resoultion of 640x480 with Xvid into a avi.
????
just tried to mux a MKV with the built in muxer. using the "its alright baby" version and i get the following error:
Log for job job1
mkvmerge v1.5.0 ('It's alright, baby') built on Jul 1 2005 10:34:56
Error: 'jap' is neither a valid ISO639-2 nor a valid ISO639-1 code. See 'mkvmerge --list-languages' for a list of all languages and their respective ISO639-2 codes.
and then with no languages selected:
Log for job job1
mkvmerge v1.5.0 ('It's alright, baby') built on Jul 1 2005 10:34:56
Error: 'C:\DVD' is neither a valid ISO639-2 nor a valid ISO639-1 code. See 'mkvmerge --list-languages' for a list of all languages and their respective ISO639-2 codes.
the 'c:\dvd' is the location of the source chosen in the video input section.
Doom9
5th August 2005, 08:23
I really don't understand how people manage to kill their jobs without thinking. The abort button is kilometers away from the minimize button so you really have to want to kill it or just click at random and be really lucky. I've managed to close one or two programs that I didn't want to myself over the years, but explicitly pressing the abort button.. I don't recall that.
The version number is probably the smallest concern for any developer.. ;) You can always use a resource hacker. Seems I recompiled the minimized versions but forgot to recompile the full version when I finally changed the version number. I can almost promise that this is going to keep on happening in the future no matter how hard I try because version numbers in the title have zero significance to me.
@Yama4050242: I cannot reproduce that. I think you have some old jobs / profiles left. And as a side note, exhaustive is a rather insane setting;) You don't gain anything measurable but you lose out big in encoding time.
On a side note: i got the damn thing too encode but the sizes where way off.I spent a lot of time writing a nice bitrate calculator.. load your source, load your audio tracks and compare the bitrate the calculator shows with the bitrate that was used for the encoding jobs (if you didn't keep them, you'll always find the results of the bitrate calculation and the encoding commandlines in a logfile in your log folder). The fact that you got three different sizes (using the same settings I hope) is also a strong indicator that I am not to be blamed (the bitrate calculation should've yielded the exact same results with the same settings and source) The logfile is also needed for your mkvmerge problem (I am very interested in the commandline)
Yama4050242
5th August 2005, 11:44
i'v deleted all the jobs, logs, profiles folder, but it consists there, i tried 0216, works fine.i am using DGIndex 1.40 final, but all the dgdecode.dll i have change to the 1.40final, on settings in megui, i dont have mkvmerge, is that the problem?
btw, thx for ur hint, i just play around the parameters on some music video, no more than 5minutes
Doom9
5th August 2005, 12:11
you don't need mkvmerge... you don't need dgindex either untill you want to create such a project, and you don't need dgdecode.dll unless you want to create an avisynth script from a dgindex project.
about the me thing: are you sure you're telling me everything I need to know? Here's how I tried to reproduce it: create job, exit megui, open the xml file and look at the commandline - that's no encoding at all. When do you see these faulty commandlines?
MeteorRain
5th August 2005, 12:23
Doom9:
maybe you can make the progress bar thinner? :p
it's so fat i think ;)
so big blocks when it works ;)
Yama4050242
5th August 2005, 12:40
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --pass 1 --bitrate 700 --stats "2pass.log" --ref 3 --bframes 3 --no-b-adapt --b-pyramid --subme 7 --weightb --analyse all --8x8dct --qpstep 1 --me --progress --no-psnr --output NUL "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
this is for the exhaustive
Doom9
5th August 2005, 12:49
<METype>5</METype>I suspected that. You still didn't tell where you got this job from. Is that a job after encoding or before encoding, in auto-mode, one click mode or regular mode? I guess it's after encoding in auto-mode, and if you look at jobs prior to encoding, all is ok. Is this correct?
Yama4050242
5th August 2005, 13:00
i do the thing you told me to do, the commandline is from the job1-1.xml before encoding, yeah, i use automatic 2 pass,
leowai
5th August 2005, 13:08
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --pass 1 --bitrate 700 --stats "2pass.log" --ref 3 --bframes 3 --no-b-adapt --b-pyramid --subme 7 --weightb --analyse all --8x8dct --qpstep 1 --me --progress --no-psnr --output NUL "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
this is for the exhaustive
What if you extract the MeGUI program files into a new folder? Is the bug remains (will the program still produce such a output command line)?
Yama4050242
5th August 2005, 13:10
What if you extract the MeGUI program files into a new folder? Is the bug remains (can you reproduce this output command line)?
yeah, i did extract the MeGUI to a new folder, the problem did not solve
Doom9
5th August 2005, 14:36
@Yama4050242: I think you do not understand that MeGUI has three modes. Regular mode is using just the main window.. you press the Queue button and jobs are added to the queue. That is regular mode. In all other modes, you have another window on screen at the point where the jobs get added to the queue. There are two modes: auto-mode. You enter auto-mode if you press the button entitled AutoEncode. And then there's the one click mode which you can enter only via the tools menu.
Now, I presume you're using automode. If you search this thread you'll find a lengthy explanation by myself on the subject of updating bitrates. Can you tell me if the job you posted has had its bitrate updated or not? I fear that with every bitrate update, the me (and subq for that matter) might get increased.
Yama4050242
5th August 2005, 15:01
then i just use regular mode, i just add the video and choose the profile and press queue
i just choose any bitrate and test, it is the same, and i havent update it
Doom9
5th August 2005, 15:37
this is weird as this is what I'm doing and I cannot reproduce it. The only difference is that I don't use any profile (I don't have any)
Yama4050242
5th August 2005, 15:48
currently, i also dont have any profile, and just do the setting, the problem is still there? is it conflict with other software i install? is that possible?
Doom9
5th August 2005, 16:54
is it conflict with other software i install? is that possible?very doubtful. Can you try this: delete settings, jobs, profiles, start again, load video, press config, change me method (and nothing else!!!), press Ok, press Queue, close MeGUI and then open the job xml file and look at your commandline. On my machines it matches what has been configured.
Yama4050242
5th August 2005, 22:33
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --bitrate 700 --analyse p8x8,b8x8,i4x4 --qpstep 1 --me esa --progress --no-psnr --output "I:\Sports\TestField\HDTV\temp.mp4" "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
it is ok for your setting, but automated 2pass's 1st pass got problem
for your setting and just change ABR to automated 2pass it gives
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --pass 1 --bitrate 700 --stats "2pass.log" --subme 6 --analyse p8x8,b8x8,i4x4 --qpstep 1 --me --progress --no-psnr --output NUL "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
leowai
6th August 2005, 06:49
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --bitrate 700 --analyse p8x8,b8x8,i4x4 --qpstep 1 --me esa --progress --no-psnr --output "I:\Sports\TestField\HDTV\temp.mp4" "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
it is ok for your setting, but automated 2pass's 1st pass got problem
for your setting and just change ABR to automated 2pass it gives
<Commandline>"G:\SoftWarez\Encoding\WorkShop\MeGUI\X264CLI\x264.exe" --pass 1 --bitrate 700 --stats "2pass.log" --subme 6 --analyse p8x8,b8x8,i4x4 --qpstep 1 --me --progress --no-psnr --output NUL "I:\Sports\TestField\HDTV\temp.avs"</Commandline>
OK. I managed to reproduce your problem now!
Clean MeGUI program (no profile).
Test procedure:
a. Open up MeGUI (of course :) )
b. Load avis input file
c. Click Codec "config" button
Then follow the steps when "x264 Codec Configuration" dialog shown.
1. Advance tab-> Select ME Algo (see below)
2. Main tab-> Change ABR to Automated 2passes (Turbo not selected)
3. OK and queqe.
Results for different ME Algo
1. Diamond
first pass: --progress
2nd pass: --me dia --progress
2. No change (ME Algo=Hexagon)
first pass: --me umh --progress
2nd pass: --progress
3. Multi Hex
first pass: --me esa --progress
2nd pass: --me umh --progress
4. Exhaustive
first pass: --me --progress
2nd pass: --me esa --progress
A quick test on automated 3 passes, Exhaustive (Turbo not selected)
--me --progress
--me --progress
--me esa --progress
Clear enough, if Turbo is not selected, there will be errors in output command lines.
Probably Turbo should be forced when automated multi-passes is used?.
[edit: typo]
Doom9
6th August 2005, 11:49
@leowai: thank you for that report. Finally I can reproduce the problem as well.
@everyone: take note on how methodical leowai approached the issue. This is how an excellent bugreport should look.
Doom9
6th August 2005, 13:37
a fixed version is out now.
TNM
9th August 2005, 13:21
Is it possible to add more audio stream in MP4 muxer window? Currently only 2 audio streams are allowed... Sometimes we may want to add like 3 audio streams: 2 language streams and a directors comment stream :)
Doom9
9th August 2005, 13:40
Currently only 2 audio streams are allowedThat's right and this will not be changed either. Keep in mind that this is a backup tool. Commentary tracks are something I cannot image listening to for a second time, and to do that, I really can take out my original disc.
Mc Onyx
10th August 2005, 13:39
First I apologize if this has been asked before, but why does MeGUI save bitrate value to the profile, example if choose profile for the first pass, queue it, than choose profile for the second pass, i have to enter bitrate value again, it would be nice if it would stayed from the first pass, it's not a big deal, but kinda anoying!
Second thing i don't know if i am doing something wrong (probably:)), or it's a bug, but it happens in MeGUI and X264CLIgui, so i guess it's my fault, and it's concerning zones, usualy i use quantizer value, but lately i tried with weight, which i was using in Xvid and if my commandline is like this:
D:\Encoding Utilities\X264 CLI>x264 --pass 1 --bitrate 1119 --stats "2pass.log"
--bframes 3 --b-pyramid --filter -2,-2 --subme 1 --weightb --analyse none --qpst
ep 1 --direct none --me dia --zones 4202,4750,b=0,25 --progress --no-psnr --outp
ut NUL "D:\DVD\Encoding AVS\DD Test.avs"
- X264 says:
avis [info]: 688x368 @ 25.00 fps (4751 frames)
x264 [error]: invalid zone: bitrate_factor=0.000000
x264_encoder_open failed
- But if i change the comma into point, like this:
x264 --pass 1 --bitrate 1119 --stats "2pass.log"
--bframes 3 --b-pyramid --filter -2,-2 --subme 1 --weightb --analyse none --qpst
ep 1 --direct none --me dia --zones 4202,4750,b=0.25 --progress --no-psnr --outp
ut NUL "D:\DVD\Encoding AVS\DD Test.avs"
- It works, but i don't know if this is ok, because the commandline was generated by MeGUI and X264CLIgui, does it the same. So my question is, what's wrong and is it "point", or "comma"!
- P.S. Sorry for my english! :)
Doom9
10th August 2005, 14:07
why does MeGUI save bitrate value to the profileGood question. But either way round it's not ideal. Some people might prefer to have profiles with bitrates (or a quantizer), others would rather not have that value saved anywhere, so either way somebody is going to be unhappy. But why not use an automated 2/3 pass profile instead? That way you won't have to reset the bitrate. Likewise, you could use auto-mode, then update jobs, as in auto-mode, the bitrate is updated after audio encoding (that is assuming you are encoding audio.. if you don't, the bitrate is written into the jobs when they are added to the queue).
As for your second issue, it is not your fault. Well, it is sort of because your computer uses a comma as decimal separator, whereas x264 and any software made for the English market expects a dot. Unfortunately for me, that now means changing the commandline generator to use a different double/decimal -> string conversion for each double/decimal value :(
mc_experimental
11th August 2005, 14:23
For Doom9.
Why megui 0218a (very good tool Doom9!!!) not save log file? When i do an autoencode with shutdown, all work fine but no log, and also whit "delete completed jobs" unchecked in setting box, nothing in queue list. Other thing when select a video/audio profile sometime not working. Only select profile then press config and verify command line is safe, and appears SAR setting not saved in profile (es. make a profile for 16:9 whit SAR 64:45 then change to another profile, SAR remain same).
I use your tool for encoding DVBT recording. X264 and megui are fantastic!!! very very good quality.
Please can add *.mpv *.m2v extensions, or "all file" in D2V Creator input filebox? (Tired press *.* :p )
Many thanks for your work, and sorry for my bad english (i'm italian)
Bye
Mauro
berrinam
12th August 2005, 07:59
On the topic of AR, perhaps there should be an option in the OneClickWindow (not necessarily just the OneClickWindow, but I can't think of anywhere else it would be appropriate) to signal the AR instead of resizing.
Doom9
12th August 2005, 14:29
When i do an autoencode with shutdown, all work fine but no logHmm, it might be that due to the way I use to shut down the PC (native System calls), the close event may not be triggered and thus the log not be saved. I've only tested the shutdown once, probably even before the autosaving log was introduced, but I will add log saving to the shutdown method so it will be saved before the system is shut down. The log never made more sense than in the shutdown scenario.
and also whit "delete completed jobs" unchecked in setting box, nothing in queue list.That is desired behavior.. the option says so, doesn't it? If you want the jobs to be kept, don't activate that option.
About the SAR thing: it happens just in the scenario you described.. if a profile has no SAR, the current values are not overwritten because a 0:0 SAR makes no sense (0:0 is the default value). I can change that so that in case there's a 0:0, those fields are cleared.
perhaps there should be an option in the OneClickWindow (not necessarily just the OneClickWindow, but I can't think of anywhere else it would be appropriate) to signal the AR instead of resizing.Good idea, but it would be a codec conditional thing (not every codec has that feature). In such a case, auto-crop should still be done, but no resizing afterwards.
berrinam
12th August 2005, 14:47
About the 'delete completed jobs' problem: I mentioned it in the MeGUI dev thread a few days ago, but there hasn't been a new release since then, so the bug still exists, ie it currently ignores your settings, and always deletes completed jobs.
Good idea, but it would be a codec conditional thing (not every codec has that feature). In such a case, auto-crop should still be done, but no resizing afterwards.
Is it just Snow that doesn't support AR signaling? What happens with cropping to non-mod16 sizes? I suppose a rounding-resize would need to be put in.
Doom9
12th August 2005, 15:35
Is it just Snow that doesn't support AR signaling?It appears so.
What happens with cropping to non-mod16 sizes?That's going to be a problem, but that, too, is codec dependant. I know x264 requires mod16, XviD should work with mod2 and I have no clue about lavc - that would have to be tested.
Doom9
12th August 2005, 18:08
About the 'delete completed jobs' problem: I mentioned it in the MeGUI dev thread a few days agoI must've missed that. It's now taken care off, along with anything else reported. I just have to run a few test encodings to see if the numerous changes that were required to accomodate larger sizes (now using 9999MB as a target size is not a problem anymore) haven't broken anything
Doom9
13th August 2005, 00:24
the big bugfix release it out. enjoy. I'll hold off from putting up the x264 and snow release for a few days to see how these rather extensive changes play out.
AnimeTheme
13th August 2005, 13:15
So from 0.2.1.8a, x264 quantizer delta is now set to 4 by default. I know basically what quantizer delta means (the max q difference between consecutive frames), but what is its actual effect on encoding quality? Should I stick with 1, or use 4 now?
Doom9
13th August 2005, 13:29
I figure there was a reason for the default to be changed (it's the x264.exe default, that value didn't come from me). I'd go with the new default..
mc_experimental
13th August 2005, 15:30
the big bugfix release it out. enjoy. I'll hold off from putting up the x264 and snow release for a few days to see how these rather extensive changes play out.
Many thanks.
MC
haubrija
14th August 2005, 21:04
Doom9,
I'm having a big problem with audio encoding in 2.1.9. Here's my usual procedure.
1. Create AVS script with your creator and load it up. Load up AC3 file created by DGIndex 1.21 and create my settings (AVC 3 pass, AAC 5.1 HE, VBR High).
2. Hit Auto Encode and go for a 1/3 DVD setting.
3. Add Chapters and hit go.
4. Go to Jobs menu and hit start.
Now upon hitting start, the status dialog comes up but nothing ever appears there. MeGui just hangs. Now, I bring up the task manager and both MeGui and Besweet are there, but Besweet is consuming no CPU cycles. If I end the MeGui process, Besweet starts right up, instanly consuming 99% CPU.
I'm using Beswet b30. I tried another DVD to ensure I didn't have a bum AC3 file, but had the same problem.
Any help would be great.
Doom9
14th August 2005, 21:51
@haubrija: I don't see a log anywhere. Where is it? Also, can you break down the problem into parts (as per the problem reporting guidelines.. it's a process that you should be able to do without any help ;) ? In this case, if you just set up audio encoding, with the default settings for AAC, does the same happen? I very much think so, but it's essential information that allows to rule out a lot of code as the source of the problem...
haubrija
14th August 2005, 22:33
Doom9,
Sorry about the lack of log... here it is:
Generating jobs. Desired size: 1537212416 bytes
Setting desired size of video to 1537212416 bytes
Next job job1-1 is an audio job. besweet commandline:
"C:\MP4 Encoding\BeSweetv1.5b29\besweet.exe" -core( -input "D:\1 AC3 T02 3_2ch 448Kbps DELAY 0ms.ac3" -output "D:\audio.mp4" -logfile "besweet.log" ) -azid( -c normal ) -bsn( -6chnew -vbr_extreme -codecquality_high -aacprofile_he ) -ota( -d 0 )
successfully set up audio encoder and callbacks for job job1-1
As far as breaking it down into parts, I do not know what more I can tell you other than what is in my original post. I set up my auto encode like i said and then MeGui hung during the Audio encoding part.
Now, per your request, I ran it with default settings. No problems! It started just as it should had, so the problem must lie with my previous audio profile. Hope this helps.
haubrija
14th August 2005, 22:44
Oops... You may want the besweet log as well. Here ya go.
BeSweet v1.5b30 by DSPguru.
--------------------------
Using azid.dll v1.9 (b922) by Midas (midas@egon.gyaloglo.hu).
Using Shibatch.dll v0.25 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll v0.24 by DPeshev,Richard,E-Male,DSPguru (DSPguru.Doom9.org).
Logging start : 08/14/05 , 13:34:43.
C:\MP4 Encoding\BeSweetv1.5b29\besweet.exe -core( -input D:\1 AC3 T02 3_2ch 448Kbps DELAY 0ms.ac3 -output D:\1 AC3 T02 3_2ch 448Kbps DELAY 0ms.mp4 -logfile besweet.log ) -azid( -c normal ) -bsn( -6chnew -vbr_extreme -codecquality_high -aacprofile_he ) -ota( -d 0 )
[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : D:\1 AC3 T02 3_2ch 448Kbps DELAY 0ms.ac3
[00:00:00:000] | Output: D:\1 AC3 T02 3_2ch 448Kbps DELAY 0ms.mp4
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] +-------- AZID -------
[00:00:00:000] | Input Channels Mode: 3/2, Bitrate: 448kbps
[00:00:00:000] | Total Gain: 0.000dB, Compression: Normal
[00:00:00:000] | LFE levels: To LR -INF, To LFE 0.0dB
[00:00:00:000] | Center mix level: BSI
[00:00:00:000] | Surround mix level: BSI
[00:00:00:000] | Dialog normalization: No
[00:00:00:000] | Rear channels filtering: No
[00:00:00:000] | Source Sample-Rate: 48.0KHz
[00:00:00:000] +-------- BSN --------
[00:00:00:000] | bitrate: vbr extreme
[00:00:00:000] | HE-aac high quality encoding
[00:00:00:000] +---------------------
AnimeTheme
15th August 2005, 08:25
I suggest that aside from BeSweet, MeGUI should support another program for the audio encoding part, such as FFMPEG. BeSweet requires 2 DLLs from Nero AAC Encoder, which is NOT a free program (please correct me if I am wrong here). On the other hand, FFMPEG is FREE and supports AAC encoding as well (even though not as dedicated as Nero). What's cool is that you can use AVS for FFMPEG as well. So you can possibly write a single AVS script that can work for BOTH the video and audio parts.
Doom9
15th August 2005, 08:30
@AnimeTheme: This has been brought up before. I simply need BeSweet for its superior audio capabilities that no other program can offer. There was a volunteer to creating an faac plugin for BeSweet, but he seems to have disappeared again. mencoder also supports aac encoding, but there's no way audio encoding can be done in one step.. only besweet can do that.. any other solution relies on besweet decoding the audio, thus creating a huge temporary file which creates problems for people not using NTFS, and then encoding that again. That is why I'm using BeSweet with Nero.
ffmpeg's MP4 output is very buggy so using that is quite simply out of the question, I'm not going to support something that doesn't work properly.
Now, per your request, I ran it with default settings. No problems! It started just as it should had, so the problem must lie with my previous audio profile.Alright, so it's the setup after all.. can you pinpoint which option that you changed from the default trigger the problem?
AnimeTheme
15th August 2005, 16:14
I understand that BeSweet with Nero is better than other audio solutions (in terms of quality and such), but FFMPEG has its advantage as a FREE tool. I am not sure if FFMPEG's MP4 output is really that buggy, but I suppose it can handle AAC encoding just fine, and I have had NO problem using it to encode AAC for my x264 movies.
It will be cool if we can have a unified and completely FREE solution for x264 encodes. :cool:
haubrija
15th August 2005, 17:06
Ok, I discovered where the problem lies. I went step by step through my settings to find it. Not sure if its the combination but this is when it happened.
1. Default MeGui Settings - OK
2. Default + VBR Extreme - OK
3. Default + VBR Extreme + HE - OK
4. Default + VBR Extreme + HE + High Quality - OK
5. Default + VBR Extreme + HE + High Quality + Uncheck Increase Volume Automatically = NOT OK.
With that final combination above (unchecking increase volume), is where I had the problem with MeGui hanging.
Doom9
15th August 2005, 19:34
@haubrija: thank you for making these tests, I much appreciate it.
@AnimeTheme: I understand the feeling but as I said, give me an faac besweet plugin and I promise to support it. But I'm not going to rewrite MeGUI to require two tools for audio encoding when one is enough, free or not.
m0rc1
16th August 2005, 01:56
This really happens with lots of programs (most Adobe ones, for example - but also BeLight is completely unusable with a 120DPI display).
The problem is that if you set the AutoScale flag to true (which is a good thing), windows and dialogs can change their final size depending on the size of the text (which depends on the display resolution - in DPI).
To make a long story short: fixed windows sizes should not be used; in the case of MeGUI the problem is with the "Show commandline" options in most dialogs.
The handler should be changed to something like this:
if(commandlineVisible.Checked)
{
showCommandLine();
this.commandline.Visible = true;
this.Size = new Size(this.Width, this.Height + this.commandline.Height);
}
else
{
this.commandline.Visible = false;
this.Size = new Size(this.Width, this.Height - this.commandline.Height);
}
(here I'm assuming the commandline is shown by default).
m0rc1
Igor Kharchenko
16th August 2005, 10:10
Why I can't add mp3 audio in bitrate calculator when I select MP4 container? Is it non standart? I mixed raw x264 video stream and mp3 vbr audio using mp4box and it works fine.
Doom9
16th August 2005, 10:19
Why I can't add mp3 audio in bitrate calculator when I select MP4 container?Because megui doesn't support that combination. It doesn't make much sense using an inferior audio codec for a container made specifically to contain AAC audio (and MPEG-4 video of course).
You can also mux Vorbis or AC3 (not sure the latter is actually supported but it could be made to support it) into MP4, that's not saying that would make any more sense either. You'll get the best compatibility with MP4 if you stick to what it's meant for. If you want to use your prefered audio type, then use the Matroska container, it is made for flexibility and supports virtually every audio and video codec.
DarkNite
17th August 2005, 00:33
I love this app! The progress that's been made in this short span of time is amazing, and well appreciated. Kudos to everyone involved.
Now that I'm done with the praise, let's get down to the gripe.
Log for job job1-5
mkvmerge v1.5.0 ('It's alright, baby') built on Jul 1 2005 10:34:56
Error: 'jap' is neither a valid ISO639-2 nor a valid ISO639-1 code.
See 'mkvmerge --list-languages' for a list of all languages and their respective ISO639-2 codes.
'jpn' would be the appropriate entry here. Anime enthusiasts using mkv output would see this as a huge turn off. Other than that MeGUI is looking pretty sexy to me.
dejected_is_me
17th August 2005, 03:27
i noticed two things:
In the previous release, when a job was complted it was deleted from the queue, even if the "delete completed jobs" button was unticked in settings. I don't have anything to test if this was fixed just thought i would throw it out there...
the mux in mkv still works if the country code is disabled, with it enabled it just dosen't...
Doom9
17th August 2005, 09:07
@Darknite: this was previously reported. Unfortunately, without a log so I have only taken care of it after the last public release. It is already fixed in the development build, but I need to take care of the audio issue haubrija reported and the granny fonts issue when showing the commandline before a next release.
I don't have anything to test if this was fixed just thought i would throw it out there...If you check the changelog, this has been fixed.
the mux in mkv still works if the country code is disabled, with it enabled it just dosen't...could it be for the same reason darknite posted? If not, where's your log?
noisehole
17th August 2005, 12:30
hi,
i havnt encoded anything for a long time and just tried your gui (v0.2.1.9) for my first mp4 (nero he aac/x264cli high profile) encode and here is just a little feedback. there's some minor things i mention, but dont get me wrong - overall it worked great!
i used kung fu hustle ntsc ripped in ifo mode/movie only
attached is a queue screenshot, the log and the profiles i used.
-avisynth script creator: it suggested 640x352 which is 16:9 but the source is anamorphic and y-res of 256 would be correct (or did i mess up in dgindex?). also if suggest is checked and the input dar is changed the res should be updated
-input/audio i used 2 audio tracks, chi and eng. i have 2 audio profiles. if i change profile for stream1 it is changed for #2 too (i want different profiles for each stream)
-process status window: its set to some kind of always on top mode wich i find annoying
-i used automated 3pass and the commandline for pass 2 and 3 both had "--pass 3" as parameter. is that correct?
-i set the language names in the mp4 muxer, but mp4box wont take those arguments, without ";lang=chi" and ";lang=eng" the mp4box muxed correctly
-i could choose the vobsub generated *.sub file in the muxer but mp4box thought its a bad idea. do i have to convert it to ttxt?
using haali i got an impressive mp4 qualitywise. both audio streams are available, as are chapters.
great work :thanks:
Doom9
17th August 2005, 13:13
first thing: did you use the one click mode or the autoencode mode? the one click mode effectively only allows one audio profile that is applied to both streams. If you use auto-encode mode instead, the audio configuration will be taken as is.. so you configure your first input/output, select the profile, switch to the second track, configure it, select the profile, then encode. You can even switch between the tracks (obviously that won't show the profile you selected, but the settings will be there, press config to verify).
Please note that any profile selection is applied immediately to the currently active audio stream. Thus, you need to select the profile after selecting input and output for a track. If you select the profile before the audio track, it won't work the way you want it (you'll select the profile without input, so nothing will be applied, then you select input and output (once you select output the current settings from the profile will be applied), then you select the second profile, whose settings will be applied to the audio track currently shown (still track 1 at this point), then you switch to track 2, nothing is applied as there's no input and output, then you select input and output, and at this point the currently active settings (from the second profile you selected) will be used for that audio track. Thus, both tracks have the same settings.
This is a general principle throughout MeGUI. You always select your input, then output (not necessary if you are happy with the automatically generated output location and name), then the settings. I cannot prevent that you do this another way without severely restricting the GUI in ways I have no intention to do, but the results can be undesireable if you don't follow this rule.
According to this review (http://movie-reviews.colossus.net/movies/k/kung_fu.html) Kung Fu Hustle is effectively a 1:2.35 movie, so the correct resolution would be 640x272 (not 256.. that's ITU resizing and I don't accept telephony organizations to tell me how to resize video). I assume auto-crop failed.. if you open your avisynth script, do you have black bars? If you have, could you make a sample VOB available (you can strip audio, it won't have to be too long but it needs to be from a part other than the intro/credits but a part where there's a clear separation between black bars and the actual movie).
also if suggest is checked and the input dar is changed the res should be updatedduly noted.. it's just not the "normal" workflow
its set to some kind of always on top mode wich i find annoyingThat's not true actually.. you can always minimize. It just pops up, but that's what happens with new windows.. iirc the same happens in VirtualDub, and that's the model I used for MeGUI (the progress window is very similar after all and that's intentional, I've always liked the informative progress report VirtualDub provides, and I just improved upon that where I thought it would be useful (e.g. calculation of remaining processing time versus estimation of the entire process lenght so you have to substract elapes from estimated to get the remaining time))
i used automated 3pass and the commandline for pass 2 and 3 both had "--pass 3" as parameter. is that correct?yes, that's how it should be.
-i set the language names in the mp4 muxer, but mp4box wont take those arguments, without ";lang=chi" and ";lang=eng" the mp4box muxed correctly I have to put the blame on mp4box here: according to the list of ISO codes (http://www.w3.org/WAI/ER/IG/ert/iso639.htm), chi is the code for Chinese. You could use zho, perhaps that'll work, but if not you need to speak to the author of mp4box as it's not under my control if mp4box doesn't support a code.
-i could choose the vobsub generated *.sub file in the muxer but mp4box thought its a bad idea. do i have to convert it to ttxt?Actually, if you try you'll find that it'll fail. The thing is, there's a text based subtitle format that has the extension .sub and that's what mp4box supports, hence you can select .sub file (obviously a file dialog filter only checks extensions, not contents of the files).. the file open dialog also never speaks of VobSub which should be another indication that it won't work.. you can after all rename the extension of any file but unless the file contains what the extension suggests, it'll always fail. VobSub subtitle support may eventually come, but for now you need a supported text based format. Personally I'd use Subrip to create an .srt file.
noisehole
17th August 2005, 13:52
first thing: did you use the one click mode or the autoencode mode? the one click mode effectively only allows one audio profile that is applied to both streams. If you use auto-encode mode instead, the audio configuration will be taken as is.. so you configure your first input/output, select the profile, switch to the second track, configure it, select the profile, then encode. You can even switch between the tracks (obviously that won't show the profile you selected, but the settings will be there, press config to verify).
i used the autoencode mode. i didnt verify the audio config, just noticed that the profile display didnt change.
This is a general principle throughout MeGUI. You always select your input, then output (not necessary if you are happy with the automatically generated output location and name), then the settings. I cannot prevent that you do this another way without severely restricting the GUI in ways I have no intention to do, but the results can be undesireable if you don't follow this rule.
thats the way i expect a gui to function. i was just irritated by the options displayed
According to this review (http://movie-reviews.colossus.net/movies/k/kung_fu.html) Kung Fu Hustle is effectively a 1:2.35 movie, so the correct resolution would be 640x272 (not 256.. that's ITU resizing and I don't accept telephony organizations to tell me how to resize video). I assume auto-crop failed..
i didnt measure that exactly. guardian knot suggested 640x256 and comparing the dvd in software dvdplayers to the x256 avs (both fullscreen) seemed to fit more correctly. 272 would be 2.35, i just didnt check 2nd sources ;)
oh and autocrop worked perfectly, no bars at all (2,60,-2,-66). rechecked and its as accurate as it could be
That's not true actually.. you can always minimize. It just pops up, but that's what happens with new windows.. iirc the same happens in VirtualDub, and that's the model I used for MeGUI (the progress window is very similar after all and that's intentional, I've always liked the informative progress report VirtualDub provides, and I just improved upon that where I thought it would be useful
the similarity was obvious ;) so its just me that the window is really on top of others?
EDIT: hm enqueued an audio job and now the windows are normal. if i can reconstruct that issue ill report back. maybe it has something to do with starting hidden processes (besweet, x264...)
I have to put the blame on mp4box here: according to the list of ISO codes (http://www.w3.org/WAI/ER/IG/ert/iso639.htm), chi is the code for Chinese. You could use zho, perhaps that'll work, but if not you need to speak to the author of mp4box as it's not under my control if mp4box doesn't support a code.
thought so, but it didnt like eng either, so i didnt even try finding the correct value since it appears it wouldnt accept any
for the subtitles, i know that the correct mp4 format is ttxt, i just tried the vobsub. there was a chance your gui or mp4box converts them :p but ill try subrip, thx
mc_experimental
17th August 2005, 14:22
Ok, I discovered where the problem lies. I went step by step through my settings to find it. Not sure if its the combination but this is when it happened.
5. Default + VBR Extreme + HE + High Quality + Uncheck Increase Volume Automatically = NOT OK.
With that final combination above (unchecking increase volume), is where I had the problem with MeGui hanging.
Default + internet + HE + High Quality - OK
Default + internet + HE + High Quality + Uncheck Increase Volume Automatically = megui hang (218a - 219)
Bye
noisehole
17th August 2005, 16:01
":lang=LAN": sets imported media language code
thats all, just replace ";" with ":" and it works ;)
btw subrip method worked, i now got a nice mp4 with 2 langs, 3 subs and chapters. and all selectable/working with haali. i gotta say, im impressed with the results
Doom9
17th August 2005, 17:46
i just tried the vobsub. there was a chance your gui or mp4box converts them I'm afraid an automated OCR without human intervention is simply impossible (or you'd not be very happy with the result as everything would get discarded).
@mc_experimental: I guess that means that any profile causes this and the culprit is effectively the rest of the settings (HE, high and auto-volume adjustment disabled). Though I wonder, why would you want not to use the volume adjustment? You really have to crank up your stereo to hear anything if you don't use that option, and then when you listen to something else, you're going to blow your eardrums and speakers.
thats all, just replace ";" with ":" and it worksUhh.. my mp4box says to use a ;, not a :
And I need a VOB sample to look at the autosuggest resolution thing.. it properly suggests 640x272 with my 1:2.35 samples. Looking at your crop values, there can only be two reasons for a false detection: 1) dgdecode reports a wrong frame height, 2) you set a custom DAR.. it would need to be 1.778 for a 16:9 source. I tend towards 2 considering that this is the first ever report of a failure of this function.
leowai
17th August 2005, 18:38
Uhh.. my mp4box says to use a ;, not a :
That's the different version of MP4Box used.
v3.x uses ";" but v4.x uses ":"
Doom9
17th August 2005, 18:54
That's the different version of MP4Box used.
v3.x uses ";" but v4.x uses ":"I suspected that. But this is an user error.. the download url for mp4box given in the requirements only offers a v0.3x binary for download.
AstaRoth
17th August 2005, 21:00
Hi,
Congratulation for your software
But, do you find interesting to have an aspect error (in percentage) for resize in the avisynth script editor ?
jellysandwich
18th August 2005, 01:17
I found a small bug whilst trying to encode x264 to avi. I'm using MeGUI 0.2.1.9 and the mencoder from mplayer2005.08.13.Athlon-64.7z. It's reproducible for me.
Steps:
1) Open up MeGUI.
2) Tools -> Settings -> Set x264 encoder to mencoder.
3) Select an avs script.
4) Set Codec to AVC.
5) Set File Type to AVI or MKV.
6) Hit the Config button.
Then it crashes, with this error:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at MeGUI.CommandLineGenerator.generateX264CommandLine(String mencoderPath, x264Settings xs, String input, String output)
at MeGUI.CommandLineGenerator.generateVideoCommandline(MeGUISettings settings, VideoCodecSettings vSettings, String input, String output)
at MeGUI.x264ConfigurationDialog.showCommandLine()
at MeGUI.x264ConfigurationDialog.x264EncodingMode_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
at MeGUI.x264ConfigurationDialog.set_CodecSettings(x264Settings value)
at MeGUI.MeGUI.videoConfigButton_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)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
MeGUI
Assembly Version: 1.0.2050.42535
Win32 Version: 1.0.2050.42535
CodeBase: file:///E:/Downloads/Video/x264_cli/MeGUI.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
j0j6sedn
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
************** JIT Debugging **************
To enable just in time (JIT) debugging, the config file for this
application or machine (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the machine
rather than being handled by this dialog.
Would someone else mind trying to produce this error?
I found a simple workaround though:
1) Change File Type to MP4 or RAW.
2) Set up config.
3) Change File Type back to AVI or MKV.
4) Finish setting up and queue.
js
jellysandwich
18th August 2005, 05:05
What am I supposed to do with pgthreadGC2.dll?
js
Doom9
18th August 2005, 09:33
What am I supposed to do with pgthreadGC2.dll?just copy it wherever mencoder.exe is located. I'm not even sure you need it anymore, you can test that by setting the number of threads to 2 and start encoding. That dll was first also required for the VfW and exe version of x264 but subsequently was replaced with native threading code.. I suppose the same has been done for mencoder.
I can confirm your crash, I'll have a look at it.
But, do you find interesting to have an aspect error (in percentage) for resize in the avisynth script editor ?Not particularly.. I never found that indication in GKnot useful, especially since there's no way you can change it to something better without risking to break encoding (I enforce mod16 resolutions which is the only thing that will work with every codec MeGUI supports), and the resolution that is automatically picked with suggest resolution is the one that gives the lowest error compared to the real aspect ratio of the movie.
Doom9
18th August 2005, 23:52
alright, that crash, along with all other reported and reproducable problems are fixed now.
Igor Kharchenko
19th August 2005, 20:22
Firstly I made automated 2 pass job. Then I made 2nd pass postponed and started job. But after the 1st pass done, program started 2nd pass. Is it bug or feature? When I make 2 separate jobs, everything work as I wish, i.e. program stopped after 1st pass.
Doom9
19th August 2005, 20:33
s it bug or feature?A bug. I've fixed it in the development build.
Doom9
20th August 2005, 00:37
and the bugfix is now publicly available. See the first post for the changelog.
m0rc1
20th August 2005, 00:48
The audio file size is still a 32 bit integer but that should cover about 2 GB and I think we should be okay with that.
Mmm...
With a 3+h movie (LOTR) I got negative sizes for a 256kbps audio stream (MeGUI 0.2.2.0).
m0rc1
Doom9
20th August 2005, 01:39
that stupid calculator is going to be the end of me.. never again. Writing that was torture and it's not even over. It's no overflow though, 32 bits allow for up to 4 GB in size.
leowai
20th August 2005, 06:30
Hereby, I just want to suggest some cosmetic improvements to the MeGUI.
Pause feature while encoding using x264 works for me even though it takes some time to pause. However, MeGUI still shows the job is as "processing" in the Queqe tab after paused. Would it be better if MeGUI shows the status as "paused" here rather than "processing" after the pause?
On the other hand, the pause button "ll" should changed to ">" once it's clicked to pause the processes. Since the encoding processing takes quite a long time to response, so the change of button's status is telling the user to wait patiently for the precess to be paused.
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.