View Full Version : MeGUI - mencoder x264/snow/mpeg4/XviD GUI with AAC encoding and MP4 output
celtic_druid
1st March 2005, 21:27
Works ok here.
I'll attach the binary here for you to try.
stax76
2nd March 2005, 02:56
Err guess using this.outputFile.Text.LastIndexOf(".") + 1 would be better incase someone enters their own file extension which isn't 3 chars.
or use IO.Path.GetFileNameWithoutExtension or wrap the thing in a function, not common practice but I found it a lot easier
Public Shared Function GetLeftLast(ByVal value As String, ByVal start As String) As String
If Not Contains(value, start) Then
Return ""
End If
Return value.Substring(0, value.LastIndexOf(start))
End Function
Doom9
2nd March 2005, 09:03
Works ok here.Interesting.. I tested your build at work, and while it's okay on the input tab, I still get those selected texts in the dropdowns in the video tab. And when I define both video and audio profiles, selecting another video profile marks the text in the audio selection dropdown.
Teegedeck
3rd March 2005, 10:10
On my end MeGUI sometimes seems to forget some of the ':' in the produced commandline when I tick new options, so that I have to add them manually, like
"weight_b4x4mv" --> "weight_b:4x4mv"
Doom9
3rd March 2005, 10:19
@Teegedeck: yeah, that's "standard" behavior (as in a bug of mine). It's already fixed in my development build, but I'm afraid that build is not ready for public consumption yet. Right now only video encoding works, audio encoding partially works (it encodes just fine, but I really want to have the stats window updated as well.. hopefully I can get this all done today). Then the only thing remaning is MP4 muxing and some GUI bugfixing and the next release is ready. From that, it'll only be a short while until fully automatic encoding (select output size, input files and codec, and the rest is done automatically for you (for MP4 only of course.. if you want an AVI or something else, that's what GKnot is for)).
Teegedeck
3rd March 2005, 10:21
^_^
Splendid.
JoeBG
3rd March 2005, 12:36
@ doom
Good news :)
Doom9
3rd March 2005, 21:41
audio encoding is done and appears to be working just fine (unfortunately, because I currently have no means to get the lenght of the audio input file, estimated time of completion and percentage of completion is only available for the 2nd pass).
MP4 muxing also basically seems to work (I've tested video only), but sometime when a job finishes and I get the next StatusUpdate I get a weird Forms exception telling me some process has exited.. haven't found a working solution for that yet but below is the source for those who know how to compile.. and perhaps somebody will figure out where the error comes from (I'm done for today.. ) I hope to have something stable by the end of the week-end.
Thanks to Celtic-druid and stax for their input.
84 people downloaded the sources.. yet nobody figured out what switching from job to job tended to crash the entire program?
celtic_druid
4th March 2005, 03:15
Couple more problems and possible solutions.
1) Crashes if you completely clear a textbox.
2) Crashes if you enter non numbers.
Solution 1:
if (this.x264BitrateQuantizer.Text != "")
xs.BitrateQuantizer = Int32.Parse(x264BitrateQuantizer.Text);
Solution 2:
private bool nonNumberEntered = false;
private void lavcBitrateQuantizer_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
nonNumberEntered = false;
if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
{
if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
{
if(e.KeyCode != Keys.Back)
{
nonNumberEntered = true;
}
}
}
}
private void lavcBitrateQuantizer_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (nonNumberEntered == true)
{
e.Handled = true;
}
}
stax76
4th March 2005, 04:48
or use this :)
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (! char.IsDigit(e.KeyChar) && (int)Keys.Back != (int)e.KeyChar)
e.Handled = true;
}
or with regex:
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (! Regex.IsMatch(e.KeyChar.ToString(), @"\d") && (int)Keys.Back != (int)e.KeyChar)
e.Handled = true;
}
there are different techniques to provide additionally properties to the property grid of the form designer without subclassing like deriving from TypeConverter and override GetProperties or with a IExtenderProvider. For tasks like validating controls commonly IExtenderProvider is used. Here's a good article about it:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnadvnet/html/vbnet04082003.asp
nexx
4th March 2005, 06:51
In the latest version attached, the 'Trellis Quantization' checkbox doesnt actually work??? It has no affect on the mencoder arguments.
Anyway, cool program, I may use some of the code in my own MEncoder frontend. :cool:
celtic_druid
4th March 2005, 07:27
this.xvidTrellis.CheckedChanged +=new EventHandler(xvidTrellis_CheckedChanged);
is missing in form1.cs.
Doom9
4th March 2005, 08:33
@CD, stax: I'm aware of those issues.. I figured it wasn't a high priority. Especially the Int32.Parse thing.. if you enter a letter as a bitrate you kinda deserve a crash ;)
Have you tried running a bunch of jobs (switching between audio and video, perhaps with an MP4 to round things off)?
Doom9
4th March 2005, 23:11
so I'm wondering.. with 65 downloads (some compiled versions were downloaded less than that), did you encounter any problems when one job ended and the next one begun? Or does everything work as it should and it's just me stepping through the code that caused havoc with the Invokes in the main GUI class?
celtic_druid
4th March 2005, 23:56
Well out of 65 I'm sure some just downloaded it because they download everything. Some didn't know what it was and don't have a compiler, etc.
I ran some tests and the job queue dies on muxing. Video encoding, including auto2pass worked fine. All those logs popping up though is a bit annoying. I moved the log into a tab and I think it looks nicer.
New option b_pyramid for x264 by the way. Default value is 0.
New option: "B-frame pyramid" keeps the middle of 2+ consecutive B-frames as a reference, and reorders frame appropriately.
Doom9
5th March 2005, 00:22
I ran some tests and the job queue dies on muxing. Video encoding, including auto2pass worked fine. how many separate, non linkedjobs did you put in the queue and any audio jobs in the mix? And I don't suppose you debugged the muxer, did you? I'm kinda wondering.. since there's no really useful output except for some cryptic error message when the input doesn't match the expected format, perhaps it would be okay to just run mp4creator normally, and use the thread to check the filesize of the output, compare it with the expected output size and create a progressbar that way.
All those logs popping up though is a bit annoying. I moved the log into a tab and I think it looks nicer.that's a very good idea actually.
Sharktooth
5th March 2005, 00:29
Originally posted by celtic_druid
New option b_pyramid for x264 by the way. Default value is 0.
New option: "B-frame pyramid" keeps the middle of 2+ consecutive B-frames as a reference, and reorders frame appropriately.
Yeah... i wonder why this option is not available in vfw too.
btw im mirroring the latest mplayer/mencoder build.
Sirber
5th March 2005, 01:12
maybe code is there and will be activated next build.
Sharktooth
5th March 2005, 01:20
Yes, the code is in the core and available ONLY thru the CLI.
That's why mencoder has that option...
celtic_druid
5th March 2005, 02:56
I added the option if you guys want to check it out. Seems to encode ok.
x264vfw.revision151p.7z and X264VFWp.exe.
Doom9
5th March 2005, 19:20
New option b_pyramid for x264 by the way. Default value is 0.And what is the allowable range? I figure it has to be an int value since the default is 0.. if it were a bool, there'd be a b_pyramid and nob_pyramid, right? Also, I suppose that feature only makes sense when using > 1 b-frame?
Doom9
5th March 2005, 19:43
and finally, here's version 0.167
new: AAC audio encoding using BeSweet
new: completely new and more flexible MP4 muxer
new: checks all textfields for valid input (only numbers are allowed and empty fields will trigger the default mencoder value for the particular field in question)
new: loading of audio jobs from the queue
new: instead of popup windows ,the log now has its own tab
new: log for audio encoding and mp4 muxing
changed: changed the dropdown style for all but the profile dropdowns so you can no longer write in the dropdowns
changed: form size is now fixed and the maximize button is disabled
change: use windows default fonts
changed: all jobs will be added to the queue, regardless of wheter you start encoding right away or not.
fixed: weighted prediction works properly
fixed: mp4 muxing crashes (pretty much every mp4muxer call is wrapped in a try/catch.. before muxing could've caused errors when trying to set the priority and the process had already completed.. but it's still suggested you use at least a trailer worth of input to give everything time to properly initialize)
fixed: checking/unchecking xvid trellis changes the commandline
fixed: fixed crashes in queue /chained job mode
I'm afraid I can't remember if I have changed anything in the structure of a job so it might well be that you have to scrap your jobs directory and start anew. Profiles created with 0.1661 should be fine (profiles created with a previous version will not owkr).
And here are a few tips and tricks for this new version:
If you select an AAC/MP4 input in the audio input and start a regular video job (using the encode button in the input tab), the AAC/MP4 will be muxed into the output.
Similarly, you can define an audio encoding job, then create a video job, set the output mode to mp4 and make sure the output is named the same as the audio output.. that way the video will be muxed into the existing MP4 containing audio.
JoeBG
5th March 2005, 19:57
wow :) Nothing else to add
North2Polaris
5th March 2005, 20:00
@Doom9,
I have been able to download and run the previous versions, but this time, I get the following error:
Application has generated an exception that could not be handled.
Process id=0xd20 (3360), Thread id=0xd24 (3364)
North
Doom9
5th March 2005, 20:14
@North2Polaris: make sure you delete all profiles and jobs for starters. the only reason I can imagine for a crash upon startup is an error during loading of a job or profile
North2Polaris
5th March 2005, 20:38
Originally posted by Doom9
@North2Polaris: make sure you delete all profiles and jobs for starters. the only reason I can imagine for a crash upon startup is an error during loading of a job or profile
Thanks. I just needed to delete the jobs that were in the "Jobs" folder.
celtic_druid
5th March 2005, 21:40
Yep there is a nob_pyramid and in the VFW version I only allow it if bframes > 1 as I gather from the description that it is only good for 2 or more.
Doom9
5th March 2005, 21:43
@celtic_druid: alright, I'll add another checkbox in the x264 tab then.
JoeBG
6th March 2005, 09:55
Originally posted by nexx
In the latest version attached, the 'Trellis Quantization' checkbox doesnt actually work??? It has no affect on the mencoder arguments.
Anyway, cool program, I may use some of the code in my own MEncoder frontend. :cool:
screenshots?
scorpdt
6th March 2005, 12:56
Doom9 .... everything works well on my end. Awesome.
Knowing that you are still enhancing the software .... just to share observation which is useful to you.
1st pass of a 2 Pass encoding (selecting AVC and MP4 filetype) will create 2 entries in the Queue. The 2nd job in the queue (job1-2) with mux mode I think is not necessary as there is nothing to mux.
To overcome this I had to select RAW for the 1st Pass and change it to MP4 for the 2nd Pass.
Cheers!
Scorpio
Doom9
6th March 2005, 12:59
@nexx: you do realize since this is a GPL project that using code means your project will have to be GPL'ed as well..
1st pass of a 2 Pass encoding (selecting AVC and MP4 filetype) will create 2 entries in the Queue. The 2nd job in the queue (job1-2) with mux mode I think is not necessary as there is nothing to mux.Hmm.. it should obviously not do that but I'll look into it later today. You didn't by any chance have MP4 as output type for the 1st pass, did you? That might confuse the program into thinking it has to create a mux job.
To overcome this I had to select RAW for the 1st Pass and change it to MP4 for the 2nd Pass.Why not use automated 2 pass encoding? You could also just delete the mux job.. I suppose it could crash though so that's something I'll have to look at as well.. I couldn't say with certainty that if I have a chained job, and the next job is missing, that this wouldn't cause any problems. But you can definitely delete one job of a chained series.
scorpdt
6th March 2005, 14:40
Thanks Doom9,
Yes ... I should have mentioned Automated 2 Pass is working fine.
Cheers!
Scorpio
nexx
6th March 2005, 15:30
Originally posted by JoeBG
screenshots?
It's aimed at australian HDTV captures (25fps 1080i or 576p/i) to xvid/x264. Not an advanced program but something my little brother is capable of using :p
http://users.bigpond.net.au/nexx1/dvbmenc/dvbmenc1.png
http://users.bigpond.net.au/nexx1/dvbmenc/dvbmenc2.png
http://users.bigpond.net.au/nexx1/dvbmenc/dvbmenc_enc1.png
http://users.bigpond.net.au/nexx1/dvbmenc/dvbmenc_enc2.png
Doom9
6th March 2005, 17:28
1st pass of a 2 Pass encoding (selecting AVC and MP4 filetype) will create 2 entries in the Queue.I've been able to verify that this happens. But, it doesn't make much sense selecting an output type for the first pass.. obviously it'll have no effect whatsoever because only the stats file is generated during the 1st pass. I'll disable the output selection for first pass mode
Doom9
7th March 2005, 21:12
here is version 0.168
new: detailed progress indiciator during muxing
new: audio delay is automatically filled in based on the filename
new: pyramid order for b-frames in x264
improved: tested abort scenarios in the mp4 muxing process. they should all work now
improved: MP4 output is disallowed when Snow is selected
improved: filetype selection is disallowed in 2/3 pass first pass mode
Please not that mp4 muxing will seemingly get stuck at 100%. MP4creator first seems bulk write audio and video, then will go over the file again doing I don't know what. During that time (about 2 minutes for a 1 CD movie), it'll use 99% cpu and the GUI will stay at 100% but the progress window won't go away. Do NOT abort at that time.. it's normal behavior. Since mp4creator doesn't give any progress indication, I made up my own based on estimated filesizes.. and after the bulk write is done, that size target is reached and hence I show 100% completion (it could be 99% as well.. since we still don't have any empirical MP4 overhead data I made some assumptions: 10.4 bytes/frame for b-frames, and 4.3bytes/frame without b-frames). It is important that you get me all the overhead data for your full movie encodings.. with enough participation we can come up with a reliable overhead estimation and this'll help in the next version of MeGUI where I plan to have fully automated audio and video encoding with bitrate calculation.
v0.168 downloaded 64 times prior to removal
scorpdt
8th March 2005, 06:09
With 41 download .... and no one is reporting that the zip file contains 0.167 MeGUI or it is just me.
Doom9 appreciate if you could check your end.
Thanks,
Scorpio
Axed
8th March 2005, 07:44
scorpt - I believe you are right, just did a comparison and the 167 and 168 are exactly the same.
Doom9
8th March 2005, 08:51
crap. I thought I had compiled a release build before packaging.. but as it turns out I was mistaken. Sorry for that.. I'll upload the new version as soon as I get home.
thed33p
8th March 2005, 10:11
Firstly, thank you very much for this invaluable tool! It brings AVC/AAC MP4 creation to the realm of the clueless n00bs (the REAL n00bs - not the ones with 5630 posts ;) )
Originally posted by Doom9
It is important that you get me all the overhead data for your full movie encodings..
I made a full movie encode (117795 frames) but i didn't save the logfiles. How can I extract the info you'd like?
edit - typos
Doom9
8th March 2005, 15:40
I made a full movie encode (117795 frames) but i didn't save the logfiles. How can I extract the info you'd like?That depends on if you kept the sources. If you still have your .264 or .m4v file and know the size of the audio .aac or .mp4 you can still recover it.. if not, there's nothing you can do. In a future version I'll write all the interesting stats directly to a textfile so unless you voluntarily delete it, they are being kept.
BTW, the real 0.168 is now up.
North2Polaris
8th March 2005, 16:01
Originally posted by Doom9
BTW, the real 0.168 is now up.
Did you remember to attach the attachment?:)
Doom9
8th March 2005, 16:04
Did you remember to attach the attachment?Yes, it was there. But even my attachments have to be validated by someone first.
North2Polaris
8th March 2005, 16:19
Originally posted by Doom9
Yes, it was there. But even my attachments have to be validated by someone first.
Sorry for the impatience.:D
scorpdt
8th March 2005, 16:37
Thanks Doom9. My utmost appreciation.
Just completed a 30 sec clip with Pyramid, Adaptive, Weighted Prediction on ... and play out well with the patch libvacodec.
Doing a 7 mins video clip now ....
Cheers!
Scorpio
Bluedan
8th March 2005, 17:23
Patched libavcodec?
You mean for dealing with pyramid order b-frames when decoding in DS?
Where is it?
ffdshow hasn't been updated since 3-3-2005...
scorpdt
8th March 2005, 17:43
Yup .... it was posted by CD in this thread
http://forum.doom9.org/showthread.php?s=&threadid=80910&perpage=20&pagenumber=31
Cheers!
Scorpio
JoeBG
8th March 2005, 19:07
Originally posted by Doom9
.. with enough participation we can come up with a reliable overhead estimation and this'll help in the next version of MeGUI where I plan to have fully automated audio and video encoding with bitrate calculation.
I´m only using Me GUI for my encodes but sorry, I can´t help with this. I´m doing my own overhead calculation ( in Exel :) ) and I`m alway using raw output with MeGUI and then muxing with mp4muxer. From experiences, overhead is a constant depending to bitrate / second (for mathematics english is not my language). My caculation-tool looks like this:
www.joeb.movie2digital.de/mp4calculator.gif
Taurus
8th March 2005, 19:47
http://img30.exs.cx/img30/8686/error4lk.png
On my WinXP Machine I get the error message posted above.
Yes, most uptodate versions of everything. Tested the last three versions in the row, last MeGui 1.68.
Yes, Job folder not present.
On two Win98 Machines everything runs fine.:mad: :confused:
Cheers
Taurus
Edit: Sorry, just forgot that Net must be installed to make MeGui work properly.
If one of the mods wants to delete this post, feel comfortable.
Otherwise leave it as a warning sign :D ;)
Doom9
8th March 2005, 20:13
@Taurus: Hmm.. can you make sure you run MeGUI with a clean slate (no subdirectories whatsoever)? It's kinda hard to make sense of that error. I'm not sure, perhaps having the .NET SDK gives you a better error message that actually makes some kind of sense (I normally get a stacktrace when a .NET app crashes, but I only have crashes on development boxes where I obviously need to have the SDK).
I`m alway using raw output with MeGUI and then muxing with mp4muxer.Why not encode your audio with MeGUI and get a nice MP4 where you just have to add the subs? That would make things easier, would it not?
overhead is a constant depending to bitrate / secondUh, that doesn't make much sense.. overhead should be dependant on B-frames (used or not), the muxer used, but not much else. Bitrate most certainly should have no effect (in fact, the codec comparison confirms that.. same overhead for all 3 sources, using the two MP4 using codecs)
Sharktooth
8th March 2005, 20:14
Originally posted by scorpdt
Yup .... it was posted by CD in this thread
http://forum.doom9.org/showthread.php?s=&threadid=80910&perpage=20&pagenumber=31
Cheers!
Scorpio
It's in the x264 daily builds thread too. I've mirrored it on a faster server.
JoeBG
8th March 2005, 20:28
@ doom9
Don´t forget, that mp4muxer best use is, to mux something in an existing mp4 container (for me it is always an empty container with chapters). The existing mp4 is not a must for mp4muxer.
Overheads:
You´r right. :) But I never missed the target size. And sure, it is not that easy: You have to calculate:
- if aac is in mp4 or not: if it is in mp4 you have to add something for the missing container
- You have to multiply the constant to bitrate /second. But first you have to do a calculation for b-frames and so on.
But: It´s easier as you might think about it :)
Doom9
8th March 2005, 20:35
well, why don't you share your experience values?
Doom9
8th March 2005, 21:05
@Taurus: come to think of it, you mentioned the last 3 versions crash for you. 3 versions ago mean 0.1661. Can you confirm or deny that 0.166 worked for you? Because that's the first release after a major internal rebuild and it has completely incompatible profiles from previous versions (previous versions only had video profiles, then just called profiles). And I know that old profiles can make the program crash upon startup.
The structure of the jobs also has changed in every version since and I'm afraid it's going to change yet again in the next release, as I need more info in a job for completely automated audio/video encoding with bitrate calculation.
Taurus
8th March 2005, 22:33
Originally posted by Doom9
@Taurus: come to think of it, you mentioned the last 3 versions crash for you. 3 versions ago mean 0.1661
I don't want to confuse you, the mistake was clearly on my side.
When I monitored the crashes, I could clearly see the call for mscoree.dll, a .Net file.
I thought Net was installed on the XP machine, because on my older win98 machines I did that a long time ago.
Everything works now, after NET install on WinXp machine.
One more hog to feed :D
I mixed up my experiences from the win98 machines with the XP machine.
Cheers
Taurus
thed33p
8th March 2005, 23:28
@ Doom9
.264 file - 412,323,780 bytes
.mp4 AAC file - 61,560,212 bytes
muxed mp4 (no subtitles) - 475,756,689 bytes
do you need bitrat & settings as well?
LigH
9th March 2005, 00:05
Are there still "vanilla" builds available?
At celtic-druid's mirror (http://www.aziendeassociate.it/cd.asp?dir=/mplayer), I can only spot optimized builds; are some of them probably working on an old AMD Duron (MMX and ISSE only)? I'll try P3 and TBird, but wonder if there are other sources for Win32 builds (I hope I didn't miss them accidently in growing and growing threads here).
__
Just tried the P3 build (mplayer2005.03.05.P3.7z) - without success, but it doesn't seem to be related to the CPU features:
Command line:H:\Programme\MPlayer\mencoder "N:\Movies\Trailer\Mortal_Kombat_2\trMK2_25_dg.avs"
-ovc x264 -passlogfile "N:\Movies\Trailer\Mortal_Kombat_2\mencoder-2pass.log"
-x264encopts pass=2:bitrate=1000:frameref=5:bframes=3:b_adapt:subq=5:weight_b:4x4mv:qp_step=2
-o "N:\Movies\Trailer\Mortal_Kombat_2\trMK2_x264.mp4" -of rawvideo
Console output:MEncoder dev-CVS-050305-07:23-3.4.2 (C) 2000-2005 MPlayer Team
CPU: Advanced Micro Devices Duron Spitfire (Family: 6, Stepping: 1)
Detected cache-line size is 64 bytes
3DNow supported but disabled
3DNowExt supported but disabled
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 SSE
84 audio & 192 video codecs
File not found: 'frameno.avi'
Failed to open frameno.avi
success: format: 0 data: 0x0 - 0xdd
AVS file format detected.
Why does it expect a "frameno.avi"?
__
Now with TBird compile:MEncoder dev-CVS-050305-07:11-3.4.2 (C) 2000-2005 MPlayer Team
CPU: Advanced Micro Devices Duron Spitfire (Family: 6, Stepping: 1)
Detected cache-line size is 64 bytes
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx
84 audio & 192 video codecs
File not found: 'frameno.avi'
Failed to open frameno.avi
success: format: 0 data: 0x0 - 0xdd
AVS file format detected.
VIDEO: [YV12] 512x288 12bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:38 fourcc:0x32315659 size:512x288 fps:25.00 ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1 (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
VDec: vo config request - 512 x 288 (preferred csp: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
SwScaler: using unscaled Planar YV12 -> Planar YV12 special converter
x264 [info]: no need for a SAR
x264 [error]: Error: 2pass curve failed to converge
x264 [error]: target: 1000.00 kbit/s, got: 14.65 kbit/s, avg QP: 26.0709
x264 [error]: internal error
x264_encoder_open failed.
Selected video codec: [rawyv12] vfm:raw (RAW YV12)
==========================================================================
Writing AVI header...
Well - looks better, maybe the reason for the first stop indeed was CPU related.
And about the second one: It seems that copying the command line out of MeGUI and into a batch file, is not useful. I restarted MeGUI and added an automated 2-pass job to the Queue.
Now it is currently working - we'll see what happens when it's finished...
__
(Forgot mp4creator...)
:D Yes! Don't know exactly why, but it plays fine in MPC 6.4.8.3! :thanks:
Doom9
9th March 2005, 08:32
@thed33p: bitrate doesn't matter, but number of b-frames, whether they are adaptive or not and of course the number of frames would be useful to put your numbers in a context.
@ligh: nobody seems to know about that mysterious AVI file but that error always ocurrs and is nothing to be worried about. Your outdated computer worries me a lot more ;)
BTW: you do not have to specify a path for the stats file.. mencoder automatically places it into the source directory (or perhaps in the destination one? since those two always match for me I can't say for sure), and are you sure you're using the latest MeGUI? For MP4 output, the output filename in your case should be .264, MP4 should not be allowed anymore.
LigH
9th March 2005, 09:06
I'm working on it, and the more I try, the more I get used to it (although MeGUI is still a bit rough to use). Especially the Queue management: Going forth and back between the Input and the Video tab. Then a very important question: Is 3-pass useful, or even necessary?
Furthermore: A little trouble with the newest Nero AAC encoder (it produces full-featured MP4 files with additional scene data, which mp4creator cannot import, so as some kind of work-around, I let it create an AAC file instead). And finally: The final mux step locks and never finishes.
But those details might be discussed in another thread, I'd suggest.
(Of course, it creates raw .264 files before muxing. And I know now, that one command line isn't all, there is at least one comamnd line per job step.)
__
Which one is the latest - 0.168?
Doom9
9th March 2005, 09:14
Going forth and back between the Input and the Video tab. Hmm... you have to go back once, do you not? Configure input, configure video, go back to the input tab press Queue and be done with it. Or even better, configure I/O, select a video and audio profile and press Queue.. all from one tab. The idea for the profiles is that you do not have to visit all those other tabs - but only when you want to create a new profile (btw there I plan to make some improvements too as currently if you create a new profile, the one you had previously selected will also have the settings for your new profile.. a sideeffect from updating profiles when you switch between profiles)
The Queue button will be moved to the video tabs in the next version. However, I'll have automated encoding facilities in the input tab in the future (I'm not quite sure it's a good idea to waste the better part of a whole tabpage for something that hardly uses any space).
Is 3-pass useful, or even necessary? Not really. Hence no automated 3 pass. I'm not really sure any MeGUI user uses 3 pass, I've never heard a peep about it.
And finally: The final mux step locks and never finishes.Does it? Did you read the readme and warning parts about the 0.168 version? Considering that mp4creator just sits there eating CPU cycles and seemingly doing nothing (it obviously does something but you get nothing to gauge the progress) for at least 2 minutes on my 3.5 GHz box with an oviously better I/O throughput than your box, it could take some more minutes on your box but that's entirely mp4creator's fault.. it's normal that once you feel it should be done it takes another period of eternity before it really finishes. I know it's taxing on your nerves and makes you thinkg something is wrong, but I have absolutely no means of giving you any progress indication once video and audio have been copied together. Perhaps someone could ask the mpeg4ip guys to add some kind of progress indicator to the commandline.. that way I could tell you something in the progress window, like for the first pass in BeSweet encoding where I can at least show you how much of the audio has already been analyzed.
BTW, if mp4creator finishes after muxing everything together (the process no longer being listed in the task manager), and MeGUI doesn't close the status window, then you need to be concerned, but as long as the mp4creator process is still running, everything is fine. I was wondering what I was doing wrong for a long time before I finally ran mp4creator in a dosbox and realized that it did just the same as when launched from MeGUI.
And as far as I know, I'm using the latest Nero, yet I have no problems with the MP4 files I get.
dinolib2
9th March 2005, 10:08
Doom9, (I'm still dinolib but my old userid can't post and read anymore :( )
when I try to delete an "Automated 2 pass" with MP4 file type (codec isn't important) job - and choose "yes" - I get this run time error: "Specified argument was out of range of valid values. Parameter name: '-1' is not valid value for 'displayIndex'". MeGUI168
Sudgestion: why don't you enable multiple selection to delete jobs (or alternatively a button "clear jobs")?
MeGUI is going to become my preferred tool for encoding ;)
Do you think you'll release sources sometimes? (I'm playing with VS-2005B1... :) )
thanks, Dino
LigH
9th March 2005, 10:17
Originally posted by Doom9
Hmm... you have to go back once, do you not?
For "Automated 2-pass" - yes, once.
For manual 3-pass: 3 times.
About profiles: Currently, the list is empty; I really shall make some! ;)
Originally posted by Doom9
Did you read the readme and warning parts about the 0.168 version? ... but that's entirely mp4creator's fault.. it's normal that once you feel it should be done it takes another period of eternity before it really finishes.
:o Missed that one; good to know. But from my batch file (please release that attachment), it works well, and instantly.
Originally posted by Doom9
And as far as I know, I'm using the latest Nero, yet I have no problems with the MP4 files I get.
mp4info tells me about those files:
Track Type Info
1 audio MPEG-4 AAC LC, 80.138 secs, 53 kbps, 48000 Hz
2 od Object Descriptors
3 scene BIFS
Metadata Tool: Nero AAC Codec 2.9.9.999
And mp4creator 1.2.8 tells me:
N:\Movies\Trailer\Mortal_Kombat_2>h:mp4creator.exe -c trMK2.mp4 trMK2!.mp4
H:\Programme\MPlayer\mp4creator.exe: unknown file type
Last thing: Somehow I miss a way to configure the placements of the required tools, they shall not be required to be placed in the same directory (what a heap of mess...). Please, make them selectable one day.
__
P.S.: Confirm the bug from dinolib2 (saw it too): He probably tried to remove a stuck muxing job?
__
P.P.S.: This batch file was made for Windows 2000. On Windows XP, it is possible that you have to run the tools with "START /WAIT". I heard rumours, that the default behaviour changed from synchronous to asynchronous runs (XP doesn't wait anymore until a program finishes - but probably only if a GUI application was startet, CLI apps may behave as usual; I don't own XP, I can't test).
Doom9
9th March 2005, 10:49
Sudgestion: why don't you enable multiple selection to delete jobs (or alternatively a button "clear jobs")?Hmm.. I guess the clear button would be an idea. ListViews are really limited, they don't allow multiple selections per default and doing so is quite annoying (already the whole up/down thing required custom code... you'd think by now they'd have realized that we expect the same functionality for a listview than is already available in Windows explorer.. but no.. you're stuck with a basic W32 API wrapper).
Specified argument was out of range of valid values. Parameter name: '-1' is not valid value for 'displayIndex'". MeGUI168Hmm.. sound like you didn't properly select a job before pressing delete (you get the -1 for selectedIndex when nothing has been selected). I'll see if I'm not already catching that. Is it a chained job or a single one (if it's chained you'll be asked if you want to delete just that job, or all chained jobs or abort)?
Do you think you'll release sources sometimes? (I'm playing with VS-2005B1... )You, it's a GPL tool. I'd like to get automated encoding in and go over the comments once more before the next source release. BTW I cannot guarantee that everything will work in .NET2 since I've never tried it ;)
N:\Movies\Trailer\Mortal_Kombat_2>h:mp4creator.exe -c trMK2.mp4 trMK2!.mp4Is not valid.. your input has to be .aac, .m4v, .264 or one of the other supported types. In fact, audio muxing works as follows:
if (input.extension == aac)
mp4creator -c audio.aac videooutput.mp4
else if (input.extension == aac)
rename audio.mp4 videooutput.mp4
mp4creator -c video.264 -rate fps videooutput.mp4
So, I'll mux raw video into an existing MP4 file.. a new one is only created if there's no audio.
I noted that you're using different mp4creator commandlines.. I don't use -h, -interleave and -optimize. And if I use the same commandline in a dos prompt than I use in MeGUI, the waiting time is exactly the same. So it's kinda unfair to compare apples with pears ;)
LigH
9th March 2005, 11:06
Okay - *.mp4 audio already has the MP4 container, so it doesn't need to get one. Stupid me - have to think about it again...
And about "apples & pears": Well, from my experience, at the prompt and in a batch file, mp4creator doesn't get stuck while multiplexing. I wonder if it is related to the GUI grabbing the console output, because nothing else shall be different, IMHO. But how to debug that... :rolleyes: "Good luck", at least. :cool:
dinolib2
9th March 2005, 11:23
Chained jobs. I choose "yes" (I think the problem is with the muxing job, since it is still there before the error popup windows appear).
--
I've compiled latest relased sources and it seems to work fine on .NET 2 (just info).
About list-views, I don't know. With C++Builder I've used custom free component: very-very easy and flexible too. Does exists something like borland components in VS.NET? Or may be is because limited express edition...
Doom9
9th March 2005, 11:28
Well, from my experience, at the prompt and in a batch file, mp4creator doesn't get stuck while multiplexing.Your batch file is not equal to my mp4creator lines.. hence apples and pears. Try runnin g my mp4creator commandlines and you shall see the same behavior as in the GUI. I wouldn't have released the new muxer if I hadn't made sure of that. And please note that it's mp4creator using up all CPU cycles, and that stdout/stderr reading is blocking, meaning it doesn't do anything unless mp4creator actually writes data.. the only activity in the GUI while mp4creator is eating your CPU cycles is the 1 second refresh for the GUI. It's not the first time I'm launching CLI tools and I have only experienced 2 types of behavior:
1) app doesn't care if you don't read its output. For instance: mp4creator, besweet (well, besweet starts caring if you also read its stderr.. not reading it but having it piped can make besweet block.. but blocking means 0% cpu usage, which we do not see at all with mp4creator.. in fact we see just the opposite which means mp4creator is running unopposed.. if you see it sitting there without doing anything (no CPU usage.. then I'll start looking at the code again.. but as long as it's working, my code is just fine)
2) app blocks until you read its output, or release the pipes to its output. mencoder is like that and all the apps I'm running at work are like that.
And, mp4creator doesn't get stuck.. it adds the video track to the audio, then it goes over the file again.. what exactly it does I do not know, but I can assure you it is working because at the end of the operation, the process exits properly, and the mp4 file file is updated just before the process exits. And I've been debugging that for quite a while because I thought it was my fault.
But be my guest, take a nero mp4 and a raw AVC stream and use my commandline to see for yourself... And remember, apples = my commandline, pears = additional parameters like -interleave, -h and -optimize.
Doom9
9th March 2005, 11:30
@dinolib2: can you zip up your entire jobs directory and mail it to my feedback address? and tell me which job you tried to delete.
LigH
9th March 2005, 11:47
Those additional command line parameters were used in a different, independent call.
If I would try to optimize or hint a video track which is just about to be muxed, then Win2K tells me after a while, the space for the swap file is not big enough...
It seems logical to me, that only streams can be hinted which are already present in the file, and only MP4 files can be optimized which are not being changed meanwhile.
...
I'll have to run another job to get your command line again. But if I remember well, it shall not be much more than
mp4creator -c *.264 -rate 25 *.mp4
And these are the only parameters for muxing the video stream into the final movie. The hint and optimization job in my batch file does not start before the multiplexing was finished.
See you in ~ 20 minutes...
LigH
9th March 2005, 12:50
Sorry, took a bit longer:
Originally posted by Doom9
Your outdated computer worries me a lot more ;)
Yeah - it already got some critters, like "KMODE_EXCEPTION_NOT_HANDLED" or "PAGE FAULT IN NON-PAGED AREA". Some capacitors look suspicious...
Anyway: The only difference between our command lines I can spot is, that you use "-rate 25" even for muxing AAC into MP4. But for muxing the 264 raw file, it's exactly the same.
This time, an "Automatic 2-pass" job just went through, without waiting so long. Wonder why, trying again...
__
One more thing: (uh, I'm in a good mood today, I'm afraid...)
Muxing audio into MP4 completed. Muxing video now.
an exception ocurred when trying to read from stderr: StandardError wurde nicht umgeleitet.
MakeIsmaCompliant:can't make ISMA compliant when file contains an avc1 track
I know, it's just a "warning" about ISMA - but other people will be concerned about it. I wonder if there are command line parameters to even disable its try.
Doom9
9th March 2005, 13:04
I did some mp4creator testing. My results are here: http://forum.doom9.org/showthread.php?s=&postid=622231#post622231
As you can see, mp4creator always blocks for a long time so that definitely is standard behavior and not influenced by MeGUI. I'm also happy to see that the interleave and optimize parameter do not have any influence on the filesize. Don't worry about the exception.. I once disabled stderr redirection in an attempt to find out if it had anything to do with the long mp4creator delays.. turns out it didn't so I I renabled the reading thread but apparently forgot to redirect stderr.
I also get the isma thing (see link above). And.. you always get that as well, MeGUI or not ;)
It looks like all your mp4 problems are mp4creator issues after all :)
About list-views, I don't know. With C++Builder I've used custom free component: very-very easy and flexible too. Does exists something like borland components in VS.NET? I don't know if there's one.. for now I've tried to stick with standard components. I created my own listview at work (allows searching by typing), but that's about the only custom element I've ever used. I'm sure there's a listview that does more, but usually what you find online is either paying (and thus incompatible with the license of MeGUI) or does other things that I don't need.. and usually the IDE integration is missing.
dinolib2
9th March 2005, 17:29
OK Doom9, I find the little cut&paste bug for delete job error :)
In deleteJobButton_Click method, when you start to delete next jobs, you assign (for 3rd and next job) job.next to prev object. So you try to delete a job already deleted!
if (next.Next != null)
prev = (Job)jobs[next.Next];
^^^^
next
bye Dino
MaeWanto
9th March 2005, 19:06
I'm trying to use MeGUI v0.168 in order to encode an MP4 file with audio and video tracks muxed together, but I've some problems. Could someone please tell me what I'm doing wrong ?
Here is the process I'm using :
- Select the input AviSynth Script ( test.avs ) in Input tab.
- Select the Video Output file ( test_video ).
- Select the Codec ( XviD ).
- Select the File Type ( MP4 ).
- Choose video encoding parameters in Video tab.
- Select Audio Input ( test.mpa ) in Input tab.
- Select Audio Output ( test_audio ).
- Choose audio encoding parameters in Audio tab.
- Press Queue button in Audio tab.
- Press Queue button in Input tab. At the step, I've got a warning message :
"GUI options to not match commandline.
Are you sure you want to use your own commandline?
No error checking will be performed on custom commandlines."
I select "Yes" to continue ...
- When I press the Start button in Queue tab, the 2 first jobs ( AAC and XviD encoding ) indicate "done" very quickly, but don't produce any resulting file ( FPS indicates -1 for XviD encoding ... ).
Which process should I use to produce an audio/video MP4 file from an avs script and its corresponding audio file ?
Thanks for your help.
Doom9
9th March 2005, 20:53
@MaeWanto: add the audio job first, then the video job. I'm pretty sure the commandline warning you get stems from having the audio commandline in the commandline field .. so in fact you add a video job with an audio commandline and that can't work. You need to have a mencoder commandline in the commandline field when you press the Queue button in the main tab.
And here's a quicker way: use video and audio profiles. Select audio input/output, audio profile, go to audio tab, press queue. Select video input and output, select video profile (you need to create the appropriate 2 pass automated XviD profile first), press queue in the input tab. Then go to the queue tab and press start. And if you want video and audio muxed together, you need to use the same output name for video and audio (extensions left aside.. your video file will be named "videosomething.m4v", so your audio output has to be named "videosomething.mp4".
stax76
9th March 2005, 23:02
Hmm.. I guess the clear button would be an idea. ListViews are really limited, they don't allow multiple selections per default and doing so is quite annoying (already the whole up/down thing required custom code... you'd think by now they'd have realized that we expect the same functionality for a listview than is already available in Windows explorer.. but no.. you're stuck with a basic W32 API wrapper).
I got multiselect code, it can be ported to ListBox or other list controls without change and works with list controls that hold value types though that don't make sense since list control items usually have strings and value types shouldn't have strings or any other ref types. Dunno why it's not in the framework...
public class ListViewHelp {
// use to enable/disable up button
public static bool CanMoveUp(ListView lv) {
return lv.SelectedItems.Count > 0 && lv.SelectedIndices[0] > 0;
}
// dito
public static bool CanMoveDown(ListView lv) {
return lv.SelectedItems.Count > 0 && lv.SelectedIndices[lv.SelectedIndices.Count - 1] < lv.Items.Count - 1;
}
public static void MoveSelectionUp(ListView lv) {
if (CanMoveUp(lv)) {
int indexAbove = lv.SelectedIndices[0] - 1;
if (indexAbove == -1) { return; }
ListViewItem itemAbove = lv.Items[indexAbove];
lv.Items.RemoveAt(indexAbove);
int indexLastItem = lv.SelectedIndices[lv.SelectedIndices.Count - 1];
lv.Items.Insert(indexLastItem + 1, itemAbove);
}
}
public static void MoveSelectionDown(ListView lv) {
if (CanMoveDown(lv)) {
int indexBelow = lv.SelectedIndices[lv.SelectedIndices.Count - 1] + 1;
if (indexBelow == lv.Items.Count) { return; }
ListViewItem itemBelow = lv.Items[indexBelow];
lv.Items.RemoveAt(indexBelow);
int indexAbove = lv.SelectedIndices[0] - 1;
lv.Items.Insert(indexAbove + 1, itemBelow);
}
}
public static void RemoveSelection(ListView lv) {
if (lv.SelectedItems.Count > 0) {
int[] indices = new int[lv.SelectedIndices.Count];
lv.SelectedIndices.CopyTo(indices, 0);
for (int i = indices.Length - 1; i >= 0; i--)
lv.Items.RemoveAt(indices[i]);
}
}
}
how can I ask mencoder to run in low priority?
Niv
Doom9
9th March 2005, 23:24
Here is version 0.169:
new: fully automated audio and video encoding including bitrate calculations
new: you can delete all jobs at once
new: audio commandline has its own textbox in the audio tab. This also enables custom audio commandlines (keep in mind that each commandline must start with besweet, as each video commandline must start with mencoder).
changed: video only jobs are now started in the appropriate video tab
bugfix: selection of chained jobs
Keep in mind that in manual mode you can still get an MP4 with audio and video.. just make sure audio is configured and that if you are encoding audio, your audio output filename matches the video output filename minus extension. And if you just define an .aac/.mp4 audio input, that'll be muxed as well.
It's important that you keep those mp4 overhead values for now (don't close MeGUI without saving the overhead part of the log) as I don't write stats to an external file yet. Hopefully, with your help I can improve the overhead estimation and thus bitrate calculation to become highly accurate. The numbers I'm using now are based on Nero's commandline AVC encoder and muxer.
v0.169 downloaded 62 times before removal
Doom9
9th March 2005, 23:26
how can I ask mencoder to run in low priority?You can't.. I only offer idle and normal mode. What's wrong with idle? Imho it's the only useful mode anyway.. if you're not using the PC, the priority doesn't really matter anyway, and if you're using it, idle is the only one that really makes sense.
Doom9
9th March 2005, 23:40
btw, I'm wondering.. does anybody feel like messing with the internals a bit? The job generation could be made much nicer without having to change too many methods (and we'd no longer have the audio job added after the video jobs in fully automatic mode). Any takers?
The Link
10th March 2005, 02:02
Could it be that audio encoding in megui0.169 is broken? It doesn't start at all (also isn't added to the job queue) but an error message appears. When manually pasting the proposed commandline to the command prompt it works without any problem.
Doom9
10th March 2005, 09:14
but an error message appears.And what might that error message be? ;)
I haven't tested manual audio encoding, but I know it works at least in fully automatic mode as I've done 2 trial runs (one with a full movie, one with a trailer) on it.
thed33p
10th March 2005, 10:17
[QUOTE]Originally posted by Doom9
[B]@thed33p: bitrate doesn't matter, but number of b-frames, whether they are adaptive or not and of course the number of frames would be useful to put your numbers in a context.
Sorry this took so long...
#b frames - 5
adaptive - yes
#frames - 117795
thed33p
10th March 2005, 10:26
Here's the info of another encode:
MP4 muxing info:
Size of raw input file: 412276947 bytes
Size of final MP4 file: 677290582 bytes
Size of video in MP4 file: 413689174 bytes
Total overhead: 1412227 bytes
Overhead per frame: 11.9888535167027 bytes
source information
codec: AVC
number of b-frames: 3
Doom9
10th March 2005, 10:45
@dinolib2:does the new version fix the problem? I didn't have time to test.
@thed33p: thanks for the info
MaeWanto
10th March 2005, 11:04
Is hip.dll required in MeGUI directory ? I had to add it in order to encode audio, but it is not listed in the readme file ...
@Doom9: Thanks a lot for your help regarding audio/video MP4 files, it works great :-)
The Link
10th March 2005, 11:34
Originally posted by Doom9
And what might that error message be? ;)
I haven't tested manual audio encoding, but I know it works at least in fully automatic mode as I've done 2 trial runs (one with a full movie, one with a trailer) on it.
This error message (http://beingalink.de/temp/error.png)
Doom9
10th March 2005, 11:47
Is hip.dll required in MeGUI directory ? No, it works just fine without it on my PC.
Could it be that audio encoding in megui0.169 is broken?Interestingly it indeed is, and should be even in automated encoding (weird enough it worked for me.. perhaps that change was last minute before my tests). It's a real easy fix, change one false to true and all will be okay again. Though it's in an area that I plan to rewrite anyways. The flexibility of defining your own jobs is really making my life hard when addition automatation :/
dinolib2
10th March 2005, 11:48
@doom9: Yes it works fine! Thanks
--
changing size in "Automatic Encoding" if I left the field blank a run time error appears... little fix ;)
Doom9
10th March 2005, 12:12
changing size in "Automatic Encoding" if I left the field blank a run time error appears... little fiOf course, if you have no desires, what's the program to assume? I'll take 1 CD as default then.
Those are the kind of errors I think users should get for using a configuration that makes no sense ;)
dinolib2
10th March 2005, 12:21
you're right, but I assume to get an error exiting from the field, and not editing it (if I try to delete completely 1000 to type 2000 then I get an error)... what about N/D value in the meanwhile (but stil throw an error on exit)?
scorpdt
10th March 2005, 13:15
Doom9 .... below is the error message on my end.
Automatic Encoding i.e. Video/Audio (http://scorpio1.homeip.net:6970/images/Automatic.txt)
Manual Audio Encoding (http://scorpio1.homeip.net:6970/images/Audio.txt)
No job was created ... so cannot provide any.
BTW, in v0.168, I had problem encoding AC3 to 5.1 .... I believe after the gain check the status goes bonkers.
AC3 to Stereo is fine in v0.168
Thanks,
Scorpio
ajp
10th March 2005, 13:41
Originally posted by scorpdt
Doom9 .... below is the error message on my end.
Automatic Encoding i.e. Video/Audio (http://scorpio1.homeip.net:6970/images/Automatic.txt)
Manual Audio Encoding (http://scorpio1.homeip.net:6970/images/Audio.txt)
No job was created ... so cannot provide any.
BTW, in v0.168, I had problem encoding AC3 to 5.1 .... I believe after the gain check the status goes bonkers.
AC3 to Stereo is fine in v0.168
Thanks,
Scorpio
I get the same thing on the PC I'm currently on (P4/XP). Looks like it's when I use AC3 5.1 as a source, a ready made mp4 works fine I think. Haven't had time to investigate further...
Doom9
10th March 2005, 14:43
sorry guys.. all audio encoding is b0rked in 0.169. I'll release a fix tonight.
Doom9
10th March 2005, 23:14
Here is v0.170
new: you can delete multiple queued jobs at once
new: writes the mp4 stats to a textfile
changed: many internal changes and improvements
changed: having an empty target size field shows a warning and 700mb will be taken as default for the bitrate calculations.
bugfix: audio encoding is possible again
Give it a good test.. if no bugfix releases are necessary I'll prepare another source release.
LigH
11th March 2005, 00:00
About your BeSweet command line:
Stereo mode "-s normal" doesn't exist. You probably mean "-s stereo" instead. Furthermore, I wonder if "-d 2/0" for 2.0 and "-d 3/2" for 5.1 decoding could be useful.
Good that the command line is editable - because I prefer "boost( ... )" over "-c normal".
__
Running a manual 2.0-AC3 to HE-AAC audio + 3-pass AVC video + MP4 mux job with a 2000 frames trailer...
The Link
11th March 2005, 00:37
Audio encoding seems to work now but the resulting file is broken (no error message in megui). No player (tried dshow and fb2k) can play the file. Source was a 2ch ac3 file and I set stereo output in megui (I think the other audio settings are not relevant). After muxing video and audio with megui the mp4 was also broken (i think because of the audio file).
Converting the ac3 file with fb2k also using nero aac encoder the resulting file seems to be just fine.
Regards,
The Link
edit: When i feed the externally (fb2k) encoded audio file to megui everything works fine, i.e. muxing the encoded video file with the externally encoded audio file results in a video file which plays back flawlessly.
thed33p
11th March 2005, 00:39
@Doom9
The link in the opening line of your readme leads to Sharktooth's site which only has mplayer... What am I missing :confused:
Also, is there any chance of including the encoding of credits at a diffferent bitrate?
celtic_druid
11th March 2005, 00:50
mencoder comes with mplayer.
By the way,
x264 revision 161:
AVI & Avisynth input (win32 only).
patch by bobo from Ateme.
LigH
11th March 2005, 01:15
I know why a separate audio conversion doesn't work. I tried a manual 3-pass job, as mentioned above:
(1) Set up audio conversion (Input=*.ac3, Output=*.mp4), added to queue
(2) Set up 1st pass video (Input=*.avs, Logfile=*.log), added to queue
(3) Set up 2nd pass video (Input=*.avs, Logfile=*.log, Output=*.264, mode=RAW), added to queue
(4) Set up 3rd pass video (Input=*.avs, Logfile=*.log, Output=*.264, mode=MP4), added to queue
job1: *.ac3 => *.mp4 (with AAC inside) with BeSweet - works fine.
job2: *.avs => NUL: (1st pass) - works fine.
job3: *.avs => *.264 (2nd pass) - works fine, but wouldn't require raw output yet.
job4-1: *.avs => *.264 (3rd pass) - works fine.
job4-2: *.264 => *.mp4 (mux) - here comes the problem:
When I set up the 3rd pass (4), the audio input is still set to *.ac3; MeGUI detects that the output name does not match, and renames the *.ac3 file to *.mp4. Then it tries to multiplex the *.264 video into an AC-3 file with the extension *.mp4!
Obviously, job4 doesn't know that I already transcoded the audio in job1. But it doesn't care if the expected audio output file already exists: Instead of blindly transcoding the audio again (because the extension of the "Audio input" doesn't match), which would be acceptable at least, it renames the audio input file although the extension is different - and so the audio source file is lost! I have to demultiplex the AC3 file out of the DVD again.
I attached the MeGUI log to this answer.
thed33p
11th March 2005, 01:15
DOH! Thanx C_D
Doom9
11th March 2005, 01:26
Audio encoding seems to work now but the resulting file is brokenthings work here.. getting some weird splitter messages but that is unrelated to my program.. I get the same when creating mp4 output in BeLight/BeSweet GUI. I also tested raw AAC output from Nero and then mux it into mp4, and that seems to work just fine. I guess it's one of the additional tracks Nero adds to the MP4.
You probably mean "-s stereo" instead. Yup. Strange that it still works though..
I wonder if "-d 2/0" for 2.0 and "-d 3/2" for 5.1 decoding could be useful.No idea.. that's really a matter of discussion for the audio forum imho.. I just stuck to what's being used in BeSweetGUI and BeLight.. audio really isn't my thing.
Also, is there any chance of including the encoding of credits at a diffferent bitrate?slim to none I'd say. Most people can't select the start position unless they see the video, and then it gets a whole different ballgame (displaying video isn't as trivial as spitting out a commandline). And obviously, it would only work for MP4 output.. you can append raw with copy/b if I'm not mistaken.. but there ain't no such thing for AVI (for AVI we have GKnot after all).
Obviously, job4 doesn't know that I already transcoded the audio in job1. But it doesn't care if the expected audio output file already exists: Instead of blindly transcoding the audio again (because the extension of the "Audio input" doesn't match), which would be acceptable at least, it renames the audio input file although the extension is different - and so the audio source file is lost! I have to demultiplex the AC3 file out of the DVD again.I think I did mention that if you want your audio muxed, make sure you specify the .aac/.mp4 as audio source before starting video jobs.. The main reason it even looks at the audio is so that I could run a few muxing tests. I guess I'll remove the input file check so that audio will only be muxed if the .mp4 filename matches the desired video output name.
And 3pass is kinda useless
thed33p
11th March 2005, 01:34
Changing settings under the Audio tab only changes Projected Video Bitrate when Audio is CBR
Neither does changing selection of 5.1 vs stereo...
LigH
11th March 2005, 01:35
Originally posted by Doom9
I think I did mention that if you want your audio muxed, make sure you specify the .aac/.mp4 as audio source before starting video jobs.
So the audio job has to be finished, and the queue shall be cleared, before video jobs are added and can use the prepared audio file. Audio and video conversion in one queue is currently not possible. Well, then... I'll rather prepare the audio with BeSweet for more flexibility there. Adding a whole GUI for BeSweet into MeGUI is not your business, definitely! ;)
I did 3-pass just to check how much the stats differ between 2nd and 3rd pass; really not much, it appears to me that the 2nd-pass is already doing very well.
"-s stereo" is the default setting for 2.0 input; what else shall it do?
__
P.S.:
Originally posted by Doom9
I guess I'll remove the input file check so that audio will only be muxed if the .mp4 filename matches the desired video output name.
Well - could that be useful?
switch(audio_input_extension)
{
case ".mp4":
{
if(movie_filename != audio_input_filename) copy_audio_input_to_movie(); /* copy, not move */
mux_video_to_movie();
break;
}
case ".aac":
{
mux_aac_to_movie();
mux_video_to_movie();
break;
}
default:
{
if(file_exists(audio_output_filename)) switch(audio_output_extension)
{
case ".mp4":
{
if(movie_filename != audio_output_filename) copy_audio_output_to_movie(); /* copy, not move */
mux_video_to_movie();
break;
}
}
/* else insert_audio_job(); ?? */
}
}
IgorC
11th March 2005, 02:11
is last version of mplayer http://www.aziendeassociate.it/./cd//mplayer/mplayer2005.03.05.P4.7z trying x264 rev161?
celtic_druid
11th March 2005, 02:12
Could use something like: cat main.avi credits.avi | mencoder -noidx -ovc copy -oac copy -o movie.avi -
celtic_druid
11th March 2005, 02:17
r161 was added two hours ago, so no. Also r161 doesn't even effect the lib so it doesn't effect mencoder.
Sharktooth
11th March 2005, 02:25
Originally posted by IgorC
is last version of mplayer http://www.aziendeassociate.it/./cd//mplayer/mplayer2005.03.05.P4.7z trying x264 rev161?
No latest version is http://www.aziendeassociate.it/cd//mplayer/mplayer2005.03.05-2.P4.7z (pentium4 compile)
North2Polaris
11th March 2005, 04:27
@Doom9,
Opening and converting a WAV file does not appear to be one of the audio options. Or am I missing something?
For those who work with video captures or DV, this would be a useful.
Thanks.
North
LigH
11th March 2005, 08:22
@ North2Polaris:
Currently it's safer to prepare AAC audio (e.g. with BeSweetGUI or BeLight for BeSweet), and select the prepared MP4 file with AAC audio inside as audio input.
__
@ all:
Before I get lost in wondering about the mp4creator options, I'd better read all the documentation I can get about it. The best point to start might be everwicked's MPEG4IP guide so far:
HTML (online) (http://www.everwicked.com/content/MPEG4IP_Guide/)
PDF (offline) (http://mpeg4ip.sourceforge.net/documentation/MPEG4IP_Guide.pdf)
Especially, I do not only want to know, which command line options exist at all, but also what they mean, how they work, when and why I shall use or omit one...
If someone knows more comprehensive yet understandable docs (means: not necessarily the MPEG-4 specs...), don't hesitate to tell me.
Doom9
11th March 2005, 09:08
Changing settings under the Audio tab only changes Projected Video Bitrate when Audio is CBRCorrect.. since the VBR presets allow for such a large range of possible bitrates I rather have no prediction than a prediction that makes people think they'll get a 50kbit/s higher or lower bitrate in the end.
Neither does changing selection of 5.1 vs stereo...Why should it? I mean, it's the bitrate that matters, not the number of channels.. you always specify the total bitrate, not bitrate per channel.
@North2Polaris: It isn't at the moment, but if it's anything like the already supported mp2 or mp3 input commandline wise, it wouldn't be hard to be added.
So the audio job has to be finished, and the queue shall be cleared, before video jobs are added and can use the prepared audio file. Audio and video conversion in one queue is currently not possible. You are grossly mistaken here. You are just misusing one of the hidden muxing features in MeGUI. There are two of those:
1) by mp4creator design: if the desired mp4 output file already exists, mp4creator adds a track to it. That makes it possible to have an .mp4 audio with the same name as the desired .mp4 video output in the same directory, and video will be added to audio.
2) It is also possible to use a differently named audio .mp4 or even .aac file. If you add a video job, MeGUI checks the audio input line and assumes it's the audio input for later muxing. So, if you do not want to use that feature, make sure the audio input line is empty when adding any video job. And if you want to use it, only .aac and .mp4 files are supported.. anything else and you get your audio muxed into an mp4 (don't know if it really works) and thus you lose it. So bottom line: when creating a video job, make sure you only have something in the audio input line when you want to have it muxed into the final .mp4. Otherwise, leave it empty.
Looking at audio input and output when adding video doesn't really make sense, because if the audio output does not exist yet, and since jobs are supposed to be completely independent by design, the muxer could then theoretically look at a non existing file by the time it is supposed to start, and would then crash. Since it's not really proper design to look at the audio when working with just video, I'll remove those two lines so that you'll be left with hidden feature 1 and I'll change the audio move to a copy so the source file will always be preserved unless it has the same name as the desired .mp4 video output.
Also, is there any chance of including the encoding of credits at a diffferent bitrate?I've been thinking about that and came to the conclusion that it's already possible. Add your audio job, then delete the audio input line, add your credits video job (I presume fixed quant) and make sure output type is set to raw, then add your movie-without-credits job with output type set to mp4. Then start the jobs in the queue, and double click on the mux job to get it to postponed state.
Once all encoding is done, go to a command prompt, type "copy /b credits.264 movie.264 final-movie.264", then "rename final-movie.264 movie.264". Then go back to MeGUI, doubleclick on the mux job again to set it back to waiting state, and press start.
Could use something like: cat main.avi credits.avi | mencoder -noidx -ovc copy -oac copy -o movie.avi -there are two cats in my house, but none on a Windows PC ;)
LigH
11th March 2005, 10:29
Originally posted by Doom9
when creating a video job, make sure you only have something in the audio input line when you want to have it muxed into the final .mp4. Otherwise, leave it empty.
My (little, but at least existent) problem here is: Causality.
Before the audio job isn't finished, I cannot select the audio output file (using the "Open file" dialog) as input for the muxing job; I would have to type its expected filename (or copy&paste from audio output to audio input) if I wanted to run the audio, video, and mux job in the same queue. ;)
Therefore I recommended two distinct jobs - for those who are too young to remember how a command line interpreter works. :rolleyes: :D -- Sorry for that lame joke, please don't get mad about it.
__
About mp4creator docs -- from the man pages in the mpeg4ip tools sources (and some tests) I found out the following facts:
Hinting tracks is {useful to necessary} if you want to stream the final MP4 file via HTTP. It is probably not too important for local playback.
Video and audio tracks can be hinted.
According to the man, it shall be possible to hint a track while adding it; then one can omit the track number. According to my tests, this does not work for AVC tracks (currently?), these must be hinted separately after muxing them has finished.
Audio tracks may have "interleaved RTP payload format" (only valid for AAC audio tracks). I could not yet find out what it means in detail, and if (and when) it is useful.
Optimizing the file is useful for both HTTP streaming and local playback.
mp4creator man page
...
When adding tracks, mp4creator does not attempt to optimize the file layout for streaming and playback. This can be done once all the desired tracks have been added with the "-optimize" option.
...
-O, -optimize
Optimize the layout of the mp4 file to interleave the data in time, hence reducing disk seeks during streaming or playback. This also arranges the mp4 file so that the media control information is at the beginning of the file. This allows HTTP streaming of the mp4 file.
Therefore, I would strongly recommend a final optimization job.
Doom9
11th March 2005, 10:54
Before the audio job isn't finished, I cannot select the audio output file (using the "Open file" dialog) as input for the muxing job; I would have to type its expected filename (or copy&paste from audio output to audio input) if I wanted to run the audio, video, and mux job in the same queue. That's correct. But it can be useful if you know how to use it, can it not? Either way it'll be gone soon with your only audio muxing options being fully automated encoding and naming the audio output the same as the final mp4. But keep in mind that flexibility means more ways to screw up.. you cannot have the full power of configuring every job down to the last detail and then still expect full automatation.. that's where the auto mode comes in.
And manually configuring muxing jobs from the GUI doesn't make much sense as since you already pointed out, you don't have the input files until after audio and video encoding. So the ability to mux audio in a video job is really a bonus for advanced users, not a standard feature, since audio and video jobs have nothing to do with each other unless created in the auto mode. The only way a video or mux job know about preceding audio jobs is in auto mode, and I can only imagine the mess that would create if you could chain jobs manually (well, you can.. just edit the xml files).
I couldn't care less about streaming so I'd jump out the window before hinting any of my MP4 files (it incurrs additional overhead which is not something you want when streaming.. plus, for streaming, the ideal bitrate distribution is none, meaning a flat bitrate, and thinking about that already gives me a headache). Likewise, RTP means streaming, so interleaving is out as well. And as far as the optimize goes, it can be done while muxing (in fact, what optimize does is the usual processing, then at the end a completely new mp4 is being written).. question is if it is really worth the additional muxing time (where once again you'd have no progress indicator.. it'll always be at 100%). Of course you don't notice that in your 2000 frame tests, but it's an additional 30 seconds on my setup, or 33% longer for the entire muxing step.
LigH
11th March 2005, 11:06
Originally posted by Doom9
But keep in mind that flexibility means more ways to screw up
Word!
Originally posted by Doom9
I'd jump out the window before hinting any of my MP4 files
Don't! What is the phone number of "Domian"?! :D -- Better don't care about hinting.
Originally posted by Doom9
And as far as the optimize goes, it can be done while muxing
I noticed that, too. Probably the man page is a bit outdated here...
Originally posted by Doom9
question is if it is really worth the additional muxing time
Don't you prefer smooth playback, especially from optical drives? Would you enjoy the head jump forth and back in your CD-ROM drive? And finally: The file got a little bit smaller, too!
Doom9
11th March 2005, 11:23
And finally: The file got a little bit smaller, too!In my tests it didn't: http://forum.doom9.org/showthread.php?s=&threadid=91126
North2Polaris
11th March 2005, 13:34
Originally posted by LigH
@ North2Polaris:
Currently it's safer to prepare AAC audio (e.g. with BeSweetGUI or BeLight for BeSweet), and select the prepared MP4 file with AAC audio inside as audio input.
@LigH,
Although not freeware, I have been using the full version of Apple QuickTime to create an audio mp4 file.
Still, as long as there is a "to do" list, it would be nice to do this in one step, not two.
North
Doom9
11th March 2005, 13:41
Still, as long as there is a "to do" list, it would be nice to do this in one step, not two.What do you mean one step instead of two?
The Link
11th March 2005, 15:14
Originally posted by Doom9
What do you mean one step instead of two?
I think he means that if the audio encoding process of megui doesn't produce an usable mp4 audio file, one has to use an external audio compression frontend (so one additional step). :)
Doom9
11th March 2005, 15:33
I think he means that if the audio encoding process of megui doesn't produce an usable mp4 audio fileThat is BS. As I explained above, you get that when you misconfigure the application by enabling a hidden audio muxing feature with incompatible input. if you rename an .ac3 to .mp4 and then mux video into it, you'll get the very same thing.
The Link
11th March 2005, 15:43
Well...perhaps I'm just plain stupid but when I just use megui to encode the ac3 file I mentioned above into an aac mp4 file (no video, no audio+video muxing) I get an invalid mp4 file. If this a case of misconfiguring you described, I'm sorry and I will shut up now. I just thought that it is a bug.
Foobar200 pops up this error message: ERROR (foo_input_std) : MP4: unable to find correct sound track in the MP4 file.
Converting the same ac3 file with foobar200 as frontend for the nero encoder and using the same settings for the nero encoder as in megui produces a valid file.
Perhaps I'm just confused and don't understand what you are saying.
Regards,
The Link
Doom9
11th March 2005, 16:17
Well...perhaps I'm just plain stupid but when I just use megui to encode the ac3 file I mentioned above into an aac mp4 file (no video, no audio+video muxing) I get an invalid mp4 file. If this a case of misconfiguring you described, I'm sorry and I will shut up now. I just thought that it is a bug.As I said it works for me so the bug angle is kinda insulting. And since both the MeGUI log as well as the textfield in the audio tab show you the besweet commandline, you can verify for your own what happens if you launch besweet like that. And if the commandline isn't broken.. then it's your setup. Just to make sure I encoded my first 2.0 track this morning at 1am just to be on the safe side when I tell you it's not my fault, but having done that and verified that the track is playable I'm confident to say that my audio encoding works. The only flaw is the incorrect downmix parameter as ligh pointed out, but that does not seem to have an influence on the outcome (but it'll obviously be fixed anyway).
check the contents of the mp4 files using mp4info (or someting like that) from the mpeg4ip package and compare what tracks you get..
The Link
11th March 2005, 16:39
I won't report on this issue again because it must be a problem on my side if it works on your computer. Mkvmerge can read the resulting mp4 file and says that it contains MPEG-1 layer 3. I don't know how this happens because as I already said with foobar2000 everything works as it should. Probably I have a problem with besweet. I simply won't use the internal audio encoding and feed megui with an externally encoded aac mp4 file. That's not a big deal.
Regards,
The Link
Doom9
11th March 2005, 20:45
here is v0.1701
new: pcm(wav) input support
new: officialized hidden "audio muxing for video jobs with mp4 output" feature. If MeGUI detects that you have a valid audio configuration, you'll be asked if you want to mux that audio file into the final MP4
changed: stripped down besweet commandline for non AC3 input
changed: updated readme to mention that hip.dll is neede for mp2/mp3/mpa audio input
changed: if the audio .mp4 file doesn't have the proper name for video muxing, a copy will be made having the proper name, rather than renaming. This will increase muxing time for a few seconds - but no matter how you screw up the settings you'll always keep your audio input
fixed: stereo downmix mode in BeSweet
fixed: xvid assumes 24byte/frame overhead for the avi container. Took care of that in the bitrate calculation
v0.1701 downloaded 12 times prior to removal
North2Polaris
11th March 2005, 21:06
Originally posted by Doom9
What do you mean one step instead of two?
@doom9 and The Link,
Sorry I was not able to respond sooner (that's the problem with posting before going off to work). I suspect that the process that I am following is the fault.
I have been testing megui with AviSynth scripts that use video captured in an AVI file (most recent version of huffy and audio in PCM).
Right now, I open the script in vdubmod and save the wav file. I normalize it and then convert that file to an audio mp4 file using QuickTime. I could use Besweet, but since I have QuickTime it is simpler.
I then load the AviSynth script in megui and the audio MP4 file into the audio input.
Given the format that I am working with, have I made this more complicated than it needs to be?
It seemed reasonable to be able to open the normalized WAV file in the audio input of megui and have it converted using Besweet and the other dlls that I copied into the megui folder.
Thanks.
North
Doom9
11th March 2005, 21:13
@North2Polaris: With the new release, you can open your wav file in MeGUI, and configure audio encoding in it, so there's no need for a 2nd program anymore. I don't have any wav files around to test, but if you copy all the DLLs, things should work just fine.
Doom9
11th March 2005, 21:14
here is version 0.1702
changed: audio muxing no longer specifies the video framerate
changed: video muxing now uses the -optimize parameter, so you'll get an optimized mp4 in the end.
bugfix: crash during fully automated encoding fixed (introduced in 0.1701)
@LigH: hope you are happy with this release.. I changed the hidden audio muxing feature and the mp4creator commandlines especially for you...
North2Polaris
11th March 2005, 23:05
Originally posted by Doom9
@North2Polaris: With the new release, you can open your wav file in MeGUI, and configure audio encoding in it, so there's no need for a 2nd program anymore. I don't have any wav files around to test, but if you copy all the DLLs, things should work just fine.
@doom9,
Thanks. PCM WAV option works perfectly.
Based on the posts above, I realized that some of the folks who are testing MeGUI probably have not seen a PCM WAV file in a while.:)
North
The Link
11th March 2005, 23:11
@Doom9: Just wanted to tell you that I sorted out my besweet problems. It wasn't your software's fault, sorry for bugging you. Everything's fine now and megui is the best frontend I know to all these newer codecs I always wanted to try but felt uncomfortable with the usage. :)
Regards,
The Link
Doom9
12th March 2005, 14:42
Just wanted to tell you that I sorted out my besweet problems.If you could share what the cause and solution was, perhaps somebody else who might run into the same problem in the future could be helped ;)
Taurus
12th March 2005, 15:26
Originally posted by Doom9
If you could share what the cause and solution was, perhaps somebody else who might run into the same problem in the future could be helped ;)
That's what this forum is for, right?:D
Sergejack
12th March 2005, 15:42
Coudl someone please make the links to Latest gui + the Latest mencoder be in the first post ?
There are attachements everywhere; I want to try mencoder but I won't read everypost to know every attachements file's role on this huge thread XD
scorpdt
12th March 2005, 15:58
Doom9 .... Thanks for v0.170 .... works fine for me for most of what I wanted to do.
Appreciate if you could help me with this particular problem and this happens with this particular AC3 file (http://www.logisticshub.com/uploads/misc/AC3-Audio.rar) so far I have worked on.
Encoding the file using MeGUI with the following settings
AC3 to AAC (MP4) 5.1 Output, VBR, LC, High with Delay
does not produce the desired file. It stall at shown in the display below.
http://scorpio1.homeip.net:6970/images/AC3Problem.jpg
However should I copy the besweet command line and paste it on Dos Command prompt and run it ... it creates the aac (mp4 wrapped) audio file.
Below are relevant log files and job1.xml for your reference to the above problem reported.
MeGUI Job XML (http://scorpio1.homeip.net:6970/images/job1.xml)
MEGUI Besweet Log (http://scorpio1.homeip.net:6970/images/MeGUI_besweet.log)
Command Line BeSweet Log (http://scorpio1.homeip.net:6970/images/CommandLine_besweet.log)
FYI, encoding the said file to Stereo using MeGUI is working fine.
Thanks in advance.
Cheers!
Scorpio
Doom9
12th March 2005, 16:52
@scorpdt: I'll be out of the house in 5 minutes, but this sure does look like a problem in besweet.. if you look at the two besweet logs.. they contain negative timecodes.. and that screws up the progress indicator in the gui.. apparently makes it crash as my commandline reader cannot handle negative numbers (negative timecodes don't make any sense after all). Is your delay value accurate? it is huge.. I think it could cause the negative numbers in besweet.. could you try again without delay correction activated and see if megui works for you then?
@Sergejack: I'll do that when I get back tomorrow.
scorpdt
12th March 2005, 17:09
@Doom9 ... without the delay switch ... MeGUI complete the encoding without error.
To your question about the delay .... it is the proper value as extracted from DGIndex V1.2.1 ... muxing Video/Audio produce a proper sync movie.
Below are other logs file which MeGUI successfully process without error. If you notice the timecodes are also in negative range.
http://scorpio1.homeip.net:6970/images/SWDS_besweet.log
http://scorpio1.homeip.net:6970/images/VZDS_besweet.log
Thanks.
Scorpio
Edited: I retract the agreed statement earlier.
The Link
13th March 2005, 00:17
Originally posted by Doom9
If you could share what the cause and solution was, perhaps somebody else who might run into the same problem in the future could be helped ;)
I mixed newer dlls for besweet with an older version of besweet (stable version). Instead of an error message besweet just used the lame_enc.dll for encoding (so it seems to me at least). Using the latest beta of besweet solved my problems.
Regards,
The Link
Doom9
13th March 2005, 14:21
@scorpdt: thanks for making the AC3 available..
I've been experimenting with BeSweet and I believe it contains a bug in 6ch output mode when delay correction is used: http://forum.doom9.org/showthread.php?s=&threadid=91404
Doom9
13th March 2005, 15:42
here is v0.1704
changed: simplified customer commandline options in the encoder (checks are no longer made twice)
bugfix: delays will not yield an incorrect audio length anymore
workaround: due to besweet's way of handling delays with multiple negative values, I have to catch those values and turn them into something sensible: negative timecodes are now interpreted as 00:00:00:000. this means that the progress indicator will stay at 0% a bit longer
@scorpdt:I tested with your AC3 usin 2ch and 6ch ouput both using positive and negative delays. Let me know if you still run into problems.
Sergejack
13th March 2005, 16:04
Originally posted by Doom9
@Sergejack: I'll do that when I get back tomorrow.
So you did ^^
Thx :)
scorpdt
13th March 2005, 16:33
Thanks Doom9.
Tested and it works with the latest release v0.1704.
FYI, I need to place hip.dll in MeGUI folder along with other BeSweet stuff (that u mentioned in the readme) to encode mp3 to aac, otherwise it would failed. Stumbled upon this when I was testing out converting AVI(XviD with MP3) to MP4(X264 with ACC). So you may need to verify that and update your readme.txt, as MeGUI does provides MP3 audio selection for conversion.
Thanks once again.
Cheers!
Scorpio.
Doom9
13th March 2005, 16:47
FYI, I need to place hip.dll in MeGUI folder alongActually, I updated the readme to reflect upon that when I added PCM support ;)
scorpdt
13th March 2005, 17:19
Yeah .... should have read the latest readme. ;)
Cheers!
Scorpio
scorpdt
14th March 2005, 13:47
Doom9 ...
I am currently encoding a 3 hour movie using MeGUI in Automatic Mode to a 1CD size. Now it is in its final stage encoding (i.e. 2nd Pass) and thus far the .264 output file it creates exceed 1CD size (818MB to be exact) .... and my quick question is ...
Does MeGui recompute the Projected Video Bitrate based on the Target Size minus the encoded audio size for the 2nd Pass mencoder bitrate setting?
Cheers!
Scorpio
Doom9
14th March 2005, 14:52
Does MeGui recompute the Projected Video Bitrate based on the Target Size minus the encoded audio size for the 2nd Pass mencoder bitrate setting?
If your input is .aac or .mp4, the bitrate you get for mencoder is the bitrate you see in the GUI. In case you're encoding audio, the bitrate is recalculated after audio encoding using the following formula:
bitrate = (target size - audio size - (number of frames * overhead set in the gui)) / length_in_seconds (I left out the whole bits/bytes/kbit stuff in this formula but it's in the code obviously)
Once encoding is done and you close the app, the xml job file will tell you which bitrate was chosen, and which number of frames and fps value was extracted from the video source.. all the relevant parameters for the bitrate calculation. So, if for some reason the calculations are off, you can get me the job files and audio size and I can re-check the calculations (I have only tested it with trailers).
also, you can compare that value to the actual video bitrate (mencoder will tell you after encoding).
scorpdt
14th March 2005, 17:19
Thanks Doom9,
The encoding has completed and it creates a 1,179,739,567 bytes awesome playable x264 encoded with acc audio .... but it is off target by a large margin.
As requested, the job.xml and the log file (http://scorpio1.homeip.net:6970/images/VZ_Doom9.rar) for your perusal. And the audio filesize from the 1st queue is 207,674,292 bytes.
From the XML file it does recalculate the new bitrate value <BitrateQuantizer> but I think this value is not passed on to mencoder bitrate setting. Perhaps you may want to verify this.
Cheers!
Scorpio
thed33p
14th March 2005, 18:28
Originally posted by scorpdt
but it is off target by a large margin.
I did 2 full movie encodes with rev 0.1702 (aac encodes aswell - CBR 128) and also found that the resulting files were way oversize (827 and 927 MB respectively!)
I never mentioned it 'cause I was sure it was something I did wrong :D
I'll post the logs as soon as my kids will "allow" me to use pc again (reads: are sleeping :rolleyes: )
Are you still interested in overhead logs, Doom9?
Doom9
14th March 2005, 20:12
@thed33p: absolutely, I'm always interested in mp4 overhead values. Preferably send me the txt file after encoding a bunch of full movies.
@scorpdt: your 2nd pass mencoder commandline has a bitrate of 700.. for a 3h movie to one CD that's definitely not what it should be and considering 700 is the default bitrate.. it makes me wonder. Somehow the recalculated bitrate is not being propagated properly.
@update: I identified the bug. As you noted, the bitrate is propagated to the job file (I guess I should've checked first instead of setting a breakpoint in between first and second pass). The problem is the code that allows custom commandlines.. as the generated commandline from the settings differ fro the commandline value that you can see in your jobs, I'll use the commandline, which has a 700kbit/s bitrate instead of the calculated one. I'll have to change all code for automated twopass to enforce a commandline regeneration after setting the final video bitrate. And while I was at it, I identified a small bug in the overhead projections in x264 mode.
@update2: I'm currently testing the fix.
Doom9
14th March 2005, 20:58
here is v0.1705:
bugfix: the mp4 overhead with and without b-frames was inversed in x264 mode
bugfix: in auto mode, the bitrate, even though being properly recalculated, was not propagated to mencoder, thus resulting in the default bitrate being used for each codec
celtic_druid
15th March 2005, 11:07
Some new x264 options:
chroma_me 0,1 default 1
nochroma_me 1,0
chroma_qp_offset -12-->12 default 0
New mencoder builds featuring them should be up soon.
scorpdt
15th March 2005, 11:20
Thanks Doom9,
Will try them out .... and update if any.
Cheers!
Scorpio
akupenguin
15th March 2005, 11:49
Originally posted by celtic_druid
chroma_me 0,1 default 1
nochroma_me 1,0
That's a complicated way of saying the chroma_me is a boolean, and defaults to on.
Doom9
15th March 2005, 13:15
how does the chroma qp offset work?
And I was wondering.. what happens if rather than specifying a qp for the first pass you specify a bitrate instead? It's one like that for lavc and xvid.
dinolib2
15th March 2005, 13:54
Originally posted by Doom9
bugfix: in auto mode, the bitrate, even though being properly recalculated, was not propagated to mencoder, thus resulting in the default bitrate being used for each codec
Doom9, may be I don't understand very well, but it seems that in "auto mode" Video bitrate is not coherent to "Projected Video Bitrate". I've just started an encoding. Later I'll tell you size result. "projected video bitrate" is 559, job video bitrate is 632.
mencoder "C:\tmp\Clown at midnight_movie.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=632:frameref=5:bframes=2:b_adapt:b_pyramid:weight_b:4x4mv:rc_buffer_size=0 -o "C:\tmp\CaM_x264.264" -of rawvideo
MeGUI v0.1705
bye
Dino
Doom9
15th March 2005, 14:31
projected video bitrate is just that.. a projection. If you use VBR audio, the projection will be off for certain, because audio is not taken into account for the projection. But even in CBR mode, the size of the audio file will not necessarily match the size projection. Hence, the video bitrate is always recalculated after audio encoding has taken place. That is the same mechanism that programs like Gordian Knot use (in addition, GKnot takes the size and length of the credits file into account). You can recalculate the bitrate on your own even while video is encoding using the formula I gave a little earlier in this thread. And even in my tests with 3xxx frame trailers, the projected video bitrate didn't match the actual video bitrate in the end because the audio file ended up having a different size than the projection based on the bitrate.
It might also be that the projected video bitrate isn't always updated when you change something in the GUI.. but that's for you to tell me.. I think I catched pretty much everything but oversights do happen.
rc_buffer_size=0Scares me.. the rc_buffer_size should not even appear as far as I recall.. did you touch the values in the advanced tab? (this is completely unrelated to the bitrate).
dinolib2
15th March 2005, 16:58
strange, I've never touch advanced video.
Seems that when job is produced, the parameter is set to 0 and compare in command line...
(btw seems that while editing configuration "Buffer size" is updated automatically and equal to video bit rate, but nothing is added to command line, right?)
Doom9
15th March 2005, 20:44
version 0.1706:
new: support for chroma ME and chroma QP offset. Keep in mind that this requires a whole new mencoder build that uses at least x264 revision 171. If using an older version, you should stick to 0.1705 for the time being as in auto mode, you cannot override the commandline (unless you abort the first video pass, quit megui, edit the xml file, start megui and restart the video jobs) and thus you'll end up with a commandline mencoder won't accept.
changed: RC buffer size behavior: 0 is the new GUI default value and means no buffer size is specified (mencoder will take that as 1 second worth of video). there's no more need for a checkbox to fix the buffer size
bugfix: restored proper order of all tabs when activating/deactivating the advanced video options
The celtic-druid mirrors are not yet updated with the 3/15 build.. so unless you find an alternative download source, keep in mind that older builds won't work with this release due to the chromaME option.
Doom9
15th March 2005, 20:47
@dinolib2: so did you plug the actual values in my bitrate formula? does it match the bitrate calculated? did your encoding session yield the desired size?
Attached is the source code.
Bluedan
15th March 2005, 21:47
Originally posted by Doom9
version 0.1706:
new: support for chroma ME and chroma QP offset. Keep in mind that this requires a whole new mencoder build that uses at least x264 revision 171.
[...]
The celtic-druid mirrors are not yet updated with the 3/15 build.. so unless you find an alternative download source, keep in mind that older builds won't work with this release due to the chromaME option.
Mpf.
Sherpyas latest build dates to march 11th.
Virus' is far behind.
Did you get yours directly from C_D, or compiled yourself?
I don't know of any different sources that suffice the actual progress...
Well, I know: the usual guideline is __patience__ :sly:
Doom9
15th March 2005, 21:53
CD made new compiles today but they have not yet been propagated to the mirrors. I hope it'll be done soon.
thed33p
15th March 2005, 23:33
@Doom9
Here is a log for 3 full movies
Something strange - when I re-encoded the 1st movie with 0.1705, I changed the MP4 overhead value to match the value reported in the 1st log entry. This resulted in a MP4 of ~615MB. Should I have just left the overhead value alone?
I'm busy redoing the same movie again but with seperate credits as per your howto :) - I'll report back
dinolib2
16th March 2005, 04:35
Encoding test is undersized :(
I've take a look to latest sources. It seems that in method automatedEncodingButton_Click there's something wrong. At Ln5348 you test audio job and compute bitrate only if it's null. This means get you don't compute bitrate when you have audio. May be that if you don't updateVideoBitrate for the job, you get the wrong file size. I've tried to just comment the condition and it seems to work fine (loaded job and it has the correct bitrate). Although, I can't start another test, because I haven't the latest mencoder yet (and in this moment I haven't enough time to change sources to avoid the problem).
I hope this can help you.
bye
Dino
Doom9
16th March 2005, 09:13
At Ln5348 you test audio job and compute bitrate only if it's null.That's how it should be. Look at the StatusUpdate code in form1.cs in the GUI updates region.. if you get a "job done" update from an audio job and the next chained job is a videojob, that's where the bitrate is recalculated because only then do you know the actual audio size. If the audio job is null, that means you have defined an mp4/aac audio input (those don't require encoding), and the bitrate is calculated taking the actual audio size into account (I can't quite remember where that's done since I don't have the code before me).
Either way, please do me a favor and put your values into my bitrate line before you even start to think it's my fault.. if I don't appreciate something it's being blamed for errors that are not mine. I don't mind looking into things once you've done your homework.. there's quite a few bugs in this thread where that has been done and when I got home to look at the code I already know where to look and often what was wrong before even starting to debug. That's how error reporting should be.. get all the info necessary to reproduce the problem and before that, make 200% certain it's not a user error.
Also, something very important that you must consider before complaining about size: mencoder gives you the average bitrate for the 2nd pass.. compare that with your commandline.. if it doesn't match.. you got your source of the size mismatch right there.
Also, if your set overhead value doesn't match the calculated overhead after muxing.. that's another source for size mismatches. So, unless you find an error in my formula (or its implementation for those that look at the code), you have to look elsewhere.
Doom9
16th March 2005, 11:16
when I re-encoded the 1st movie with 0.1705, I changed the MP4 overhead value to match the value reported in the 1st log entry.Is that the 3rd movie in the log you posted? I see the number of frames match and the video size is almost the same, but the audio size differs by a huge amount (81MB in the 3rd movie versus 299 MB in the first movie.. )
dinolib2
16th March 2005, 14:29
@doom9
hi,
just few things:
- your bit rate formula is ok (you already know it ;) )
- I've made the second encoding with my dumb correction (please, excuse me for superficiallity) and it seems to be go :eek: . I asked for 500000KB:first run (original code) get me 430MB, the second one (dumb fix) is going to 500MB.
- I haven't so much time this week and I don't want to waste your time. So I'll go deeper with the problem. I'll make some test with smaller encode...
bye
thed33p
16th March 2005, 14:39
@Doom9
Yes it is the 3rd file in the log - The 1st one was iirc CBR LC-AAC 128 and the 3rd file VBR normal HE-AAC.
Would the audio size have a big impact on MP4 overhead?
Doom9
16th March 2005, 15:06
Would the audio size have a big impact on MP4 overhead?I don't think so but that's to be determined by looking at the stats. Seems you get a pretty consistent overhead with your settings.. I've seen similar values in my own tests using AVC and B-frames. The thing is, not using B-frames, and using another codec significantly changes those values :/ And I know nero AVC has 10.4 byte/frame with b-frames.
But, the size discrepancy between your first and 3rd run can be explained with the grossly different audio sizes (almost 300 MB for that movie length... was your audio 5.1 in the first case and stereo in the 2nd?)
I asked for 500000KB:first run (original code) get me 430MB, the second one (dumb fix) is going to 500MB.The thing is.. your changes don't have any effect because once we go from audio encoding to video encoding, the bitrate is being recalculated and your video encoding will start using the bitrate calculated in between audio and video encoding.. not the bitrate calculated on line 5348 and following. Since you know your way around with Visual Studio, set a breakpoint in line 8107, then start encoding (with audio encoding). This will break just before the video bitrate is being recalculated in between audio and video encoding. you can look at firstpass.Settings.BitrateQuantizer, secondpass.Settings.BitrateQuantizer (in case you're doing AVC, firstpass doesn't matter), then compare that with the bitrate that is calculated just thereafter. And better set a breakpoint at line 5348 as well.. that way you can compare the two calculations and you see what is different.
Keep in mind though, if you restart just video from your existing jobs, the recalculation won't take place.. there's quite a few catches if you abort and restart existing jobs.
Doom9
16th March 2005, 20:24
I asked for 500000KB:first run (original code) get me 430MB, the second one (dumb fix) is going to 500MB.BTW, just to make sure, you are aware that desired size = size of audio + size of video + mp4 overhead, are you not? And there is a possible scenario where the bitrate recalculation after audio encoding isn't done.. so perhaps you get your desired vide size when not taking audio into account.. and since you expect your desired size to be video only, without the recalculation after audio encoding you get what you thought you'd get. Your formulation sounds like the 2nd pass of video encoding isn't done yet and you're looking at the projected size (if you were in the mp4 muxing step, you'd have been able to make a definitive statement regarding the final size) of the 2nd pass, which means the projected size of video only.
dinolib2
16th March 2005, 20:59
I didn't know of video bitrate recalculation after audio job...:o
I've tried with a smaller clip and make some debug. It seems is all right (recalculation is done correctly) but I have to investigate.
In whitch cases you don't perform video bitrate recalculation?
My inputs: .avs loading d2v project, .ac3 audio file. I choose different name for video and audio output.
I've tried with both mp4 and avi output format. Video encoder is AVC (with B-frames -> 10.4 b/f overhead ), always.
After I choose audio and video settings, I come back to first tab Automatic Encoding, choose desidered size (I think it's final mp4 or avi file size) and press the "GO" button. I'm doing something wrong?
I'm sorry, but now I haven't MeGUI prog with me, may be I'm not very accurate :D
Doom9
16th March 2005, 21:10
uhh.. why am I getting the feeling you're not getting what auto mode is about? If you set AVI as output type you get something completely unusable.
You will get either 3 or 4 jobs from auto mode depending on input:
if (input.extension = .aac or input.extension = .mp4)
{
no audio encoding is done, so you get 3 jobs: video first pass, video second pass, muxing
}
else
{
if audio is properly configured, you get an audio encoding job and the abovementioned 3 jobs.. all 4 are linked to each other. Then encoding starts.. first audio is done, then its size is read, and from your desired size the final video bitrate is calculated and used for video encoding, then finally everything is muxed to an mp4 (since you're doing audio encoding the raw video is muxed into the audio .mp4, but first the audio is copied to the final filename).
}
In whitch cases you don't perform video bitrate recalculation?In the if case (means the audiojob is null), or if you do not let all the 4 jobs run after each other in the else case. If you do anything that will make jobX-2 (video firstpass) not start after jobX-1 (audio), then no bitrate recalculation will be done.
Now I leave you to your homework ;)
thed33p
16th March 2005, 23:30
Originally posted by Doom9
was your audio 5.1 in the first case and stereo in the 2nd?)
I don't think so but I REALLY can't remember. 1st case was done with an older build though - either 1702 or 1700 iirc
Regarding seperate credits - here's what I did:
1) Create 1705_movie.avs and 1705_movie_credits.avs each with the appropriate trim values
2) Add movie.ac3 as audio in, set 1705_movie_joined.mp4 as audio out with settings: Stereo, Stereo downmix, VBR - normal, HE, High Quality. Click queue
3) Delete audio input entry
4) Add 1705_movie_credits.avs as input (AVC, RAW) with settings: Automated 2pass, 4x4, 5ref, 5B, Pyramid, Adaptive, More iterations of QPel, Weighted Prediction. I also set the bitrate at 200. Click queue
5) Add 1705_movie.avs as input (AVC, MP4) with the same setting except for bitrate which I changed back to 700 (as that is default.) Click queue
6) Click Start then double click mux to postpone.
7) Wait roughly >17.5 HOURS< (P4, 2.8, HT, 800FSB, 1GB RAM)
8) From cmd prompt: Copy /b 1705_movie.264+1705_movie_credits.264 1705_movie_joined.264 (correct syntax for XP SP2 - dunno if this will be right for other versions of Windows)
9) Double click mux job to change back to "waiting". Click start
AAC MP4 - 79948 kb
1705_movie.264 - 501573 kb
1705_movie_credits.264 - 9027 kb
1705_movie_joined.MP4 - 592379 kb
Comments & Questions:
1) Based on your last post to dinolib2, I presume that there was no video bitrate recalculation because the "4 jobs didn't run after each other". Is there any (easy) way around this?
2) Even though Mux was set to postpone, "muxing" was still performed automatically as I also have a 1705_movie.MP4 sized at 503296 kb (no sound)
3) When doing the final manual mux, remaining time rolls over 0 and starts to display negative values
and as a side question
4) Are any of my settings inappropriate / over the top? I've read the various threads a kazillion times now but there's just too much new stuff to digest...
l8er
Doom9
17th March 2005, 08:37
any chhance of outputing to a batch file, so I may use the same rutine every time using windows scheduler for every week recording?What's wrong with taking the commandlines shown in the GUI and putting them in a batchfile?
If you think about auto mode, you have certain features like bitrate recalculation after audio encoding, and since the length of a TV series ep still can vary, in order to reach your target size you'll have to adapt the bitrate so batchfile idea doesn't work anymore (unless you add the appropriate logic to calculate bitrate and such.. and that's obviously no job for MeGUI).
1) Based on your last post to dinolib2, I presume that there was no video bitrate recalculation because the "4 jobs didn't run after each other". Is there any (easy) way around this?No. Since you are not in auto mode anyway, you cannot use any of the bitrate calculation facilities.
2) Even though Mux was set to postpone, "muxing" was still performed automatically as I also have a 1705_movie.MP4 sized at 503296 kb (no sound)I'm afraid so. I'm not 100% sure if it also applies to aborting a job, but postponing won't do you any good in this case because all the jobs are linked. I've decided to make automatic processing of the next job dependant on if the queue mode is active or not in the next version, so that limitation will be removed (but it gives you new means to mess things up by moving jobs up/down and having stuff muxed into the wrong mp4 file.. perhaps you know that mp4creator can not only create MP4 but also mux stuff into an existing mp4.. so if you are not careful you risk muxing video into the wrong file.. or like it happened to me a couple of times.. mux two audio channels based on the same source into the same mp4.. or put video in there twice).
3) When doing the final manual mux, remaining time rolls over 0 and starts to display negative valuesHmm.. have to recheck that.. I though those things have been fixed.
4) Are any of my settings inappropriateCredits are normally done in QP mode with a high quantizer, not two pass encoding. Unless you have bitrate reduction facilities in the codec like in XviD there's really no reason to go over them twice.
Doom9
17th March 2005, 19:33
I tried outputing the line to a batch file, but couldn't `cause of the pipe.I have removed avs2yuv a while ago so there are no more pipes in the commandlines.
Plus, I actually ran batchfiles in low priority when I still needed avs2yuv ;)
dinolib2
18th March 2005, 01:04
@Doom9
may be there's a problem with mux job (mp4creator command line) when you have spaces in directory name (may be file name too). I've got an error because of this (renamed folder, and all went well(.
For my homework: I'm beeng far from my pc :(
btw I've run another test (now with mp4 output) and it seemed to be fine. I've haven't seen the end, projected file size at 40% was good.
May be I've made confusion with avi output. I hope in week end I'll could try something.
EDIT: in the meanwhile, encoding ended. Final mp4 is ca.490MB. Requested size was 500MB. but... MeGUI is working fine!
Just few lines from the log:
mencoder commandline: mencoder "C:\tmp\Clown at midnight_movie.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=631:frameref=5:bframes=2:b_adapt:b_pyramid:weight_b:4x4mv -o "C:\tmp\CaM_x264.264" -of rawvideo
[...]
Flushing video frames
Writing AVI index...
Fixing AVI header...
Video stream: 631.041 kbit/s (78880 bps) size: 433622735 bytes 5497.240 secs 137431 frames
But CaM_x264.264 is 423.460! (about 10MB less than required!)
Do you think is an encoder problem?
dinolib2
18th March 2005, 03:26
@Doom9
OK. I've done different tries. MeGUI works really fine (but you already know)!:) I've run encoding asking for .avi output and as a stupid waiting for muxed output (infact in this case you don't update the video bitrate, right?). Mp4 encoding is a rock!
Still there's the undersize problem, but may be it's a mencoder problem (MEncoder dev-CVS-050315-21:39-3.4.2 (C) 2000-2005 MPlayer Team).
thank you very much!
ps: can you avoid field selection at startup or changing codec? it's only a visual refinement ;)
virus
18th March 2005, 04:03
Originally posted by dinolib2
Video stream: 631.041 kbit/s (78880 bps) size: 433622735 bytes 5497.240 secs 137431 frames
But CaM_x264.264 is 423.460! (about 10MB less than required!)
I doubt so. In fact, 433622735 bytes really are ~423460 kilobytes.
And after all, you requested 631 kbit/s in your commandline and got 631.041 kbit/s as output... so where is the undersize you're talking about?
springl
18th March 2005, 08:54
I believe the undersize is due to k=1000 instead of k=1024 in computation of video bitrate.
Infact 78880 bps => 631,04 kbit/s if k=1000 and 616,25 kbit/s if k=1024 ,so this difference of 14.79 kbit/s causes, in 5497.240 secs, an undersize of 10163,02 kbit
Greetings
Springl
Doom9
18th March 2005, 09:30
I believe the undersize is due to k=1000 instead of k=1024 in computation of video bitrate.A quick look at the sources confirms that :( The offending line is
int bitrate = (int)(videoTargetSize / nbOfSeconds) * 8 /1024;
It should divide by 1000 as we're entering the bit domain with the multiplication by 8.
Doom9
18th March 2005, 22:13
@niv: you've been PM'ing me about this and have answered you a bunch of times. Now please stop abusing this thread for your own purpose. You've been told where to find the answer.. if you are unwilling to do that, that's your loss (or strike if you keep on).
the answer why avs2yuv is not used anymore can also be found in this thread.
attached is 0.1707
bugfix: bitrate calculations assumed 1k = 1024, now it's 1k = 1000 so you should get your desired size (assuming the codec sticks to the bitrate set and you don't have a big overhead discrepancy).
naysayer
18th March 2005, 23:13
i just tried megui-0.1707.zip and found a little bug in your gui.
start megui, dont fill anything in, but pick xvid. go to the video tab, click xvids 'advanced settings' checkbox. a new 'log' tab appears in the tab control, giving 2 log tabs.
if you un-check 'advanced settings' and then re-check it, again another log tab appears in the tab control.
i checked and un-checked a bunch of times for fun, and ended up with about a dozen log tabs...
i'm using windows xp with dotnet 1.1.
Doom9
19th March 2005, 00:18
urgh, indeed. that should be an easy fix though.
ps: can you avoid field selection at startup or changing codec? it's only a visual refinementI'd very much like to. I know a way to fix things but it's a cheap workaround and I'd much rather find out why this happens.. it's been with us since the major internal redesign but I haven't figured out what causes it and neither has anybody else, even with the sources available.
dinolib2
19th March 2005, 12:19
I've done some tries about field selection.
It happends when adding tab to tab panel.
I thought 2 possibile solutions:
1) Add a method that loop text and list box collection in tab panel and deselect them
2) Avoid to Remove and Add tabs, use Show/Hide
Doom9, what do you think about it? Anyone knows what's the best practice?
Doom9
19th March 2005, 12:38
Doom9, what do you think about it?I must've completely missed the show/hide. I think it's the best solution since in case of add/remove, I have to remove, then re-add tabs because they are again needed, whereas with show/hide I can selectively hide/show just the tabs I need.. and after all in the very beginning they are all there, and as soon as the codec is set, a bunch of tabs are removed again.
I've only thought of the first solution you proposed, which I consider an ugly hack (but it would definitely work.. even though it also requires more work than number two). So I guess I'll look into show/hide now.
@edit: I've been testing and unfortunately, the hide/show doesn't work.. I can call hide all I want but the tabpages stay visible :(
A google search yielded the same info. the only known way to hide a tabpage is to remove it from the collection.
Doom9
19th March 2005, 13:37
I implemented the solution with unselecting the text.. but it's not ideal.. for starters, now nothing in the codec dropdown is ever selected, and likewise, when you change the video profile to one with another codec, the video profile is not selected either.
Doom9
19th March 2005, 13:39
Here is 0.1708 2nd edition
changed: dropdowns are no longer all marked when switching between codecs.
bugfix: proper removal and adding of the advanced xvid tab
dinolib2
19th March 2005, 14:01
in drop down list, where you can't edit, I suggest to convert in DropDownList (edit is not enabled and avoid field selection - now DropDownStyle is just default DropDown). I've tried it, now :D
Before I was wrong: field is selected when assigning SelectedIndex (loadXXXSettings methods). I think is normal behaviour for DropDown objects. May be you allready know it...
Doom9
19th March 2005, 14:29
in drop down list, where you can't edit, I suggest to convert in DropDownListThat has been done long ago.. the only real dropdowns are the video and audio profiles.. the rest are dropdownlists.. but that doesn't avoid text selection ;)
North2Polaris
19th March 2005, 14:43
Originally posted by Doom9
Here is 0.1708
@Doom9,
This version says it is 0.1707.
North
dinolib2
19th March 2005, 15:20
Originally posted by Doom9
the only real dropdowns are the video and audio profiles.. the rest are dropdownlists..
are you sure? I can edit EVERY DropDown text (exept for Size in auto encoding)... may be you lost changes? :confused:
Doom9
19th March 2005, 15:39
may be you lost changes?urhg.. you're right.. I was certain I had made the changes. Now that I redid them other things are affected :(
This version says it is 0.1707.urhg2. Stupid version number in the title.. its the last thing you want to edit every time.
Doom9
19th March 2005, 16:20
okay, I think I may finally have a solution to the selection issue. It's also basically a workaround because the one selectionchanged that messes things up (changing the codec) triggers a removal of the input tab, which in case makes sure that the codec is never selected, but if I don't remove the input tab, just the rest, that one is taken care off as well. I'll release this as a proper 0.7108
Patrick1970
19th March 2005, 19:14
First time post for me on doom9.
I am having a problem with Megui and encoding (doesn't matter if AVC or ASP). I haven't seen anyone else have this problem so it must be something peculiar to my machine but I have no idea what.
When I start up an encoding job - lets just say one pass CBR - the status window shows no progress and indeed at a small file (270 KB or there abouts) is created but just stalls there.
Now if I abort and close down MeGUI - and reopen it - go to the Queue tab (double click on the old job that that is still 'processing' to change it to 'waiting') and start again - this time it processes fine - both the status window shows this and a fully encoded file is output.
When I do a 2 pass - the first pass works fine as is. It stalls on the 2nd pass - but again if I do as the above paragraph I can get the 2nd pass to run.
Running XP SP2
Microsoft.Net 1.1 (I have tried uninstalling and reinstalling it doesn't fix the problem). Have also tried .Net 2.0 Beta - didn't help either.
Doom9
20th March 2005, 12:31
When I do a 2 passYou mean an automated 2 pass? Is it dependent on any settings or does it always happen regardless of your configuration? Could you make another try, then open the mencoder logfile and check how many frames have been encoded? Also, when a job gets stuck, can you check in the taskmanager if mencoder.exe is still running?
Furthermore, does the problem only ocurr if you queue and start (when pressing Queue you have the "and start" checked)? Can you add a job to the queue, then go to the queue tab and press start there? Does it work that way?
dinolib2
20th March 2005, 14:22
Doom9, size issue seems to be definetly fixed! :)
I've done the same test (500.000MB), now: 512.000KB requested, 512.690KB gotten. It's goooood! ;)
thanks again
Patrick1970
20th March 2005, 18:32
You mean an automated 2 pass? Is it dependent on any settings or does it always happen regardless of your configuration? Could you make another try, then open the mencoder logfile and check how many frames have been encoded? Also, when a job gets stuck, can you check in the taskmanager if mencoder.exe is still running?
Automated or manually 2pass it happens. But it never stalls on the first pass of a two pass encode - only on the second. I see nothing in the log tab on megui - however I did setup two different jobs (separately) just encoding to Mpeg4/Asp - in both cases it stalls out at frame 108. When the job gets stuck - mencoder is still running. Also if I feed the command to mencoder directly via shell commandline - there are no error messages and the encoding does not stall. It happens regardless of the settings used in the video tab.
It happens also if I use 'queue and start' or queue and then click on start under the queue tab.
I was using avisynth 2.5.6 went back to 2.5.5 and the problem still persists.
Doom9
20th March 2005, 18:56
Automated or manually 2pass it happens. But it never stalls on the first pass of a two pass encode - only on the second.Still not sure we mean the same: automated 2 pass = the setting in the dropdown in a video tab. And then there's auto mode (first tab, with the Go button)but that's something else entirely. And you can set up a 2 pass encoding as job jobs on your own (once selecting 2pass first pass from the dropdown, adding the job, changing the dropdown to 2pass second pass, and adding another job).
Now, GUI updates are sent every 50 frames, so there's no GUI update at that particular point, meaning whatever is happening happens while reading stdout or stderr. I rule out problems with the job since you can encode them in the 2nd try, I can also rule out problems in the way jobs are started because as you said, it happens regardless if you start right away or start the job later, plus the problem ocurrs after 2 status updates, so we know that is working as well. And all that's being done at frame 108 is read a line from stdout, increase a counter, and make a copy of the line..nothing which should trigger any problems.
You don't happen to know your way around Visual Studio, would you? I fear this is something that has to be debugged on your end as I cannot reproduce it.
@dinolib2: that's good to know.
Patrick1970
21st March 2005, 03:08
Hi Doom9
Yep it happens on 'auto mode' (Go button)
Automated 2pass (video tab)
and manual 2 pass (video tab)
And unfortuantely I don't know my way around Visual Studio. Anyway I can still get the 2nd pass to run so I will have to live with that until I can figure it out :)
Oh one more thing - stalling at 108 frames there would be two status updates (as you mentioned) - only thing is I don't actually see any updates at all in the status window - it remains blank. Don't know if that points to anything in particular being the problem.
Thanks for the nice GUI doom9 - the best tool so far for x264 encoding.
Doom9
21st March 2005, 08:36
Oh one more thing - stalling at 108 frames there would be two status updates (as you mentioned) - only thing is I don't actually see any updates at all in the status window - it remains blank. Don't know if that points to anything in particular being the problem.Well.. that's more enlightening but imho it should abort priot to 108 frames if something with the statusupdates goes wrong. But that still leaves a heck of a lot of things to go wrong that shouldn't.
It it source dependant by the way? or mencoder version dependant?
video
21st March 2005, 21:29
Hi Doom9 I've problem with encoding audio to HEAAC I've followed your instructions for putting suff together. I set up for 5.1 192kbs CBR HE/high quality.
resulting commandd line is:
besweet -core( -input "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\VTS_03_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY 0ms.AC3" -output "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4" -logfile "besweet.log" ) -azid( -c normal ) -bsn( -6chnew -cbr 192 ) -ota( -d 0 -g max )
And the result is:
BeSweet v1.5b29 by DSPguru.
--------------------------
Using azid.dll v1.9 (b922) by Midas (midas@egon.gyaloglo.hu).
Using Shibatch.dll v0.24 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll v0.24 by DPeshev,Richard,E-Male,DSPguru (DSPguru.Doom9.org).
Logging start : 03/21/05 , 21:15:21.
besweet -core( -input H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\VTS_03_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY 0ms.ac3 -output H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4 -logfile besweet.log ) -azid( -c normal ) -bsn( -6chnew -cbr 192 ) -ota( -d 0 -g max )
[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\VTS_03_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY 0ms.ac3
[00:00:00:000] | Output: H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4
[00:00:00:000] | Floating-Point Process: No
Error 84: error configuring bsn!
Quiting...
[00:00:00:000] Conversion Completed !
Logging ends : 03/21/05 , 21:15:21.
what did i wrong?
Doom9
21st March 2005, 22:22
And the result is:Good thinking posting that. Makes it quite clear what is wrong. bsn errors happen if bsn.dll is missing, or one of the Nero AAC encoder DLLs are missing. Can you check the readme file and make sure all the DLLs listed there have been copied to the MeGUI path?
video
21st March 2005, 23:46
Originally posted by Doom9
Good thinking posting that. Makes it quite clear what is wrong. bsn errors happen if bsn.dll is missing, or one of the Nero AAC encoder DLLs are missing. Can you check the readme file and make sure all the DLLs listed there have been copied to the MeGUI path?
Okay i failed copying the nero dlls at first now it's done. Next issue, sorry it seems i'm a dumb ass today. I've set up a complete job as follows:
1) an avisyinth script having a disrectshowsource("VTS_03_1.vob") statement and decodes by moonlight/elecard. Outputs to movie.avc. codec: avc, file type: mp4
2) audio the same as above
3. projected size 14 megabytes
first: i submitted audio task to the queue
second: i set up automated 2-pass with two b frames and submitted to the queue
third: i started encoding
resulted almost fine expect that avc video is not muxed into movie.mp4. :mad:
Doom9
22nd March 2005, 23:52
resulted almost fine expect that avc video is not muxed into movie.mp4.I'm afraid that report doesn't live up to the last one. You fail to give any indication what was done and what you ended up with, what happened with the mux job, log entries, etc..
video
23rd March 2005, 03:31
Originally posted by Doom9
I'm afraid that report doesn't live up to the last one. You fail to give any indication what was done and what you ended up with, what happened with the mux job, log entries, etc..
okay.
audio:
besweet -core( -input "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\VTS_03_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY 0ms.AC3" -output "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4" -logfile "besweet.log" ) -azid( -c normal ) -bsn( -6chnew -cbr 192 ) -ota( -d 0 -g max )
video:
mencoder "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=700:deblockalpha=-2:deblockbeta=-2:subq=2:4x4mv -o "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avc" -of rawvideo
enough.avs has:
DirectShowSource("VTS_03_1.vob")
complete job log:
----------------------------------------------------------------------------------------------------------
Log for job job1
besweet: besweet -core( -input "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\VTS_03_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY 0ms.AC3" -output "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4" -logfile "besweet.log" ) -azid( -c normal ) -bsn( -6chnew -cbr 192 ) -ota( -d 0 -g max )
BeSweet v1.5b29 by DSPguru.
--------------------------
[00:00:00:000] Initializing...
[00:00:00:000] -- Initializing...
[00:01:46:368] |
SR: 48000, Table idx: 5 - start 13, stop 11
SR: 48000, Table idx: 5 - start 13, stop 11
SR: 48000, Table idx: 5 - start 13, stop 11
SR: 48000, Table idx: 5 - start 13, stop 11
SR: 48000, Table idx: 5 - start 13, stop 11
SR: 48000, Table idx: 5 - start 13, stop 11
[00:01:46:368] Finalizing...
[00:01:46:368] Conversion Completed !
Visit DSPguru's Homepage at :
http://DSPguru.doom9.net/
----------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------
Log for job job2-1
mencoder commandline: mencoder "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avs" -ovc x264 -o NUL: -passlogfile "mencoder-2pass.log" -x264encopts pass=1:qp_constant=26:deblockalpha=-2:deblockbeta=-2:subq=1:4x4mv
MEncoder dev-CVS-050315-21:28-3.4.2 (C) 2000-2005 MPlayer Team
CPU: Advanced Micro Devices Athlon MP/XP Thoroughbred (Family: 6, Stepping: 1)
Detected cache-line size is 64 bytes
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
85 audio & 192 video codecs
File not found: 'frameno.avi'
Failed to open frameno.avi
success: format: 0 data: 0x0 - 0x20
AVS file format detected.
VIDEO: [YV12] 720x576 12bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:38 fourcc:0x32315659 size:720x576 fps:25.00 ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1 (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
VDec: vo config request - 720 x 576 (preferred csp: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
SwScaler: using unscaled Planar YV12 -> Planar YV12 special converter
Selected video codec: [rawyv12] vfm:raw (RAW YV12)
==========================================================================
x264 [info]: no need for a SAR
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
Writing AVI header...
ODML: vprp aspect is 16384:13107.
ODML: vprp aspect is 16384:13107.
Flushing video frames
Writing AVI index...
Fixing AVI header...
ODML: vprp aspect is 16384:13107.
Video stream: 781.984 kbit/s (97747 bps) size: 10380836 bytes 106.200 secs 2655 frames
----------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------
Log for job job2-2
mencoder commandline: mencoder "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=700:deblockalpha=-2:deblockbeta=-2:subq=2:4x4mv -o "H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avc" -of rawvideo
MEncoder dev-CVS-050315-21:28-3.4.2 (C) 2000-2005 MPlayer Team
CPU: Advanced Micro Devices Athlon MP/XP Thoroughbred (Family: 6, Stepping: 1)
Detected cache-line size is 64 bytes
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
85 audio & 192 video codecs
File not found: 'frameno.avi'
Failed to open frameno.avi
success: format: 0 data: 0x0 - 0x20
AVS file format detected.
VIDEO: [YV12] 720x576 12bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:38 fourcc:0x32315659 size:720x576 fps:25.00 ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1 (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
VDec: vo config request - 720 x 576 (preferred csp: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
SwScaler: using unscaled Planar YV12 -> Planar YV12 special converter
Selected video codec: [rawyv12] vfm:raw (RAW YV12)
==========================================================================
x264 [info]: no need for a SAR
x264 [info]: using cpu capabilities MMX MMXEXT SSE 3DNow!
Writing AVI header...
Flushing video frames
Writing AVI index...
Fixing AVI header...
Video stream: 699.647 kbit/s (87455 bps) size: 9287811 bytes 106.200 secs 2655 frames
----------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------
Log for job job2-3
Audio input defined: H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\audio.mp4 Checking audio type:
MP4 audio input does not match the desired MP4 output filename. Renaming audio MP4 file to H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.mp4
MP4 audio size is 2570796 bytes
mp4creator commandline: mp4creator.exe -c H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.avc -rate 25 -optimize H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.mp4
Launching video muxing process
mp4creator.exe: unknown file type
MP4 muxing info:
Size of audio in MP4: 2570796 bytes
Size of raw video stream: 9287811 bytes
Size of final MP4 file: 2583276 bytes
Size of video in MP4 file: 12480 bytes
Total overhead: -9275331 bytes
Overhead per frame: -3494,84966088922 bytes
source information
codec: AVC
number of b-frames: 0number of source frames: 2654
----------------------------------------------------------------------------------------------------------
seems like mp4creator doesn't recognizes mencoder's avc (x264) output
i got finally:
Microsoft Windows XP [verziószám: 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Program Files\MeGUI>mp4info H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.mp4
mp4info version 1.2.8
H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.mp4:
Track Type Info
1 audio MPEG-4 AAC LC, 106.442 secs, 191 kbps, 48000 Hz
2 od Object Descriptors
3 scene BIFS
Metadata Tool: Nero AAC Codec 3.0.0.5
C:\Program Files\MeGUI>
sorry for flooding the topic
ps: assuming that mp4creator is extension agnostic, i made a try as:
C:\Program Files\MeGUI>mp4creator -c H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.m4v -rate 25 -optimize H:\ENOUGH_SPECIAL_EDITION\VIDEO_TS\enough.mp4
mp4creator: buffer overflow, invalid video stream?
and didn't got closer...
Doom9
23rd March 2005, 06:39
how did you manage to get your 2pass output named .avc? megui automatically renames the extension in function of the selected codec when you set output to raw or mp4.
video
23rd March 2005, 14:35
Originally posted by Doom9
how did you manage to get your 2pass output named .avc? megui automatically renames the extension in function of the selected codec when you set output to raw or mp4.
quite easily. i've entered enough.avc at the output file name dialog box. however it seems this is irrevelant. even if i rename enough.avc to enough.m4v or enough.mp4v, mp4creator fails muxing in.
Doom9
23rd March 2005, 18:40
quite easily. i've entered enough.avc at the output file name dialog box. however it seems this is irrevelant. even if i rename enough.avc to enough.m4v or enough.mp4v, mp4creator fails muxing in.Hehe.. try using the ... button.. that's what it's for. Then suddenly you'll notice something: your file extension will be .264 for AVC content and .m4v for ASP content. And that's for a reason: mp4creator will only accept AVC content with the extension .264. For ASP a few extensions are permissible (like .divx, .xvid, m4v), but it's still very much restricted.
So you kinda outsmarted yourself by manually assigning an extension ;)
dinolib2
23rd March 2005, 20:13
@doom9:
why don't you avoid edit directly in file name fields? First times I've used megui I've done the same error: change manually the name.
It's true, MeGUI advice with a popup, but users don't carry about it... :p
bye, Dino
Doom9
23rd March 2005, 20:30
why don't you avoid edit directly in file name fields?Because I like that feature. By the same token you could argue that I should save jobs in binary, but having them as xml not only greatly simplified development, it also makes job verification in case of problems possible without requiring a debugger.. and other people than I can help as well.
It's the eternal story of choice versus chance to mess up. But messing up also gives you a chance to improve, doesn't it? You'll only make that error once, and now you understand a limitation of mp4creator that you'd not have learned of otherwise.
dinolib2
23rd March 2005, 20:56
ok doom9, interesting point of view.
may be commercial and professional s/w focuses on usability, while personal and hobbie s/w point on understanding what's behind...
Changing manually file names doesn't affect mencoder command line generation. I have every time to change some other parameter to get new values. Can you fix it (or it is a feature)?
thanks, Dino
ps(OT): x264 devel is slowing down. is because syskin and akupenguin are gone to Nero, or is regular s/w life cycle?
video
23rd March 2005, 21:13
Originally posted by Doom9
Then suddenly you'll notice something: your file extension will be .264 for AVC content
So you kinda outsmarted yourself by manually assigning an extension ;)
http://forum.hwsw.hu/html/emoticons/icon_ohmygod.gif stupid me... anyway i feel mp4creator should have some type flag instead of extensions... as extensions are not so mutch trustable. however, but i've asked a help of mp4creator and '.264' wasn't listed...
Doom9
23rd March 2005, 21:18
may be commercial and professional s/w focuses on usability, while personal and hobbie s/w point on understanding what's behind...I think I offer both.. most people will use the open dialogue.. but it doesn't hurt to let advanced users have a choice unless you're strictly targeting the one clicker crowd.
Can you fix it (or it is a feature)?I guess I changed that when I put in the code to change the extension when selecting an output file. Not sure what the reason for this was. It's a matter of one line more or less so something really minor.
x264 devel is slowing down. is because syskin and akupenguin are gone to Nero, or is regular s/w life cycle?I'm not sure akupenguin has signed anything.. as I understand work is being done on RDO and that might take some time to be finished.. perhaps that'll be the next release.. but that's all really speculation.
however, but i've asked a help of mp4creator ahd '.264' wansn't listed...I know.. I've been wondering about that myself when I implemented the mp4 muxing feature.. not really my problem though. I suppose the programmers will add it when they feel it's time.
video
24th March 2005, 17:54
Originally posted by Doom9
I know.. I've been wondering about that myself when I implemented the mp4 muxing feature.. not really my problem though. I suppose the programmers will add it when they feel it's time.
Doom9 I feel it's superflous thing asking for the raw video output file name, if it can be figured out easily by MeGui. So asking for it is somewhat error prone ;)
Doom9
25th March 2005, 01:06
Doom9 I feel it's superflous thing asking for the raw video output file name, if it can be figured out easily by MeGui. So asking for it is somewhat error pronewell.. you just have to specify the name really.. the extension is automatically filled in. But, path and filename does matter. Just imagine you have the source on another drive than the video output (makes sense if you have multiple drives.. it'll speed up the process). Though you gotta stop that automatism somewhere.. if you press the ... button, you don't need to specify the extension.. if you edit the textbox, you gotta specify it (editing textboxes in that content is a feature for advanced users so I presume they know what they're doing.. if not, they'll learn the hard way ;)
And I meant asking the mp4creator programmers to add the .264 in the list of allowed input and mention the fact that the input acceptance is dependent on the input extension in a manpage.
yaz
25th March 2005, 09:51
Originally posted by Doom9
x264 devel is slowing down. is because syskin and akupenguin are gone to Nero, or is regular s/w life cycle?I'm not sure akupenguin has signed anything.. as I understand work is being done on RDO and that might take some time to be finished.. perhaps that'll be the next release.. but that's all really speculation.i hope u're right about the extent of 'our loss' but ... i got bad feeling about it. imho, this hijacking wasn't restricted to that 2 persons only. i wish i were wrong here, anyway.
the bests
y
(unnecessary rude) remarks edited
thed33p
25th March 2005, 23:26
Doom9,
I'm still on about seperate credits :)
I encoded credits seperately (quant=40) then subtracted the filesize of credits.mp4 from 716800 and entered this into the filesize box. Audio was 5.1 HE AAC. I then joined the files using copy /b and manually muxed. The result was a 734728 KB MP4. The file is unplayable though...
MPlayer20050315 has the followng to say:
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [directx] 720x576 => 1024x576 Planar YV12 [fs]
A: 0.2 V: 0.0 A-V: 0.122 ct: 0.004 2/ 2 ??% ??% ??,?% 1 0
MPlayer interrupted by signal 11 in module: decode_video
- MPlayer crashed by bad usage of CPU/FPU/RAM. Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
- MPlayer crashed. This shouldn't happen. It can be a bug in the MPlayer code _or_ in your drivers _or_ in your gcc version. If you think it's MPlayer's fault, please read DOCS/HTML/en/bugreports.html and follow the instructions there. We can't and won't help unless you provide this information when reporting a possible bug.
2 Questions - Could this have anything to do with the 5.1 audio? I've done this before with 2ch and it worked fine? Regarding the oversize - I started this job fairly late at night and I can't remember whether I pressed enter after typing in the desired filesize :rolleyes: Did I just answer my own quesion?
Then another case:
I encoded another full movie using automated 2-pass. Something went pear-shaped with the muxing though - MeGUI just hung and never actually stared the mux. I then manually muxed and the resulting file plays fine (and is spot-on size wise) but the audio is out of sync (even tho the filename states 0ms delay.) I still have the raw streams - is there a way to salvage this encode or was it 12 hours in the name of science?
video
26th March 2005, 04:59
thed33p i think it should be figured out, that other players are having problem with your movie or not, eg. try plaing it with mediaplayer classic, nero showtime, etc...
Doom9
26th March 2005, 11:51
Regarding the oversizePlease keep in mind that the first order of business is to check the mencoder logs and compare the resulting bitrate with the desired bitrate, the next step is comparing assumed and actual mp4 overhead. Also, as you know, the proper audio size is only taken into account in fully automatic encoding mode.. so setting audio to some cbr value to get an estimate of the desired bitrate won't do you much good.
I still have the raw streams - is there a way to salvage this encode or was it 12 hours in the name of science?If it's not the delay correction then it cannot be a MeGUI problem (I don't think you can even specify an audio offset in mp4creator).. most likely playback related or somebody didn't like your merge operation.
Patrick1970
26th March 2005, 19:51
@thed33p
Just a thought and pardon the simplicity - but did you set on mp4creator the -rate flag to the correct fps when you muxed. That could be a simple cause of sync loss.
KhasMek
26th March 2005, 21:55
k, first off, i would like to say thank you, doom9, for all your amazing work on this, and the great frontend you have created....
okay, now i have some, erm.. not really issues, but problems/bugs/something, and i am not sure if it is meGUI's issue, or one of mencoders/MPEG4IP tools.... so, sorry in advance if this isn't a problem of yours, or an already know about bug in mencoder....
this is all with the 2 pass automated, however i tried it in manual 2 pass, manual 3 pass, and cq, all with same results... avs script serving a .d2v file of dvd source, with 5.1aac audio (once encoded manulally with besweet, and once encoded with besweet though meGUI, both times using the nero he-aac)...
winxpsp2
.net 1.1
MPEG4IP 1.2.8cvs
MEncoder dev-CVS-050301-06:49-3.4.2
(i hope thats all the sysinfo you need)
the encode of the video went flawlessly each time, and the one time i encoded the audio through meGUI it came out perfect too, now the problem i was having was in the muxing phase. It would claim to mux everything just fine, however, the only thing that was muxed into the new mp4 container was the audio, no video whatsoever, the file would play the audio just fine though....
well, lemmie just give the first log, and then explain (imo only the muxin logs are necessary, becuase thats where the issue is
----------------------------------------------------------------------------------------------------------
Log for job job1-3
Audio input defined: E:\Ripped By Me\Test\Test\audio.mp4 Checking audio type:
MP4 audio input does not match the desired MP4 output filename. Renaming audio MP4 file to E:\Ripped By Me\Test\Test\test.mp4
A file with the desired output name already exists. Deleting file now.
MP4 audio size is 538849 bytes
mp4creator commandline: mp4creator.exe -c E:\Ripped By Me\Test\Test\test.264 -rate 29.97 -optimize E:\Ripped By Me\Test\Test\test.mp4
Launching video muxing process
mp4creator.exe: unknown options specified, ignoring: Me\Test\Test\test.264 E:\Ripped By Me\Test\Test\test.mp4
mp4creator.exe: can't open file E:\Ripped: No such file or directory
MP4 muxing info:
Size of audio in MP4: 538849 bytes
Size of raw video stream: 4203948 bytes
Size of final MP4 file: 538849 bytes
Size of video in MP4 file: 0 bytes
Total overhead: -4203948 bytes
Overhead per frame: -2917.38237335184 bytes
source information
codec: AVC
number of b-frames: 1number of source frames: 1441
----------------------------------------------------------------------------------------------------------
with using the encode command
mencoder "E:\Ripped By Me\Test\Test\zim2.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=800:bframes=1 -o "E:\Ripped By Me\Test\Test\test.264" -of rawvideo
now, i'm sure you see where the problem is
mp4creator.exe: unknown options specified, ignoring: Me\Test\Test\test.264 E:\Ripped By Me\Test\Test\test.mp4
mp4creator.exe: can't open file E:\Ripped: No such file or directory
it was taking the space in the directory (after Ripped) as an end and me\bla as an argument...
now, i thought the "'s in the directory path would have told mp4creator to not end the dir tree till the second " but it doesn't seem to be the case
of course i fixed this by changing the directory to one with out spaces in the name and this is what i got
----------------------------------------------------------------------------------------------------------
Log for job job1-3
Audio input defined: C:\Test\audio.mp4 Checking audio type:
MP4 audio input does not match the desired MP4 output filename. Renaming audio MP4 file to C:\Test\test.mp4
MP4 audio size is 538849 bytes
mp4creator commandline: mp4creator.exe -c C:\Test\test.264 -rate 29.97 -optimize C:\Test\test.mp4
Launching video muxing process
MakeIsmaCompliant:can't make ISMA compliant when file contains an avc1 track
MP4 muxing info:
Size of audio in MP4: 538849 bytes
Size of raw video stream: 4809520 bytes
Size of final MP4 file: 5366140 bytes
Size of video in MP4 file: 4827291 bytes
Total overhead: 17771 bytes
Overhead per frame: 12.3324080499653 bytes
source information
codec: AVC
number of b-frames: 1number of source frames: 1441
----------------------------------------------------------------------------------------------------------
with the commandline
mencoder "C:\Test\test.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=800:bframes=1 -o "C:\Test\test.264" -of rawvideo
and that muxed the audio in with the video, and plays perfectly....
so, i guess my question is, is this a bug on meGUI's end that is fixable, is this a issue with MPEG4IP tools and i am asking the wrong person, or is this an issue that probably won't be solved, i would really rather not change the whole layout of my hdd, even though i guess its not that much of a pain....
i hope i have made sense in this post, english is my first language, however it doesn't mean i am gracefull with it :D
thank you again for this exellent piece of software
Doom9
27th March 2005, 01:31
@KhasMek: welcome to the forum and for setting a good example with your first post. You not only posted all the relevant info, you also went to great lengths trying to solve it in an intelligent manner, and in fact you already answered your own question.
I'm afraid I forgot to put input and output for mp4creator into "s.
now, i thought the "'s in the directory path would have told mp4creator to not end the dir tree till the second " but it doesn't seem to be the caseactually, you've been looking at the mencoder commandline, where I use the "s, whereas for the mp4creator commandline (mp4creator.exe -c E:\Ripped By Me\Test\Test\test.264 -rate 29.97 -optimize E:\Ripped By Me\Test\Test\test.mp4) I did not. I'm sure that if you use "s to delimit input and output name, it'll work.
@those who have problems with jobs not being done properly, I'm thinking of putting in a bunch of trys/catches and dump whichever error is catched to a textfile with a stacktrace so that perhaps I can figure out what is causing the problems. But if anyone who can consistently reproduce a non starting/finishing job and knows how to handle Visual Studio, let me know.. that'd be the easiest solution as I cannot reproduce any job failures.
video
27th March 2005, 03:29
Originally posted by KhasMek
so, i guess my question is, is this a bug on meGUI's end that is fixable, is this a issue with MPEG4IP tools and i am asking the wrong person, or is this an issue that probably won't be solved, i would really rather not change the whole layout of my hdd, even though i guess its not that much of a pain....
Good question. problem is: winodws applications are having windows way of thinking, unix applications however are a different ball game. And Mp4iptools are coming from the Unix land. In the unix land a white space starts a new command line parameter... and micro$oft started evangelizing at win95 the even wrong habit of having white spaces in directory and file names is what a good thing.
thed33p
27th March 2005, 10:52
@Patrick1970
I did specify -rate 25 as mp4creator requires -rate when muxing h.264 files.
I've just been playing around with the -delay option in mplayer and I found that adding "-delay -.5" corrects the sync perfectly.
I'm about to look for a way of adding that delay to the muxing instead (not very hopefull though)
Doom9
27th March 2005, 13:30
adding "-delay -.5" corrects the sync perfectly.half a second and dgindex said 0ms delay? something is wrong here (and not with megui)
In the unix land a white space starts a new command line parameter.It's the same with Windows. commandline C programs for both platforms normally use the exact same commandline parsing code ;) Ever since long filenames were possible, you had to put paths with spaces into "'s. There's in fact no alternative. If you presume that space delimits cli parameters, then you have to discard parameters that you don't know, so a long path would never be recognized, unless you put in file/path checking code, etc.
Also, I just got a PM from Patrick1970, explaining why encoding can stop even though everything is properly set up. If you don't use full paths for input/output paths, but only filenames, MeGUI looks for the output files in the wrong location, throws an IO exception, and that effectively aborts the encoding process. This can also happen in the audio encoder and muxer. So if you have problems with jobs aborting, make sure you use absolute pathnames, and do not use spaces in paths for the MP4 muxer (see 3 posts up). I'll take care of all this in the next version but I'm currently working on a new feature so it might take some time.
Doom9
28th March 2005, 20:55
@thed33p: I'm having some problems with separate end credits myself. Even thought the joined binary file can be played, the credits are really messed up and there's a lot of block smearing. If I just put the credits file into an mp4 and play that, it looks ugly (it's supposed to), but there's no smearing. I also tried using my own binary merging program but the results were the same. Perhaps mplayer cannot decode those (I suppose corrupt) streams, whereas ffdshow still manages, but exhibits problems normally known from bitstream corruption.
@edit: weird, it only seems to happen with xvid content, avc and lavc is fine.
thed33p
30th March 2005, 01:46
Originally posted by Doom9
I'm having some problems with separate end credits myself.
I'm not sure if that is bad or great news :D
Perhaps mplayer cannot decode those (I suppose corrupt) streams, whereas ffdshow still manages, but exhibits problems normally known from bitstream corruption.
Maybe I'm misunderstanding this completely but if the 'corrupted' stream is binary-merged to then end of the main stream then the beginning of the file should still play fine, should it not? Or does the whole stream have to pass a compliancy check before decoding starts? Does -optimize during muxing have anything to do with it?
On a different note, I have something startnge to report: When I left for work this morning MeGUI was in the final hour of a Automatic 2 pass full movie encode. I wasn't gonna waste 8 hours so I started a 2nd encode in low priority (the 1st one in normal.) When I got home, both status windows were still open - the 2nd one was just finishing up but the 1st one hung at 67%. The funny thing is that both movies encoded perfectly (so I don't know if I should report this as a bug or a feature!!) :D
Doom9
30th March 2005, 13:33
I found out that only my XviD clips had problems.. lavc and x264 worked just fine. I'm glad that it wasn't my filemerger. And I never ran optimize during those tests (it just puts header info in the front of the file.. nothing dramatic that would touch the video in itself).
How did you add your 2nd job? I'm not sure what it should do but the ideal thing to be done would be to just add everything, realize we're already encoding, and leave the new jobs there.. then once the first set of jobs has completed, the next will automatically start (the auto mode puts the program in queue mode, so even non connected jobs will be started.. they just need to be in waiting status).
video
30th March 2005, 15:12
Originally posted by thed33p
Maybe I'm misunderstanding this completely but if the 'corrupted' stream is binary-merged to then end of the main stream then the beginning of the file should still play fine, should it not? Or does the whole stream have to pass a compliancy check before decoding starts? Does -optimize during muxing have anything to do with it?
On a different note, I have something startnge to report: When I left for work this morning MeGUI was in the final hour of a Automatic 2 pass full movie encode. I wasn't gonna waste 8 hours so I started a 2nd encode in low priority (the 1st one in normal.) When I got home, both status windows were still open - the 2nd one was just finishing up but the 1st one hung at 67%. The funny thing is that both movies encoded perfectly (so I don't know if I should report this as a bug or a feature!!) :D
I'm not famliliar so much to encode with mencoder, but is there any possibility, like zoning in the vfw xvid build? You just define two zones from from 0 to credit start and anoder from credit start to end, after that you just specify different quality metrics for credits.
Doom9
30th March 2005, 15:55
I'm not famliliar so much to encode with mencoder, but is there any possibility, like zoning in the vfw xvid build?Yup, but that only applies to XviD. x264, which is what most people use MeGUI for, has no such option.
thed33p
1st April 2005, 00:26
Hastily and with the GO button! I clicked it by means of habit. I'm very pleased about the the jobs finishing correctly though! :)
The 1 status window just stopped refreshing.
About the credits: Would you concider adding 3 textboxes for movie & credits frame start/end numbers numbers or even 4 for credits first? That way MeGUI could adjust the bitrates automatically for the 2 separate encodes, join them, mux them and make it all fit snugly into 716800 MP4!
I know you're a busy man but that feature would rock!
Doom9
1st April 2005, 08:22
The 1 status window just stopped refreshing.Ahh, now that you mention it it makes perfect sense to me. I'm not forcibly closing a progress window from the main GUI unless it gets a status update that says "I'm done". And, there's only one reference to the progress window, so that when you start the 2nd job, the reference is set to the 2nd progress window.. so status updates will not be dispatched to the first progress window anymore. Yet I absolutely have to prevent that 2 jobs can run concurrently.. if you were around, I suspect you'd have seen the status window update twice as much as usual, and flick between high and low completion percentage (from 1st/2nd job). And that's really not how it should be.
Wait for the next version and you will be surprised.. though one thing I can guarantee you: there will be no support for the intro (don't recall the real name.. I recently watched a TV show where one guy was making fun of another because he used the term credits for what comes at the beginning of a movie.. it's the wrong term). That is a "feature" I have never considered useful.
thed33p
1st April 2005, 10:14
Can't wait! <rubs hands together>
The intro feature can be quite useful for older Disney movies - almost all of them start with the "credits"
LigH
1st April 2005, 12:22
Once I applied a horrible "misuse" of intro and credits zoning for the movie "Der Hexer" (a german movie from 1964, based on a story by Edgar Wallace; don't know its original english title - maybe "The Wizard"?!). This movie is mainly in black&white, only the "cast" is artifically colored. So I used: A few minutes in greyscale for the intro, a few minutes in normal encoding for the cast, and the whole rest of the movie as "credits" in greyscale.
By the way: It has a unique aspect ratio of "ultra wide screen" (~3.3:1).
Doom9
1st April 2005, 12:25
btw, Ligh will like the new release too, because it allows you to configure the path of the required commandline tools ;)
LigH
1st April 2005, 14:52
http://www.cheesebuerger.de/images/smilie/froehlich/a020.gif You know me!
thed33p
3rd April 2005, 13:48
I was in the middle of the 2nd pass of a full movie encode when I had my PC turned off (courtesy of my 3-year old!) Seeing as I still had mencoder-2pass.log, I tried to just do the 2nd pass by using the commandline supplied by MeGUI. I specified the same bitrate as was reported by MeGUI originally - 929
F:\x264\megui0_1708>mencoder "E:\DGindex\tgnd\tgnd.avs" -ovc x264 -passlogfile "mencoder-2pass.log" -x264encopts pass=2:bitrate=929:frameref=3:bframes=3:b_adapt:b_pyramid:subq=4:weight_b:4x4mv -o "E:\DGindex\tgnd\tgnd.264" -of rawvideo
MEncoder dev-CVS-050315-21:39-3.4.2 (C) 2000-2005 MPlayer Team
CPU: Intel Pentium 4/Xeon/Celeron Foster (Family: 8, Stepping: 9)
Detected cache-line size is 64 bytes
CPUflags: Type: 8 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
File not found: 'frameno.avi'
Failed to open frameno.avi
success: format: 0 data: 0x0 - 0x17
AVS file format detected.
VIDEO: [YV12] 720x576 12bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:38 fourcc:0x32315659 size:720x576 fps:25.00 ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1 (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
VDec: vo config request - 720 x 576 (preferred csp: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
SwScaler: using unscaled Planar YV12 -> Planar YV12 special converter
x264 [info]: no need for a SAR
x264 [info]: using cpu capabilities MMX MMXEXT SSE SSE2
Selected video codec: [rawyv12] vfm:raw (RAW YV12)
==========================================================================
Writing AVI header...
Pos:6300.0s 157502f ( 0%) 8fps Trem: 0min 0mb A-V:0.000 [923:0]]
Flushing video frames
x264 [error]: specified frame type is not compatible with max B-frames
Assertion failed: pict_type == rce->pict_type, file c:/stuff/x264/build/cygwin/.
./../encoder/ratecontrol.c, line 863
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
The I resulting file is came out at 724868kb.
Was that the wrong bitrate to use / how should i have checked which bitrate to use?
TIA...
Doom9
3rd April 2005, 15:35
For starters you should go into your bios and change the power button to only activate when pressed for a couple of seconds. With ATX, the power button can either by activated immediately, or after pressing it a couple of seconds.. that might stop your kid for a while until he/she figures out what a long press does ;)
I've said it time and again, the bitrate projection in the GUI is not accurate.. it is simply impossible to do so. And your fancy end credits feature will make this even more true. Since your PC was shut down, any bitrate recalculation after audio encoding is lost, and the only way to recover it is recalculate the bitrate manually (formula has been posted here and it's in the source code as well). And, have you verified that using that bitrate you're not supposed to get that size with that bitrate? size = bitrate * length ;) To put it nicely, I'd be mildly disappointed if you hadn't made sure beforehand that your requested bitrate doesn't match the size you got.
Krizzz989
4th April 2005, 15:00
[04:44] <Krizzz989> the output mp4 file seems to only contain audio
[04:46] <bond> i know the problem
[04:46] <bond> tell doom9 he should use " " around his path names
[04:46] <bond> mp4creator.exe -c C:\Documents and Settings\Administrator\My Documents\complete\video\avc1.264 ... is not working
[04:47] <bond> because of the spaces in the path
[04:47] <bond> therefore mp4creatod doesnt add the .264 to the output .mp4
[04:47] <Krizzz989> ah ok
So here's my post: Spaces in my path names is not working, otherwise MeGUI works great for me, thanks for this program :)
bond
4th April 2005, 15:00
someone told me that an output .mp4 file of megui didnt include the video, but only audio
it turned out that the user used spaces in his paths names and megui didnt set " " around the paths to the files and therefore it wasnt a valid command which mp4creator understands
eg
mp4creator.exe -c C:\Documents and Settings\video.264 ...
has to be mp4creator.exe -c "C:\Documents and Settings\video.264" to work
edit: ah, already reported :D
video
4th April 2005, 15:38
Doom9 could you move away from using nero dlls to faac? I'm not satisfied so much with their quality, and if we talk about freeware tools, ehh. Or.. an option to use faac, will be good.
Doom9
4th April 2005, 15:51
Doom9 could you move away from using nero dlls to faac? I'm not satisfied so much with their quality, and if we talk about freeware tools, ehh. Or.. an option to use faac, will be good.According to the listening tests at hydrogenaudio, Nero AAC is superior to faac (but both are topped by Apple's AAC encoder). Plus, faac can't do HE AAC, and BeSweet doesn't support faac which means you have to launch two programs, deal with intermediary files (> 2 GB WAV files can be problematic), etc. Unless DSPGuru adds faac support to BeSweet, faac will always be a no go to me.
LigH
4th April 2005, 16:03
HeadAC3he (currently available: 0.24 alpha 13) supports FAAC. MPEG4IP tools provide an FAAC encoder, too. But indeed - the quality difference may not make it worth a huge effort.
video
4th April 2005, 16:23
Originally posted by Doom9
According to the listening tests at hydrogenaudio, Nero AAC is superior to faac (but both are topped by Apple's AAC encoder). Plus, faac can't do HE AAC, and BeSweet doesn't support faac which means you have to launch two programs, deal with intermediary files (> 2 GB WAV files can be problematic), etc. Unless DSPGuru adds faac support to BeSweet, faac will always be a no go to me.
ehh, just the possibility of faac, if it doesn't hurt, please :) faac can read from stdin even raw pcm, so no need to have intermediate files. tell just besweet to decode AC3 as raw pcm to its stdout and pipe in that pcm into faac :D
Doom9
4th April 2005, 17:22
tell just besweet to decode AC3 as raw pcm to its stdoutAnd how would that work? I don't think BeSweet can do that .. there's no core switch to write to stdout.. BeSweet writes logging info to stdout.
Latexxx
4th April 2005, 18:26
Doesn't azid output to stdout?
LigH
4th April 2005, 19:40
If you use "-" as filename, azid.exe may support stdin/stdout.
But in general, it would use files.
Doom9
4th April 2005, 19:50
forget it guys.. I've thought about audio encoding a great deal before implementing it. BeSweet offers the greates amount of flexibility.. get DG to support faac in BeSweet and I'll implement it.. but I'm not going to offer alternatives to BeSweet.. if you want that.. fire up Visual Studio and code it on your own.
video
4th April 2005, 22:48
Originally posted by Doom9
forget it guys.. I've thought about audio encoding a great deal before implementing it. BeSweet offers the greates amount of flexibility.. get DG to support faac in BeSweet and I'll implement it.. but I'm not going to offer alternatives to BeSweet.. if you want that.. fire up Visual Studio and code it on your own.
Doom9 I'm a dumb ass for windows programming (i am a un*x guy), anyway i've downloaded migw studio, libfaac and an example ac3 plugin source for besweet. So it may happen, that i can do something dll like thingy in at the weekend - if msvc compiled besweet can load gcc compiled dll(s). i dunno. if i success, faac will be available via -plugin(...). is it a must to have aac in an mp4 or it can be raw?
i promise nothing, except that i'm trying... :) i even don't promise that it will be elegant or fast as a first attempt if i suceed....
Doom9
4th April 2005, 22:51
is it a must to have aac in an mp4 or it can be raw?The muxer supports both, so it would be possible to encode to raw AAC, even though that's not foreseen right now (and thus would require some changes in the code).
Doom9
4th April 2005, 22:57
here is v0.18
new: separate credits encoding for both auto and video only mode (only mp4 output is supported though, at least for the moment)
new: paths of the required cli tools can be configured (upon selection, a check for all required files will be done (besweet))
new: a basic filemerger
new: muxer is accessible to manual use
new: video preview including playback (no DirectShow, so it might not play at the exact framerate but it should be close enough) and the usual forward/backward buttons and you can set the credit start frame in the player
changed: all input and output selection textboxes are no longer editable.. that prevents crashes where megui cannot resolve relative paths
changed: commandline editing has been restricted (not possible at all when using credits because there's a lot of file renaming going on behind the scenes, and you cannot edit the path for the cli tools either)
changed: even in auto mode, only one job can be started at once (if you configure another project, it will be queued)
bugfix: muxer now works even if paths with spaces are used
there's probably more, I think I fixed all problems reported and probably introduced some new ones.
video
4th April 2005, 23:13
Originally posted by Doom9
The muxer supports both, so it would be possible to encode to raw AAC, even though that's not foreseen right now (and thus would require some changes in the code).
means i should hack in libmp4v2 as well. sonuds a challenge for me as a first windows program :)
Doom9
5th April 2005, 08:51
so, what did I break except bitrate recalculation in video only mode? I tested it, then tested auto mode, that required some changes, so I thought I'd be smart and also implement the "not yet working feature" of recalculating the bitrate in movie only mode.. now you could end up with a negative bitrate in movie only mode because for those jobs, the desired size is 0 (not set, and if you substract the credits size, it gets negative). either way an easy fix but still.
I might just have broken other stuff.
what's libmp4v2? I figure an mp4 muxing lib.. with libavformat coming, perhaps one day the mux jobs will only be necessary if audio is used, but then comes the problem of merging mp4 files. But that's far off for now. And if only somebody would add credits supports to libavcodec and x264.. it would've saved me a lot of trouble as encoding separately was a major pain in the ass.. the only interesting thing about the end credits from my point was getting the video preview to work.
video
5th April 2005, 14:22
Originally posted by Doom9
what's libmp4v2? I figure an mp4 muxing lib.. [/B]
yeah.. with libmp4v2 you can encapsulate your raw aac audio, into an mp4 and tag it, as artist, title, endsoforth.
JoeBG
5th April 2005, 20:13
@ doom9
Very nice. I´m testing since 2 hours - everything works fine. Now beginning with merging.
Hello doom9,
is there a possibility that you add alphabetic-numeric values in the "Video -> Bitrate" field? You can enter numeric values, but alphabetical input will be ignored.
The mencoder can handle this option:
bitrate=<value>
Sets the bitrate to be used in kbits/second if <16000 or in bits/second if >16000. If <value> is negative, XviD will use its absolute value as the target size (in kbytes) of the video and compute the associated bitrate automagically. (CBR or 2pass mode, default: 687 kbits/s)And i would be pleased by this option to enter a minus-sign to get the target size and not target bitrate.
If I enter the minus-sign manually in the command line, it will work, but there is a popup whether I will use my edited command line or not. Thats a little annoying, in this great tool ;-)
JoeBG
6th April 2005, 18:40
Originally posted by JoeBG
@ doom9
Very nice. I´m testing since 2 hours - everything works fine. Now beginning with merging.
Merging is perfect, but just testet streams outside of containers (*.264).
But there is something I don´t like, sorry for this: The automatic popup of the video preview. It´s because I don´t need it. I´m using AvisynthEdit for creating Avisynthskripts and because of this I had a preview for cropping and trim (for the credits) and for the selection of the needed filters. Would be nice if it be not not a automatic popup. :)
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.