Log in

View Full Version : MeGUI development


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 [85] 86 87 88 89 90 91 92

Sharktooth
4th December 2008, 16:57
yep, that's why it should not be placed in the avisynth plugins dir, or avisynth will try to autoload it (using the LoadPlugin) whenever an .avs is "run". that may cause problems.

Emp3r0r
11th December 2008, 17:52
I'm working on a bitrate calculator to help with choosing filesizes based on quality rather than just target filesize. I need this because:

I rarely do a compressablity check
I'm not as concerned about fitting to physical media
When I do aim for a target size, I want to verify I'm using enough bitrate for the video


It essentially adds bits per pixel (bpp) as a prominent guide for choosing the filesize. The idea is that each codec has different efficiencies at different bpp. The ranges can be set and that allows the calculator to give an educated guess about the quality.

There is also one extra component that can be set based on the complexity of the source material. Changing this from low to high that will slightly skew the efficiency ranges.

My question, would anybody else find this useful? If so, I can work towards a patch for megui rather than a standalone app.

Prototype screenshots
http://jvance.com/media/BitrateCalc_thumb6.png
http://jvance.com/media/CodecEfficiencyRanges6.png

Sharktooth
11th December 2008, 18:01
...and... bpp is useless coz it doenst take care of the compressibility of the source...
i've just replied to a guy in the italian forum that was unable to obtain a 8mbps encode (1080p) coz of the default min qp set to 10...
if the source slightly varies from the average compressibility, BPP becomes completely useless...
dont waste your time, all we need is a compressibility test... and i already know how to do it, it's just i dont have time...

Emp3r0r
11th December 2008, 23:54
@Sharktooth: I think you missed the point. Not everyone wants to take the time to do a compressibility test. Also, bpp has been useful to me as a guide for many years. Especially as I tend to encode at various resolutions.

With the calculator, if someone does a compressibility test you could just replace the "complexity" with "compressibility".

Sharktooth
12th December 2008, 03:27
maybe it could be handy if it will be only taken as a guidance.
ill think about it.

Selur
12th December 2008, 11:07
... taking it as general guidance and using it as an option to 'calculate by' like Emp3r0r suggested in his screenshot are different things. ;)
I think a field that shows the bpp shouldn't hurt. :)

Cu Selur

Adub
12th December 2008, 18:50
@Emp3r0r,
I am most definitely interested.

Emp3r0r
13th December 2008, 00:24
@Emp3r0r,
I am most definitely interested.Any suggested changes to the prototype?

Should we relabel quality to something else like, "potential quality" :) or "guidance"? and possibly make complexity more prominent and add some better explanations. I think veteran coder's know what makes a video harder to compress.

Edit: also it isn't obvious from the screenshots but both the audio and ranges were built to support an unlimited number. A scroll bar get's added automatically.

Edit2: the buttons next to the sizes allow you to toggle between "GB, MB, KB, kbps, Mbps"

Also, are the radio button's even needed, I'm not sure what purpose they serve.

check
13th December 2008, 16:38
Devs, I'm shutting down my MeGUI auto-update mirror as I'm planning to move MeWiki to a new machine with a bandwidth cap. I'm hoping to get this done before christmas. It will result in a few hours of downtime for the wiki too, but nothing serious. Might be worth looking for someone else to host an update mirror in the coming weeks. I can't really say how much bandwidth is required because it all depends how much gets updated, but in busier months it was hitting around 300gb.

I'll be looking again at setting up Trac once the wiki is on this new server. Side note: Trac is the most annoying web app I have ever installed :p.

Regarding BPP: I really don't see the point of including a tool for this metric. It's an inaccurate measure and would clutter up the program. It has fallen out of favour for a reason, I hope it dies soon.

alexins
13th December 2008, 17:38
check,
If necessary, I can open an extra mirror for MeGUI auto-update on its web server.

shon3i
13th December 2008, 17:56
It will be nice aslo to include M2TS calculation ;)

Kurtnoise
13th December 2008, 18:46
and a coffee maker...:sly: what else ?

Sharktooth
13th December 2008, 19:13
@alexins: it would be great.
please contact check for the mirroring scripts.

Sharktooth
13th December 2008, 19:13
It will be nice aslo to include M2TS calculation ;)
patches are welcome :)

Reino
13th December 2008, 21:49
Today I updated to MeGUI 0.3.0.3009 (and 0.3.0.3011 via internal update). I have a couple of questions/complaints.

version 0.3.x has a new bitrate calc. it will fit your needs for sure.I'm sorry to say, but it does not. The Bitrate Calculator has to be functional for everyone who uses MeGUI in my opinion! As explained in the quoted thread, it doesn't fit my needs.
I've kept using MeGUI 0.2.5.1007 for a long time solely because the Bitrate Calculator showed me KBs. When I would change the bitrate, all filesizes (in KB as well as MB) would change automatically along. The Bitrate Calculator with 0.3.0.3011 only shows me MBs.
Forgot how the Bitrate Calculator with MeGUI 0.2.5.1007 looked like?
http://img155.imageshack.us/img155/848/megui0251007bitratecalczw7.th.png (http://img155.imageshack.us/img155/848/megui0251007bitratecalczw7.png)
If you would be so kind as to (re!)include this very simple feature, then I'm a very happy man!

Another reason I had to update was because I couldn't use x264 anymore since ± rev.1000, which made me believe there were new features that MeGUI 0.2.x doesn't support.

I noticed the standard 2pass HQ profile now has --subme 7 (Subpixel Refinement: 7 - RD on all frames) set by default. What's the difference between --subme 6,7 and the new -subme 8,9? Is it really worth using as for the time it takes, as for the image quality it produces?

I noticed Adaptive B-frames got another option. MeGUI tells me the recommended setting is 1-Fast, while the 2pass HQ profile has 2-Optimal. So I guess it ís a rather important setting, or is it?

Where have the settings "RDO for B-frames" and "Bidirectional M.E." gone?

I also noticed the 2pass Anime_Toons HQ has Adaptive Quantizers disabled. Is this in some way harmfull for anime content?

Everything else looks very well origanized.
Oh yes, almost forgot... what are "Workers" and what can I do with them?

Sharktooth
13th December 2008, 22:08
about x264 :search:
about the calculator, see below.
workers are used for parallelizing jobs.
every worker can be run in parallel with other workers. that's for maximizing the CPU usage for encoders that do no support multithreading or to just encode 2 or more different things simultaneously.

bitrate calculator (how to set a custom filesize - same applies for audio.):
http://mirror05.x264.nl/Sharktooth/MeGUI/bitrate.png

Reino
14th December 2008, 00:20
I was afraid you would come up with this...
This is not what I meant! I mean the other way around.
When I change the bitrate (with the little arrow-buttons for example) I'd like the filesize (preferably in KBs and MBs and maybe GBs to be future-proof) seeing changed accordingly, just like it did with 0.2.5.1007(!).
If I want to enter a specific filesize to begin with, I'd like to do it the same way I can now as with the bitrate. It's so discursive when you have to go through a menu to be able to enter a specific filesize in KBs, while the end result is still in MBs...
The 0.2.5.1007 Bitrate Calculator was oh so perfect for me in all these aspects! :(

prOnorama
14th December 2008, 01:23
...and... bpp is useless coz it doenst take care of the compressibility of the source...
i've just replied to a guy in the italian forum that was unable to obtain a 8mbps encode (1080p) coz of the default min qp set to 10...
if the source slightly varies from the average compressibility, BPP becomes completely useless...
dont waste your time, all we need is a compressibility test... and i already know how to do it, it's just i dont have time...

I agree the bits/pixel ratio can only serve as a very rough estimation, it can vary greatly between sources

A compressibility test would be great, so I hope you (or anyone else) finds the time to implement it :)

Sharktooth
14th December 2008, 01:32
I was afraid you would come up with this...
This is not what I meant! I mean the other way around.
When I change the bitrate (with the little arrow-buttons for example) I'd like the filesize (preferably in KBs and MBs and maybe GBs to be future-proof) seeing changed accordingly, just like it did with 0.2.5.1007(!).
If I want to enter a specific filesize to begin with, I'd like to do it the same way I can now as with the bitrate. It's so discursive when you have to go through a menu to be able to enter a specific filesize in KBs, while the end result is still in MBs...
The 0.2.5.1007 Bitrate Calculator was oh so perfect for me in all these aspects! :(
what you say does not make any sense. the encoders rate control is not so perfect to hit the very exact size, also if you need a specific size, why dont you set it instead of highering/lowering the bitrate to reach your desired size?
you're grabbing the snake by the wrong end...

check
14th December 2008, 06:15
yep, that's why it should not be placed in the avisynth plugins dir, or avisynth will try to autoload it (using the LoadPlugin) whenever an .avs is "run". that may cause problems.

oops, my bad. I have a copy in my plugins dir though and no problems caused.

check
14th December 2008, 07:58
MeWiki has been migrated. Can you please release a new version of MeGUI without my server in the autoupdate list?

Kurtnoise
14th December 2008, 15:16
you need just an exe or you want to use the updater ?

Kurtnoise
14th December 2008, 16:23
0.3.0.3012
- (kurtnoise) enable SAR in command lines even if the video preview is disabled.
- (kurtnoise) [MuxProvider] add also AC3 streams as supported audio codec for the mp4 muxer.
- (kurtnoise) [ScriptServer] format fps value for DSS (#2320136)
- (kurtnoise) [VideoUtil] add DTS case for getSourceMediaInfo()
- (kurtnoise) [MuxProvider] add AC3 streams support for the mp4 muxer. Requires MP4Box 0.4.5 or higher...
- (kurtnoise) [AviSynthWindow] use the default Encoding Text System to write the avs script (#2306045).
- (kurtnoise) update MediaInfo and its wrapper to the last release (0.7.8.0).

download... (http://www.mediafire.com/?zuzakia2zt2)

check
14th December 2008, 16:26
I have no preference. It's worth waiting though, I'm helping alexins set up a mirror now.

Sharktooth
14th December 2008, 16:59
about "[MuxProvider] add also AC3 streams as supported audio codec for the mp4 muxer", i think mp4box should be updated.
do you know a relatively stable revision that supports ac3 in mp4?
i mean... is this (http://kurtnoise.free.fr/index.php?dir=mp4tools/&file=MP4Box-0.4.5.zip) safe to use?

EDIT: it worked... so i assume it is...

Kurtnoise
14th December 2008, 18:43
yes, it's quite stable for the megui tasks...

alexins
15th December 2008, 21:14
Sharktooth, I made a mirror for MeGUI auto-update, synchronization with MeGUI.org every 30 minutes.
http://megui.xvidvideo.ru/auto/stable/
http://megui.xvidvideo.ru/auto/

Sharktooth
16th December 2008, 00:50
thanks a lot!
be prepeared for a lot of hits with the next megui version...

Kurtnoise
19th December 2008, 17:44
@devs: I started to move a lot of files in the megui project...So, be aware when you'll submit your next patches. Don't forget to update your svn trunk 1st.

Sharktooth
19th December 2008, 17:51
k, thanx.

Sharktooth
23rd December 2008, 04:21
0.3.1.1001
- (kurtnoise) [VobSubIndexWindow] cleanup...
- (kurtnoise) cosmetics renaming.
- (kurtnoise) MKV & MP4 muxers : use getIDFromAudioStream to retrieve the real trackID from mp4 files.
- (kurtnoise) [VideoUtil] add getIDFromAudioStream() function to retrieve track IDs from Audio Stream using MediaInfo.
- (kurtnoise) [MP4BoxMuxer] fix an error for non MP4 files.
- (kurtnoise) MKV & MP4 muxers : use getIDFromFirstVideoStream to retrieve the real trackID from mp4 files.
- (kurtnoise) [VideoUtil] add getIDFromFirstVideoStream() function.
- (kurtnoise) add raw avc streams to the MKV muxer.
- (kurtnoise) [MkvMergeMuxer] now use idxReader to retrieve all indexes & languages from vobsub files. Fix bug #2016031
- (kurtnoise) [idxReader] fixed some errors.
- (kurtnoise) [AudioTrackSizeTab] use MediaInfo lib to retrieve correct bitrate from DTS files. Fix bug #2205309
- (kurtnoise) remove Greyscale option from xvid command line. Not used anymore with the build coming from the MeGUI package tools.
- (kurtnoise) project refactoring and cleanup
- (kurtnoise) add vobsub file reader. Not used yet...
- (kurtnoise) [ProgressWindow] SizingGrip = False for the StatusStrip (#2123282)
- (kurtnoise) some addons to the nsis script (#2399161)
- (kurtnoise) [VideoPlayer] add Time Position to the title if it's checked in the Settings (#2286249).
- (kurtnoise) add a new option to the Settings for the Video Preview.
- (kurtnoise) [Util] add TimeString() function to format seconds to string.
- (kurtnoise) [D2V Creator] loadOnComplete & closeOnQueue checked by default now (#2207467)
- (sharktooth) [Settings] updated megui auto-update mirror url
Installer avaliable on sourceforge: https://sourceforge.net/project/showfiles.php?group_id=156112

A CLEAN INSTALL IS RECOMMENDED (backup your presets first!).

Sharktooth
23rd December 2008, 04:32
@devs: in the next update i plan to add textsubs option (for hardsubbing) in avs creator (i'll include the filter in the autoupdate) and ipod muxing option.
if i find some more time, VBV parameters for xvid and some DivX compatible presets.

Nightshiver
23rd December 2008, 06:05
Very nice :)

dbakr
3rd January 2009, 02:41
Guys, change default parameter values in x264 preset for Blu-Ray of VBV Buffer size and max bitrate to 30000 and 38000 respectively, for compatibility to Sonic Scenarist (and also Blu-Ray spec at all, 30000 is max allowed cpb buffer size).

Dark Shikari
3rd January 2009, 02:48
Guys, change default parameter values in x264 preset for Blu-Ray of VBV Buffer size and max bitrate to 30000 and 38000 respectively, for compatibility to Sonic Scenarist (and also Blu-Ray spec at all, 30000 is max allowed cpb buffer size).The Blu-ray spec doesn't say anything about "38000." Perhaps you meant "40000"?

Sharktooth
3rd January 2009, 14:36
it's definatly 40000... as published in the blu-ray specs...

Sharktooth
5th January 2009, 19:49
0.3.1.1002
- (kurtnoise) use string.IsNullOrEmpty() internal function for muxers.
- (kurtnoise) [MKVMergeMuxer] fix a missing case with mkv files as input.
- (ateeq) [OneClickPostProcessor] Assume non-interlaced if source type not detected due to insufficient useful sections to prevent crash during post-processing

0.3.1.1003
- (kurtnoise) add automatic SBR detection from aac streams to the MKV & MP4 muxers.
- (kurtnoise) update MediaInfoWrapper library and code using the new settings.
- (kurtnoise) updated AudioTrack part.
- (kurtnoise) add dots cases in ReplaceFPSValue() function (country environment dependent). That should fix fps rounding errors for the mkv muxer.

0.3.1.1004
- (kurtnoise) [PrettyFormatting] add default value for ReplaceFPSValue() in the switch/case.
- (kurtnoise) [JobUtil] format framerate value to avoid desync. Fix bug #2463080

0.3.1.1005
- (kurtnoise) [VideoEncodingComponent] same anchor settings for Edit Zones & Enqueue buttons.
- (kurtnoise) [MainForm] few tunings: move Help & Reset buttons to the bottom left corner, add a One-Click button to the bottom right corner.
- (kurtnoise) [OneClickConfigPanel] CheckOnClick = True
- (kurtnoise) [VideoUtil] use IFOParser class to retrieve audio streams infos if ifo file detected. Hence, we have Languages in the Audio Streams selection for the One-Click Encoder like in the d2v creator.
- (kurtnoise) removed avc2avi muxer.

0.3.1.1006
- (kurtnoise) [UpdateWindow] cosmetics - singular/plural for comments.
- (kurtnoise) [x264Encoder] enable --aud command for all output types.
- (kurtnoise) Form1.cs --> MainForm.cs
- (kurtnoise) [MainForm] help button refactoring.
- (kurtnoise) [MainForm] enable reset button event.
- (kurtnoise) [x264Encoder] add --aud switch for raw avc output files. Recommended by the specs.
- (ateeq) [OneClickWindow] Move SignalAR check box within window so it's visible
- (kurtnoise) update copyright date...;-)
- (kurtnoise) [AviSynthAudioEncoder] fix an error in the wav header writing. Now, the avisynth decoder filter will always use the highest resolution supported by the encoder. No more restriction...
- (kurtnoise) [AviSynthAudioEncoder] re enable temporary the 16bits conversion. Without this, it produces an output garbage with the current code...
- (kurtnoise) [Util] cosmetics
- (kurtnoise) Fix a buffer overrun issue. Dohh !!! First time I see this...
- (kurtnoise) [AviSynthAudioEncoder] remove ConvertAudioTo16Bit() restriction.
- (kurtnoise) update AvisynWrapper library and its wrapper to support any audio bits depth. Requires Avisynth 2.5.7 or higher...
- (kurtnoise) put megui icon to all forms.
- (kurtnoise) [VideoUtil] fix an error in getSBRFlagFromAACStream()

New installer package at: https://sourceforge.net/project/showfiles.php?group_id=156112

Sharktooth
7th January 2009, 18:26
0.3.1.1007
- (kurtnoise) [MainForm] launch the updater only if avisynth is installed.
- (kurtnoise) [AviSynthAudioEncoder] add --ignorelength to the vorbis command line. Useful with +4GB files.
- (kurtnoise) [AviSynthAudioEncoder] fix a bug with the vorbis encoder and add a conditional case for accuracy concerning input bits depth.

0.3.1.1008
- (kurtnoise) fix a bug for muxers when we have several tracks.
- (ateeq) [JobControl] Ignore workers starting with "Temporary worker " without any jobs, set w.Mode to CloseOnLocalListCompleted and add jobs to worker queue using w.AddJob.
- (ateeq) [JobWorkerWindow] Fix for race condition with "shutdown worker" prompt and job progress updates although it may not happen outside a debug session.

SacredCultivator
7th January 2009, 18:44
Thanks, thought it'd fix the Audio Encoding issue, but guess not.

Seraphic-
7th January 2009, 22:29
0.3.1.1006
- (kurtnoise) [AviSynthAudioEncoder] fix an error in the wav header writing. Now, the avisynth decoder filter will always use the highest resolution supported by the encoder. No more restriction...
- (kurtnoise) [AviSynthAudioEncoder] re enable temporary the 16bits conversion. Without this, it produces an output garbage with the current code...
- (kurtnoise) [AviSynthAudioEncoder] remove ConvertAudioTo16Bit() restriction.
- (kurtnoise) update AvisynWrapper library and its wrapper to support any audio bits depth. Requires Avisynth 2.5.7 or higher...



So was the ConvertAudioTo16Bit() restriction definitely removed as of now? In the updates it says "re enable temporary the 16bits conversion".

Sharktooth
8th January 2009, 03:48
- (kurtnoise) [AviSynthAudioEncoder] fix an error in the wav header writing. Now, the avisynth decoder filter will always use the highest resolution supported by the encoder. No more restriction...
what do you think?

tebasuna51
12th January 2009, 01:19
I think the Audio Option 'Improve Accuracy using 32bits and Float computations' in now obsolete.
And the 'Increase Volume automatically' is, at least, confuse. I can't select Normalize without DRC.

I suggest delete these options and use something like:
- Apply Dynamic Range Compression in AC3/DTS sources
- Normalize peaks to 100% (or a slider/box to select a value)

And maybe we can add also a new option easy to implement like the 'Ouput channels' list with:

Samplerate/Speed:

Keep original
Change to 44100 Hz SSRC(44100)
Change to 48000 Hz SSRC(48000)
SpeedUp (23.976->25) AssumeSampleRate((AudioRate()*1001+480)/960).SSRC(AudioRate())
SlowDown (25->23.976) SSRC((AudioRate()*1001+480)/960).AssumeSampleRate(AudioRate())

Kurtnoise
12th January 2009, 09:38
Good idea...I'll add/remove them this week. :)


There is also a new feature about audio stuff that came to my mind yesterday : built a custom transcoder (to use any audio encoders).

Kurtnoise
17th January 2009, 14:04
@Sharktooth: when you have time, could you update aften ac3 dvd presets ? (just force the resampling to 48000Hz)

I can upload them if you prefer...

Sharktooth
17th January 2009, 16:32
tonight or tomorrow, or just upload them.

Kurtnoise
18th January 2009, 18:56
http://www.mediafire.com/?kmjjzmomw2q

JarrettH
19th January 2009, 07:44
This may be a little broad to say so, but I don't think we need 40-50 audio presets. It's an extremely confusing list. Forgive my ignorance, but who is using anything besides Nero or LAME to encode audio for a video file? AC3 can just be used straight from the DVD rip, Vorbis is a nice alternative but not needed really, Winamp AAC not sure why when most people believe Nero to be the best AAC encoder. Just my thoughts. I've never encountered the situation where I would want to use any of the other options.

Kurtnoise
19th January 2009, 10:35
you're not forced to download all presets...;)

COOLBGT
30th January 2009, 16:11
Not sure why but after the last update 0.3.1.1011 when encoding everything appears more yellowish. I haven't noticed such a weird issue before that. I guess there is some issue with the color corrections since when turned off the problem disappears.

Kurtnoise
30th January 2009, 16:53
the only thing that changed is the adding of "threads=0" for ColorMatrix(). So...:rolleyes: