PDA

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

stax76
18th September 2008, 17:56
I must confess that I decided to stop the development from now.

Why? I also considere to stop StaxRip since a very long time, a lot of the work is a bit boring to be honest and I don't feel it lacks much regarding my personal needs. I spended so much time and users also spended much time so it's really hard to let it down. I would much like to fork MPC or MediaPortal, rather MPC in order to improve my C++ skills, I know .NET pretty well so it's not that exciting because there isn't much to explore. Gabest is afaik very talented and experienced so I would gain much from that.

Sharktooth
18th September 2008, 18:06
well, i also consideret to stop some time ago but im still here...
well, my activity as a developer has reduced... and by much but...

Kurtnoise
18th September 2008, 21:05
Why?
mostly the lack of interest for coding. Coding is fun sometimes but sex is better you know...:D:D:D

Second reason is mainly because I'm tired to fix bugs and the lack of knowledge to fix some others...

Ramir Gonzales
19th September 2008, 01:40
That's really harsh to hear, just now, with x264 getting vital changes (always had, actually) it's hard to hear developers of great tools saying these words.:(

Ajax_Undone
19th September 2008, 01:44
Well as long as you guys keep up the development I will keep donating what I can...

It is a great addition to the community here at doom9 and would hate to lose it...

Sharktooth
19th September 2008, 02:33
0.3.0.2015
- (sharktooth) [ProgressWindow] Fix for #2114239 (Progress Windows size).
- (sharktooth) [x264] Changed subme to 2 for turbo first pass. Should ensure a much lower quality drop at the cost of some encoding speed in the first pass.
also released as installer package on sourceforge: http://sourceforge.net/project/showfiles.php?group_id=156112

Nightshiver
19th September 2008, 03:47
http://img183.imageshack.us/img183/7334/thismuch5rz6uofk7.jpg

Audionut
20th September 2008, 02:47
I get this when changing type in the operations section. And the ok button in the matrix editor does not work.

http://img87.imageshack.us/img87/6745/meguibugep5.png

Sharktooth
20th September 2008, 02:55
you know... you have to report the bugs in the bugtracker... not here

Sharktooth
22nd September 2008, 21:16
0.3.0.2016
- (sharktooth) [MainForm] Fixed a cosmetic bug (#2120787)
- (sharktooth) [AviSynthWindow] Fixed various bugs in Auto-Preview
- (sharktooth) [ProgressWindow] Cosmetics (feature request #2119132)

Nightshiver
22nd September 2008, 21:38
lol, there are over 2,119,132 requests?

Sharktooth
23rd September 2008, 01:58
request for what?

Nightshiver
23rd September 2008, 02:50
0.3.0.2016
- (sharktooth) [MainForm] Fixed a cosmetic bug (#2120787)
- (sharktooth) [AviSynthWindow] Fixed various bugs in Auto-Preview
- (sharktooth) [ProgressWindow] Cosmetics (feature request #2119132)

(feature request #2119132)

I dunno. It's just a large number.

Sharktooth
23rd September 2008, 02:54
oh well... i think that's a global number for all projects hosted on sourceforge or something like that.

qyqgpower
23rd September 2008, 15:55
Is crf 1st pass in the TODO list? I think it's pretty useful to determine the approximate bitrate for 2nd pass.

And maybe an automated CRF->VBR 2pass mode can be added?
If the developers would like to implement this feature, I suggest that an option is needed to calculate 2nd pass bitrate(for example 80%) from the result of crf 1st pass.
Since if the crf 1st pass is in Turbo mode, result bitrate is higher, and use this bitrate to do a full quality 2nd pass is overkill for the desired rate factor.

Sharktooth
23rd September 2008, 16:00
0.3.0.2017
- (sharktooth) [x264ConfigurationPanel] Fixed #2123859 (psy-trellis value passed to the commandline when trellis disabled).
- (sharktooth) [AVC CQM Editor] Fixed bug #2120046 (CQM editor crash)
- (sharktooth) [x264] Removed --weightb from the "turbo" options since its behavior was changed when --b-adapt 2 was added.

Sharktooth
23rd September 2008, 16:01
Is crf 1st pass in the TODO list? I think it's pretty useful to determine the approximate bitrate for 2nd pass.

And maybe an automated CRF->VBR 2pass mode can be added?
If the developers would like to implement this feature, I suggest that an option is needed to calculate 2nd pass bitrate(for example 80%) from the result of crf 1st pass.
Since if the crf 1st pass is in Turbo mode, result bitrate is higher, and use this bitrate to do a full quality 2nd pass is overkill for the desired rate factor.
no. please post feature requests in the feature request tracker on the megui sourceforge project page.

hydro
27th September 2008, 12:36
Regarding the issue on finding/predicting mpeg Audio Tracks in OneClick/D2V Creator, was there any particular reason for not using MediaInfo instead of looking at DGIndex -preview when the IFO or DVD-Decrypter file isn't around?

I only found some mention on a google search of MediaInfo not being reliable with .vobs in 2006 (hopefully should have IFO files for these anyway, so could keep MediaInfo as fallback) although I'm hoping that's been fixed.

Kurtnoise
29th September 2008, 12:55
1/ Radioboxes (Quality - Bitrate - Lossless) shouln't be there imo...
2/ I don't think that putting checkboxes for compliancy is a good idea (let's say hd-dvd and ipod. Uusers could check both in this case or I miss something in your statement)...or this should be divided into different parts.
3/ anyway, that's not bad after all. :)

Kurtnoise
29th September 2008, 12:58
Regarding the issue on finding/predicting mpeg Audio Tracks in OneClick/D2V Creator, was there any particular reason for not using MediaInfo instead of looking at DGIndex -preview when the IFO or DVD-Decrypter file isn't around?

it is(was) my plan to add mediainfo queries for this...

Kurtnoise
29th September 2008, 19:14
for those who want to use x264 rev988 or higher within megui, you can use this build (http://www.mediafire.com/?nutmjzmybvk)...:)












or wait an update. :p

hydro
30th September 2008, 11:54
I was trying to get oneclick to work so originally added an extra DGIndex -preview index job with a hack of an extra job.DemuxMode set to 3 to add --preview to the command line and skip all other post-processing tasks. This works but doesn't give me any track selection in the GUI.

I then added some MediaInfo stuff to the oneclick GUI so now need to see if I can undo the DGIndex stuff in the indexing part and use the MediaInfo data.

Let me know if you want me to post the changes although I'm not a developer and this is the first time I've used csharp (other than hello-world to test Mono installs at work) so the code probably needs some refinement.

Kurtnoise
30th September 2008, 17:42
yeah, post a patch...we'll see what we can do with it. :)

If you need some help to create patches : http://mewiki.project357.com/wiki/MeGUI/Helping_with_MeGUI

Kurtnoise
1st October 2008, 20:17
surprise, surprise...:)

http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.png (http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.html)

hajj_3
1st October 2008, 21:55
that looks nice kurtnoise:)

does it by any chance have the ability to find out the language of the audio and subtitle streams as eac3to cant:(

some crashes i experienced in a recent megui and x264 build, these were when i had opened a .avs file in avs script creator as i was wanting to determine how much to crop top and bottom on a bluray movie. I was scrolling through the video and experienced this crash message, the application worked fine though, kept functioning:

http://i37.tinypic.com/5zqob8.jpg

same with the below screenshot:

http://i36.tinypic.com/10ruviv.jpg

The bluray movie had VC-1 video and truehd audio, i used graphstudio, avsp, megui, x264, haali, ffdshow. The source was a single .m2ts file.

rack04
1st October 2008, 22:10
surprise, surprise...:)

http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.png (http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.html)

Very nice. Thanks or the hard work.

Kurtnoise
1st October 2008, 22:59
does it by any chance have the ability to find out the language of the audio and subtitle streams as eac3to cant:(
nope...all HD-DVD and BD discs I have tested w/ EAC3to report correct languages for Audio and Subtitles streams.

some crashes i experienced in a recent megui and x264 build, these were when i had opened a .avs file in avs script creator as i was wanting to determine how much to crop top and bottom on a bluray movie. I was scrolling through the video and experienced this crash message, the application worked fine though, kept functioning
wrong thread.

hajj_3
1st October 2008, 23:39
where should i post those crash screens, thought this would be the correct place.

rack04
1st October 2008, 23:53
where should i post those crash screens, thought this would be the correct place.

http://forum.doom9.org/showthread.php?t=105920

or

http://sourceforge.net/tracker/?group_id=156112&atid=798476

hydro
2nd October 2008, 13:42
Hmmm... TortoiseSVN patch/diff isn't as forgiving as the GNU equivalents :-(

I've posted it as:
2141406 MediaInfo in OneClick and D2V for audio files patch

It builds clean and have tested it against an assortment of .vob, .mpg, .ts and incorrectly named .ts files which are really in MPEG-PS format.

saint-francis
2nd October 2008, 14:00
surprise, surprise...:)

You are fantastic! MeGUI just keeps getting better and better!

Kurtnoise
2nd October 2008, 14:07
I've posted it as:
2141406 MediaInfo in OneClick and D2V for audio files patch

It builds clean and have tested it against an assortment of .vob, .mpg, .ts and incorrectly named .ts files which are really in MPEG-PS format.
got it...thanks.


edit: could you upload a new patch against the last revision please ?

I've comitted a lot of your code...I would like to have the rest.

hydro
3rd October 2008, 14:39
I think you've got most of it, there are some minor changes I've made since then and one correction -- if (putDummyTracks), which I'll post shortly.

I've removed my DGIndex --preview entries as they were occurring too late in the process and didn't allow for read-only source directories (.log file).

The only other changes I have from the repository are for the addition of a default output directory for oneclick, d2v creator and mainform video. I'll post these separately once I've also done mainform audio and added a output text box for AviSynth script creator, which are the areas I've been using recently.

Do you know what this is about in mainform and if it's still relevant post some fixes done months ago by berrinam:

public void openOneClickFile(string fileName)
{
#warning fix bitrate calculator
/* OneClickWindow ocmt = new OneClickWindow(this, VideoProfile.SelectedIndex,
GenericProfile<AudioCodecSettings>.SelectedIndex, jobUtil,
videoEncodingComponent1.VideoEncoderProvider,
audioEncodingComponent1.AudioEncoderProvider);
ocmt.Input = fileName;
ocmt.ShowDialog();*/
}

I noticed it when checking to see where I need to set the output directory?

I forgot to say thanks earlier to all the current and past developers for a great product!!! :thanks:

Kurtnoise
3rd October 2008, 17:37
I think you've got most of it, there are some minor changes I've made since then and one correction -- if (putDummyTracks), which I'll post shortly.

I've removed my DGIndex --preview entries as they were occurring too late in the process and didn't allow for read-only source directories (.log file).

The only other changes I have from the repository are for the addition of a default output directory for oneclick, d2v creator and mainform video. I'll post these separately once I've also done mainform audio and added a output text box for AviSynth script creator, which are the areas I've been using recently.
good...I hope that the oneclick bug will be fixed after your modifs. :)

Do you know what this is about in mainform and if it's still relevant post some fixes done months ago by berrinam:

public void openOneClickFile(string fileName)
{
#warning fix bitrate calculator
/* OneClickWindow ocmt = new OneClickWindow(this, VideoProfile.SelectedIndex,
GenericProfile<AudioCodecSettings>.SelectedIndex, jobUtil,
videoEncodingComponent1.VideoEncoderProvider,
audioEncodingComponent1.AudioEncoderProvider);
ocmt.Input = fileName;
ocmt.ShowDialog();*/
}

no...I've no idea why this is disabled. :(

hydro
4th October 2008, 01:18
good...I hope that the oneclick bug will be fixed after your modifs.


Once you've added the second patches in 2141406 it should all (hopefully) be working :)

public void openOneClickFile(string fileName)
{
#warning fix bitrate calculator
/* OneClickWindowno...I've no idea why this is disabled.

See third patch in 2141406.

I had some trouble opening Form1 in VS2008 Express designer so I did something to fix it in the 3rd patch but I'm not sure if that was the right thing in the right place?

I've posted the default output dir changes in 2144486 (use the _fixed version) although I think the GUI changes may conflict with the new proxy support in the settings window.

Greif
4th October 2008, 04:13
surprise, surprise...:)

http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.png (http://pix.nofrag.com/b/6/2/459ec2368bf7021694585d0fa17d6.html)

What version is this in? What is being used for extracting the streams? eac3to?

Sharktooth
4th October 2008, 04:48
i think kurtnoise is working on it.

Greif
4th October 2008, 05:35
Ok, lots of questions...

What are the design goals for MeGUI? Is there a roadmap for the project? Are there milestones?

I see that there is a Visual Studio 2008 solution in the trunk. Can the project be upgraded to .NET 3.5 and Visual Studio 2005 support be dropped?

How does one get svn commit access? I`d like to take a stab at some of the smaller bugs to get started with the project. :)

:thanks:

edit: I guess I will have to submit patches for review. I will take a look to see what I want to work on and submit something. No clue how to make a patch file - only thing I have ever done with SVN is retrieve a HEAD revision. I will figure it out.

Kurtnoise
4th October 2008, 08:25
I had some trouble opening Form1 in VS2008 Express designer so I did something to fix it in the 3rd patch but I'm not sure if that was the right thing in the right place?

I'll check it out...I used to use the Pro Edition not the EE.

Kurtnoise
4th October 2008, 08:26
What version is this in? What is being used for extracting the streams? eac3to?
yes, it uses eac3to. Let me know if you're interesting by patches, although this part is not finished yet.

Kurtnoise
4th October 2008, 08:38
What are the design goals for MeGUI?
none that I know of...:p

Is there a roadmap for the project? Are there milestones?
no roadmap, no milestones clearly define. Just random ideas...

I see that there is a Visual Studio 2008 solution in the trunk. Can the project be upgraded to .NET 3.5 and Visual Studio 2005 support be dropped?
iirc, that's been already discussed before. Yes, the project can be updated to the .NET 3.5 but it's limited to Win XP/Vista/Server2003-2008. So, to avoid restrictions, we use still the 2.xx. Anyway, I'm still open about this...:)

How does one get svn commit access? I`d like to take a stab at some of the smaller bugs to get started with the project. :)
1/ Install TortoiseSVN
2/ Right click on a folder where you want to store the projet --> SVN checkout
3/ Copy this url of repository in the right place : https://megui.svn.sourceforge.net/svnroot/megui/megui/trunk
4/ Click ok
5/ That's all ;)

The best way for reviews is to split big patches into small ones.

To create a patch:
1/ Select the main folder where the megui code is located.
2/ Right click on this folder --> TortoiseSVN --> Create Patch.

Greif
4th October 2008, 14:38
yes, it uses eac3to. Let me know if you're interesting by patches, although this part is not finished yet.

I love eac3to, I use it all the time. I can help with getting this incorporated into MeGUI.

You can look to some of the GUIs available for eac3to to see how some of the more advanced settings are exposed from a usability perspective.

Greif
4th October 2008, 16:45
iirc, that's been already discussed before. Yes, the project can be updated to the .NET 3.5 but it's limited to Win XP/Vista/Server2003-2008.

At this point, anyone running versions of Windows prior to XP shouldn't be using MeGUI. :p

Kurtnoise
4th October 2008, 17:35
You can look to some of the GUIs available for eac3to to see how some of the more advanced settings are exposed from a usability perspective.
keep in mind that I don't want to extend all eac3to settings in this part. Just use it to demux BD & HD-DVD discs and applied gaps.

Greif
4th October 2008, 17:39
Yeah, I definitely agree, keep it simple.

80% of the users only use 20% of the features.

Kurtnoise
4th October 2008, 17:45
Once you've added the second patches in 2141406 it should all (hopefully) be working :)

A problem remains for those who don't use the oneclick feature (like me :p). In the d2v creator, by applying your patch, getDGindexLogInfo() is running at the end. However, the log file is not created there.

So, here is an idea:
1/ create a boolean to use the DGindex preview.
2/ Apply it to "true" when we run the oneclick form or to "false" when we run the d2v creator tool.
3/ Hence, using this bool value to raise getDGindexLogInfo().

What do you think ?


btw, all patches & fixes from you have been committed now except the log. So, many thanks to you. :)

saint-francis
4th October 2008, 17:46
keep in mind that I don't want to extend all eac3to settings in this part. Just use it to demux BD & HD-DVD discs and applied gaps.

Will eac3to be also added to the audio encoding options in MeGUI so we can transcode some of the new HD audio formats? I understand that you don't want to make MeGUI a full front end for eac3to but the original purpose of eac3to was to deal with the new audio formats. For example if one demuxes all of the tracks from a BD, re encodes the video with x264 and ends up with a 4-8 GB file and then has only a truehd audio track which could be the same size as the video.

I'm really excited about all of this.
Thank you all for you time and effort.

Edit: Are there any updates on being able to donate money to the project?

Kurtnoise
4th October 2008, 17:51
well...with the current build you can already transcode HD audio streams (except eac3 format).

Greif
4th October 2008, 18:19
Any thoughts around prompting EUL agreements from the UpdateWindow?

Looking towards adding NeroAacEnc as an available update.

https://sourceforge.net/tracker/index.php?func=detail&aid=2023934&group_id=156112&atid=798479

Kurtnoise
4th October 2008, 19:36
where licence.txt file is located in your example ? in our server ?



@saint-francis: I believe there is a link to donate on SF but admins project don't seem to activate it in the settings. Wait an answer from Sharktooth or Berrinam or Doom9 himself about that...

Greif
4th October 2008, 19:44
I was thinking if UpdateWindow was to display the EUL prior to downloading, the EUL text would have to be downloaded and prompted to the user.

<neroaacenc type="file">
<eulpath>[path to license]</eulpath>
<filepath version="1.3.3.0">NeroDigitalAudio.zip</filepath>
</neroaacenc>

The [path to license] in the above example would need to parse the EUL from http://www.nero.com/eng/downloads-nerodigital-nero-aac-codec.php. Not very clean. Unless the EUL text can be stored seperately on MeGUI servers (ie NeroDigitalAudio_eul.txt).

In this second example, the EUL is contained within the download and it specified by the 'eul' attribute. The update is downloaded and the license is prompted to the user. If the user does not agree, then the files will be deleted.

<neroaacenc type="file">
<filepath version="1.3.3.0"
eul="license.txt">NeroDigitalAudio.zip</filepath>
</neroaacenc>

It all depends on how the program authors allow their application to be distributed.

Greif
4th October 2008, 19:47
In the case of Nero, they have a public anonymous FTP which they offer the code from. There is nothing requiring users to agree to an EUL prior to downloading from the FTP site.

I'm not a lawyer though, so I don't know if that is legit. :devil:

Kurtnoise
4th October 2008, 21:18
yep...it's the Sharktooth idea. ;)

Patch welcome. :p

Greif
4th October 2008, 21:57
working on it

hydro
4th October 2008, 23:36
A problem remains for those who don't use the oneclick feature (like me :p). In the d2v creator, by applying your patch, getDGindexLogInfo() is running at the end. However, the log file is not created there.

So, here is an idea:
1/ create a boolean to use the DGindex preview.
2/ Apply it to "true" when we run the oneclick form or to "false" when we run the d2v creator tool.
3/ Hence, using this bool value to raise getDGindexLogInfo().

What do you think ?

Although I fixed getDGindexLogInfo() I'm not actually using it anymore. Let me revert to the trunk version and I'll see what's going on. :confused:

btw, all patches & fixes from you have been committed now except the log. So, many thanks to you. :)

Your welcome :D

hydro
5th October 2008, 00:35
A problem remains for those who don't use the oneclick feature (like me :p). In the d2v creator, by applying your patch, getDGindexLogInfo() is running at the end. However, the log file is not created there.


I'm confused. it isn't getting called anywhere in the trunk version:
Find all "getDGindexLogInfo", Subfolders, Find Results 1, "Entire Solution"
C:\Users\aaa\Desktop\megui_trunk\Changelog.txt(21): - (kurtnoise) [VideoUtil] modify trackID & Type in the getDGindexLogInfo() function. Patch by ateeq.
C:\Users\aaa\Desktop\megui_trunk\core\util\VideoUtil.cs(245): public void getDGindexLogInfo(string logFile, out List<AudioTrackInfo> audioTrackIDs)
Matching lines: 2 Matching files: 2 Total files searched: 324
And the call is commented out in my backup copy/patch :confused:
Find all "getDGindexLogInfo", Subfolders, Find Results 1, "Entire Solution"
C:\Users\aaa\Desktop\megui_oneclick_mediainfo\core\util\VideoUtil.cs(239): public void getDGindexLogInfo(string logFile, out List<AudioTrackInfo> audioTrackIDs)
C:\Users\aaa\Desktop\megui_oneclick_mediainfo\core\util\VideoUtil.cs(335): //getDGindexLogInfo(Path.GetDirectoryName(projectSource) + "\\" + Path.GetFileNameWithoutExtension(projectSource) + ".log" , out list);
Matching lines: 2 Matching files: 1 Total files searched: 324

It seems to be working ok for me and demuxes the audio (if I remember to select a track or select demux all) into the project directory. It even loads it into the main form if you tick the load box, however, I did notice that it doesn't automatically load the video. Did that break recently?

Greif
5th October 2008, 01:09
yep...it's the Sharktooth idea. ;)

Patch welcome. :p

Got an unstable patch submitted: https://sourceforge.net/tracker/index.php?func=detail&aid=2146987&group_id=156112&atid=798478

I don't know why but the eul attribute isn't being read in properly. I"m not sure if I have the property being set in the correct spot.

I'm still trying to learn the solution architecture...

Greif
5th October 2008, 06:24
Got the patch working. The EUL is downloaded prior to the update. Either the EUL text file is stored on the application author's server or on MeGUIs.

Please verify the way I am handling the EUL is proper.

As a side note, I'd like to redo the way updates are managed.

Kurtnoise
5th October 2008, 11:14
I'm confused. it isn't getting called anywhere in the trunk version
yes as I said, the DGLog part hasn't been committed yet. (Only on my local tree for testings).

It seems to be working ok for me and demuxes the audio (if I remember to select a track or select demux all) into the project directory. It even loads it into the main form if you tick the load box, however, I did notice that it doesn't automatically load the video. Did that break recently?
I read this in your patch:
+ //AAA: DGLog: List<AudioTrackInfo> list;
+ //AAA: DGLog: getDGindexLogInfo(Path.GetDirectoryName(projectSource) + "\\" + Path.GetFileNameWithoutExtension(projectSource) + ".log" , out list);
+ //AAA: DGLog: for (int counter = 0; counter < list.Count; counter++)


So, I assumed that to use the DGLog part, we have to enable these lines. Am I right ?

Kurtnoise
5th October 2008, 11:17
Got the patch working. The EUL is downloaded prior to the update. Either the EUL text file is stored on the application author's server or on MeGUIs.

Please verify the way I am handling the EUL is proper.
I'm reviewing it. Thanks...

edit: looks ok to me. I need to test it though and I'm waiting Sharktooth reply on this before to commit it.

As a side note, I'd like to redo the way updates are managed.
please, elaborate...:p

hydro
5th October 2008, 13:15
I read this in your patch:
+ //AAA: DGLog: List<AudioTrackInfo> list;
+ //AAA: DGLog: getDGindexLogInfo(Path.GetDirectoryName(projectSource) + "\\" + Path.GetFileNameWithoutExtension(projectSource) + ".log" , out list);
+ //AAA: DGLog: for (int counter = 0; counter < list.Count; counter++)


So, I assumed that to use the DGLog part, we have to enable these lines. Am I right ?

The DGLog part was a work in progress that was never finished after I realised that the dgindex log doesn't contain audio PIDs for transport streams and I then found I can get the all the information from MediaInfo so you can discard those lines.

Kurtnoise
5th October 2008, 16:13
aaa...ok.

So, there is still an issue with the one click encoder. Try with a VOB file as input. Problem rises after the d2v file creation but this is not related to your code afaik.

hydro
5th October 2008, 17:19
aaa...ok.

So, there is still an issue with the one click encoder. Try with a VOB file as input. Problem rises after the d2v file creation but this is not related to your code afaik.

Hmmm... d2v uses IFO or now MediaInfo, I forgot Oneclick used the DVD Decrypter file instead of the IFO to get information. I didn't have any DVD Decrypter sources with the stream info present.

Easy fix, delete stream information.txt :sly:

Alternate fix, see videoutil_getsourceinfo.patch in 2141406.

Kurtnoise
5th October 2008, 20:41
Well...instead of delete it, I prefer to rename it >> patch (http://pastebin.com/f296bfe7c) :)

coz this file shouln't be use anymore.


All in all, the one click encoder is fully functional now. Great...;)

hydro
5th October 2008, 21:15
coz this file shouln't be use anymore.


I that case just remove the call to the function so the file is ignored - smallpatch (http://pastebin.com/m61ea802e)

It's not used anywhere else as far as I can tell and I would have included it's removal in an earlier patch if I'd noticed that subtitles weren't supported in oneclick anyway.

Kurtnoise
6th October 2008, 08:57
applied. Thanks...

Greif
6th October 2008, 15:54
any chance of being added to the sourceforge project? i'd like to take part in the dev forum there.

Greif
6th October 2008, 16:04
@kurt: how's the stream extractor coming along?

I've been creating an object model around the eac3to (ie Feature, IStream, VideoStream, ChapterStream, etc) and developing the code to properly parse the data from StdOut to create the associated objects.

Kurtnoise
6th October 2008, 16:51
almost finished (http://pastebin.com/f20ad40ec)...

quite huge, isn't it ?

Greif
7th October 2008, 02:25
Here is my go at it... I still have a lot to do :)

http://pastebin.com/m71d8a0b8

Kurtnoise
7th October 2008, 11:01
I think you can merge featureWorker_DoWork() & streamWorker_DoWork() by adding members in the function to expose exe path, source drive and extra command lines

something like:
void Worker_DoWork(object sender, DoWorkEventArgs e, string exec, string inputdrive, string args)
{
features = new List<Feature>();
featureWorker.ReportProgress(0, "Retrieving features");

using (Process compiler = new Process())
{
compiler.StartInfo.FileName = exec;
compiler.StartInfo.Arguments = string.Format("{0} {1}", inputdrive, args);
compiler.StartInfo.CreateNoWindow = true;
compiler.StartInfo.UseShellExecute = false;
compiler.StartInfo.RedirectStandardOutput = true;

// Set our event handler to asynchronously read the sort output.
compiler.OutputDataReceived += new DataReceivedEventHandler(featureCompiler_OutputDataReceived);
//compiler.OutputDataReceived += new DataReceivedEventHandler(LogData);

compiler.Start();
compiler.BeginOutputReadLine();
compiler.WaitForExit();
}

e.Result = "Completed";
}

Greif
7th October 2008, 13:19
I think you can merge featureWorker_DoWork() & streamWorker_DoWork() by adding members in the function to expose exe path, source drive and extra command lines

Could I not pass in the arguments when kicking off the background worker process? Something like this...

Create a new Args struct to contain any of the required arguments the DoWork event requires.

struct Args
{
string eac3toPath;
string inputDrive;
string args;
}

Populate the Args struct, then pass it when starting the worker process.

backgroundWorker.RunWorkerAsync(args);

Reference the arguments in the DoWork event of the background worker.

Args args = e.Argument as Args

Greif
7th October 2008, 13:25
And here (http://pastebin.com/m7d93a161) is what I have so far with my eac3to domain.

Kurtnoise
7th October 2008, 14:04
Could I not pass in the arguments when kicking off the background worker process? Something like this...

Create a new Args struct to contain any of the required arguments the DoWork event requires.

struct Args
{
string eac3toPath;
string inputDrive;
string args;
}

Populate the Args struct, then pass it when starting the worker process.

backgroundWorker.RunWorkerAsync(args);

Reference the arguments in the DoWork event of the background worker.

Args args = e.Argument as Args
yeah...everything is possible you know. ;) but that needs to be tested. :p

Some notes regarding your code:
AAC should be dropped (not in BD or HDDVD dics) or you want to have TS files support ?
f.Number = int.Parse(s.Substring(0, 1)); >> f.Number = int.Parse(s.Substring(0, s.IndexOf(")"));
stream.Number = int.Parse(s.Substring(0, 1)); >> stream.Number = int.Parse(s.Substring(0, s.IndexOf(":")));
because you can have digits length > 1

Kurtnoise
7th October 2008, 15:01
MoMa (http://www.mono-project.com/MoMA) scan results (http://kurtnoise.free.fr/MeGUI/output.html) on megui...:sly:

Sharktooth
8th October 2008, 03:29
I'm reviewing it. Thanks...

edit: looks ok to me. I need to test it though and I'm waiting Sharktooth reply on this before to commit it.
dont have time to review it. feel free to post a test build for ... testing :)

Kurtnoise
8th October 2008, 08:32
It was just to have your comment on this. :) Do you like it or do you prefer something else...?

because EULA clearly mentions that : This License does not provide any rights to reproduce and/or distribute this software package in whole or in any part.


So, to test a build, I need to upload on my website the licence and package files.

Kurtnoise
8th October 2008, 11:56
@Greif: I fear that your idea needs to be revisited...See my comment in the previous post above.

Greif
8th October 2008, 13:22
It may only apply to commercial software, but who knows...

Like I said, I'm no lawyer. I think if the data were retrieved from Nero's servers, it might work???

Further down, it states to contact Nero for licensing guidance.

There are a few Nero employees who are regulars on these forums, we could run this idea - or another - by them.

Yes, this is an issue with Nero, but how about other software? In general, does software come with EULs which does not allow for distribution?

Another option would be to list the update on the update, but require a manual download by the user.

Kurtnoise
8th October 2008, 15:04
and what about adding a link into the node like you have done with eula ? this way:

<neroaacenc type="file" displayname="Nero Digital Audio"
eul="http://server/eul-neroaacenc.txt" link="ftp://ftp6.nero.com/tools/">
<filepath version="1.3.3.0">NeroDigitalAudio.zip</filepath>
</neroaacenc>

and add also this item for all nodes. Dunno if it's doable...

ggf31416
8th October 2008, 22:31
Sorry, wrong thread.

Doom9
9th October 2008, 18:28
I asked Nero once if we could distribute their encoder in a way (even if it meant showing the eula first).. the answer then was no.

Greif
10th October 2008, 05:36
@Kurtnoise13:

http://stuff.griffore.com/eac3to.jpg

check
10th October 2008, 05:40
Column header 'extract as' is ambiguous and can suggest no transcoding is taking place. I think you should use a heading which makes it clear to newbies a conversion is taking place. Maybe 'encode to'?

Kurtnoise
10th October 2008, 09:10
@Kurtnoise13:

http://stuff.griffore.com/eac3to.jpg

any patches/code to share ? :p


btw, drive & folder tabs should be merged imo...

Greif
10th October 2008, 13:29
any patches/code to share ? :p

Not yet. I have quite a bit let to do:
code stuff, like commenting, adding license header
inserting into the Job queue (no clue how to do that yet)
waiting to hear back from madshi wrt StdError stream and warnings/information messages
GUI stuff like adding a target output folder
lots of work around my eac3to domain model - getting properties parsed out properly, override ToString()s, etc

Hopefully, I should have something to submit in the next couple of days.

btw, drive & folder tabs should be merged imo...

Yeah, now that you mention it, that makes perfect sense. I have code in there querying via WMI to get a list of populated drives. Seems silly now...

Greif
10th October 2008, 15:55
Column header 'extract as' is ambiguous and can suggest no transcoding is taking place. I think you should use a heading which makes it clear to newbies a conversion is taking place. Maybe 'encode to'?

But what about the scenarios where there is no encoding taking place? How about "Extract To"?

For naming of the extract files I was going to use the following syntax:
[featureName]_[streamNumber]_[streamName].[extractType]

The screen shot shows the stream.Description in the Name column, I have to change the heading to "Description". The name would be the fist token (via comma split) of the description.

rack04
10th October 2008, 16:05
But what about the scenarios where there is no encoding taking place? How about "Extract To"?

How about "Output Format"?

Sharktooth
10th October 2008, 16:23
I asked Nero once if we could distribute their encoder in a way (even if it meant showing the eula first).. the answer then was no.
we wont distribute... we will get it directly from their servers.

@kurtnoise: the link should better point to the file not a folder. i mean, IF the file link is present then that link should be used to get the file (btw the correct link is http://ftp6.nero.com/tools/NeroDigitalAudio.zip).

check
10th October 2008, 17:18
But what about the scenarios where there is no encoding taking place? How about "Extract To"?Yes, it's tricky. If you could add a column that listed the source format people could work it out themselves. But your choice :)

Kurtnoise
10th October 2008, 17:48
@kurtnoise: the link should better point to the file not a folder. i mean, IF the file link is present then that link should be used to get the file (btw the correct link is http://ftp6.nero.com/tools/NeroDigitalAudio.zip).
mmh, maybe I was not clear enough... this implies few modifications in the upgrade.xml file and some changes in the current code.

My goal is to have 4 parameters in the main node:
type
name
eula
link


Then, in the children node only the version corresponding to the package filename.

So, something like that:
<neroaacenc type="file"
name="Nero Digital Audio"
eula="licence.txt"
link="ftp://ftp6.nero.com/tools/">

<package version="1.3.3.0">NeroDigitalAudio.zip</package>

</neroaacenc>


and so on,...

<x264 type="file"
name="x264 AVC Compressor"
eula=""
link="http://megui.org/auto/">

<package version="r998 - Skystrife's patched build">x264-998.zip</package>

</x264>


Hence, to download we parse link + package...If it's to complicated, we can create several nodes instead :
<264
<type>file</type>
<name>x264 AVC Compressor</name>
<eula></eula>
<link>http://megui.org/auto/</link>
<version>r998 - Skystrife's patched build</version>
<package>x264-998.zip</package>>
</x264>

Ramir Gonzales
10th October 2008, 18:07
It's been a long time since I tried (and couldn't get a hold on) MEGui, what drove me away was the fact that there was no real logic in how you would take the steps one after another to get your desired output, but most was that the needed tools where installed in the Programs Folder, thereby disrupting the operation of other movie editing tools.

So my question is : Does the current MEGui version installs the needed apps in a subdirectory of its own, or does it still install them in their usual folder as when you would install the apps manually ?

I really would like to try out the new MEGui, while making sure that other apps (Avisynth, MKVToolnix, etc...Etc...) keep operating nicely with other front-ends.

Sharktooth
10th October 2008, 19:27
megui never did what you say. the only thing that megui will install in another program folder are the avisynth filters.

Greif
11th October 2008, 19:05
http://forum.doom9.org/showthread.php?p=1193742#post1193742

http://stuff.griffore.com/stuff/HdBrStreamExtractor.jpg

I still have to get this integrated with MeGUI and figure out how to add to the job queue.

Jawed
12th October 2008, 01:17
I was, until recently, using MeGUI:

MeGUI Version: 0.2.6.1044
OS used: Microsoft Windows XP Professional Service Pack 3
Framework used: 2.0 SP1

but have fully updated:

[Information] Versions
-[NoImage] MeGUI Version : 0.3.0.3002
-[NoImage] OS : Microsoft Windows XP Professional SP3 (5.1.196608.2600)
-[NoImage] Framework used : 2.0 SP1 (2.0.50727.3053)

I'm using x264 r998.

The clip I have tried to encode is 704x424. The Avisynth script sets:

global MeGUI_darx = 2361
global MeGUI_dary = 1000

With the old version of MeGUI the SAR passed to x264 in the command line was 7109:5000. With the new version of MeGUI the SAR is 195433706533:137439094203.

For whatever reason x264 can't cope with that SAR and sets it to 1:1.

Jawed

Nightshiver
12th October 2008, 01:47
This has been discussed several times before.

Sharktooth
12th October 2008, 16:31
there is a bug in the SAR detection. please feed it manually to x264 with the --sar option (custom commandline options in the codec config window) until we find and fix the bug.

brogan
12th October 2008, 22:09
I have an .mkv that has a resolution of 1920x808 & I'm trying to make it playable in my standalone BD player...I've used Ripbot to stretch files like this but they looked too stretched unfortunately...is there a way in Megui to add borders to get to the 1920x1080 resolution?? I'm not sure if it could be done but there is obviously much more in the way of options than RipBot...any help would be greatly appreciated...

Kurtnoise
12th October 2008, 23:29
buy a BD...:goodpost::thanks:

Jawed
12th October 2008, 23:41
Thanks.

Revision 554 of core.util.dar introduced some funky binary search technique for generating fractions.

This code requests precision to 1e-13. I reckon it only needs to request 1e-5. Some testing wouldn't go amiss...

Jawed

brogan
13th October 2008, 00:57
buy a BD...:goodpost::thanks:


That's an adorable post, thanks! If something is AVAILABLE on BD, I buy it...if it isn't, I make it...thanks for your help, though...

:rolleyes::rolleyes::rolleyes:

rack04
13th October 2008, 01:50
That's an adorable post, thanks! If something is AVAILABLE on BD, I buy it...if it isn't, I make it...thanks for your help, though...

:rolleyes::rolleyes::rolleyes:

Well how about this reply? Re-encode without cropping.

brogan
13th October 2008, 03:32
Well how about this reply? Re-encode without cropping.

That's what I was trying to find out how to do. If I knew how to do that, I wouldn't have asked. I have several files that were either 1920x800 or 1920x808 & I would just make them 1920x1080, in Blu-ray Structure & burn them...but they looked totally stretched...my understanding (I could totally be wrong) was that even if I left the files at their native resolution, when I choose "Blu-ray" as output, they would automatically be resized to 1920x1080...that's why I wanted to know if there was a way in MeGUI to do the "AddBorders" command when creating the script so the video would still be 1920x800 & add the black borders so they would be letterboxed..AddBorders(0, 140, 0, 140) for example...if a movie is in a 2.35 AR, I would like to keep it that way so it doesn't get all mucked up when converting it...

Sharktooth
13th October 2008, 03:53
you dont get it. re-encode from the original without cropping.
if you dont have the original discs then your request is a forum rule 6 violation.
also your posts are off-topic. this is the megui DEVELOPMENT thread. for troubleshoting and other issues or any other help, there are other threads.

LeXXuz
13th October 2008, 21:36
there is a bug in the SAR detection. please feed it manualli to x264 with the --sar option (custom commandline options in the codec config window) until we find and fix the bug.

What about just cropping down the number of digits to 4 or 5 of the calculated sar values before passing them to the encoder? Still should be accurate enough and would solve the problem.

It's just a simple idea ofcourse. :D

Kurtnoise
13th October 2008, 23:36
I don't know why number digits would be the problem but I cannot reproduce here on my side.

So, could you try to describe more precisely what you do (+ what kind of source, pal or ntsc, etc...) ?

Sharktooth
14th October 2008, 01:29
i had such a source once... but it was a rented DVD i no longer have.

Jawed
14th October 2008, 01:38
I don't know why number digits would be the problem but I cannot reproduce here on my side.
x264 can't cope with a 12-digit numerator and 12-digit denominator - have you checked what the acceptable size is for x264?

When given these over-refined SARs, x264 produces a video file with a SAR of 1:1. The encode is fine, in my case, just the SAR is wrong.

If I progressively reduce the significant digits in the fraction sent to x264 (in order to find when the SAR is correct), I eventually get to 10 digits, and an encode with the correct SAR:

"C:\Program Files\megui\tools\x264\x264"
--crf 16 --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --weightb
--subme 6 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --me umh --merange 32 --thread
s auto --thread-input --sar 1954337065:1374390942 --progress --no-dct-decimate -
-no-psnr --no-ssim --output "Test.mp4" "Test.avs"
avis [info]: 704x424 @ 25.00 fps (101 frames)
x264 [warning]: width or height not divisible by 16 (704x424), compression will
suffer.
x264 [info]: using SAR=59641/41943
x264 [info]: using cpu capabilities: MMX2 SSE2Slow
mp4 [info]: initial delay 2 (scale 25)
x264 [info]: slice I:1 Avg QP:10.71 size: 64070
x264 [info]: slice P:67 Avg QP:13.53 size: 41650
x264 [info]: slice B:33 Avg QP:16.23 size: 23646
x264 [info]: consecutive B-frames: 34.0% 66.0% 0.0% 0.0%
x264 [info]: mb I I16..4: 18.8% 43.4% 37.9%
x264 [info]: mb P I16..4: 3.9% 17.7% 11.9% P16..4: 21.9% 26.1% 18.5% 0.0% 0
.0% skip: 0.1%
x264 [info]: mb B I16..4: 32.5% 0.0% 0.0% B16..8: 26.1% 7.7% 11.1% direct:
20.5% skip: 2.1% L0:35.3% L1:20.9% BI:43.8%
x264 [info]: 8x8 transform intra:36.0% inter:20.1%
x264 [info]: ref P L0 56.8% 19.4% 11.8% 6.6% 5.4%
x264 [info]: ref B L0 67.0% 18.2% 8.9% 5.8%
x264 [info]: kb/s:7197.9

encoded 101 frames, 3.70 fps, 7199.06 kb/s

I did this test from a command line, I didn't use meGUI.

Notice the info line "using SAR="? This line does not show when the SAR fraction has too many digits. I guess x264 will only accept numerator and denominator smaller than 2147483648 (2^31). 9 significant digits seems like a safe maximum (i.e. 1e-8 in the code).

So, could you try to describe more precisely what you do (+ what kind of source, pal or ntsc, etc...) ?
25fps PAL in my case, the rest of the info is here:

http://forum.doom9.org/showthread.php?p=1193855#post1193855

I hand code the Avisynth (copy+paste is my friend), not using any of MeGUI's cropping/resizing features - I merely use meGUI as a task manager. I set MeGUI_darx by calculation with MeGUI_dary always set to 1000, unless it's a regular case such as 16:9, and use a simple calculation for X based upon the cropping, the original frame dimensions and the original DAR.

So that's why this particular clip has MeGUI_darx=2361 and MeGUI_dary=1000 and the SAR is 1.421965909090909090909090909...

Jawed

Kurtnoise
14th October 2008, 07:22
upload a sample of your source please...

LeXXuz
14th October 2008, 07:54
x264 can't cope with a 12-digit numerator and 12-digit denominator - have you checked what the acceptable size is for x264?

When given these over-refined SARs, x264 produces a video file with a SAR of 1:1. The encode is fine, in my case, just the SAR is wrong.


I can confirm this. At the moment I'm backing up most parts of my DVD-collection (PAL) to h264 for use with my Tvix box. Almost every third source ends up with those long numerators/denominators. Mostly 21:9 sources get this strange error.

At the moment I start the encode, watch the log file and If I see those long numbers, I simply write down the first 4 or 5 digits, cancel the encode and restart it with manual --sar setting from the numbers of the logfile.

Kurtnoise
14th October 2008, 09:26
http://forum.doom9.org/showthread.php?p=1196265#post1196265

Sharktooth
14th October 2008, 15:33
just forgot to post the latest changelogs:
0.3.0.3003
- (kurtnoise) [AviSynthWindow] fix a small issue with avs profiles (#2152972). Patch by ateeq.
- (kurtnoise) [FilmCutter] replace framerate value by AudioRate(). Fix issue #2152576
- (kurtnoise) [x264] remove fourCC component.
- (kurtnoise) ensure that "," are replaced by "." in the custom lines for x264 & xvid.
- (kurtnoise) [ProgressWindow] change the priority focus to avoid bad surprises...:>

0.3.0.3002
- (kurtnoise) [VobinputWindow] add ThreadSafeRun() to fix the problem of ASW dissapearing as soon as it appears on the system. Patch by ateeq (#2141406)
- (kurtnoise) [VobinputWindow] better rbtracks_CheckedChanged() event. Patch by ateeq (#2141406)
- (kurtnoise) [VideoUtil] remove getSourceInfo() entries to switch using Stream Information DVDDecrypter file.
- (kurtnoise) [OneClickWindow] some clean up.
- (kurtnoise) [VideoUtil] fix a if statement which has been omitted in rev 757.
- (kurtnoise) [MainForm] fix openOneClickFile(). Patch by ateeq (#2141406).
- (kurtnoise) [VideoEncodingComponent & AudioEncodingTab] fix instance Profiles to allow VS2008 designer to load the MainForm. Patch by ateeq (#2141406)
- (kurtnoise) [OneClickWindow] change accessibility for openVideo(). Patch by ateeq. (#2141406)
- (kurtnoise) [OneClickWindow] use DefaultOutputDir for matching the workingDirectory. Patch by ateeq (#2144486)
- (kurtnoise) [VobinputWindow] few tunings in the ifoFile creation. Patch by ateeq (#2144486).
- (kurtnoise) [VobinputWindow] move projectName.Text & add projectPath to the openVideo(). Patch by ateeq (#2144486)
- (kurtnoise) [VobinputWindow] add a checking for projectName. Patch by ateeq (#2144486)
- (kurtnoise) [PrettyFormatting] fix weird results when the source file has the letters vts or video anywhere in the file name. Patch by ateeq (#2144486)
- (kurtnoise) [AviSynthWindow] include an output FileBar. Patch by ateeq (#2144486)
- (kurtnoise) [VideoUtil] remove empty lines at the end.
- (kurtnoise) [MainForm] use null as file extension for openD2VCreatorFile(). Patch by ateeq (#2144486)
- (kurtnoise) [SettingsForm] add Default Output Directory components. Patch by ateeq (#2144486)
- (kurtnoise) [FileBar] add a checking for the Filename. Patch by ateeq (#2144486)
- (kurtnoise) [AudioEncodingTab] use DefaultOutputDir to test the projectPath. Patch by ateeq (#2144486)
- (kurtnoise) [VideoEncodingComponent] use now DefaultOutputDir to test the filePath. Patch by ateeq (#2144486)
- (kurtnoise) [MeGUISettings] add defaultOutputDir as string and its getter/setter. Patch by ateeq (#2144486)
- (kurtnoise) [UpdateWindow] add Proxy support. Patch by gigibop (#2142498)
- (kurtnoise) [MeGUISettings] add getters/setters & default values for the proxy support. Patch by gigibop (#2142498)
- (kurtnoise) [SettingsForm] add autoUpdate Proxy components. Patch by gigibop (#2142498)
- (kurtnoise) [ProgressWindow] fix a priority setting on Vista. Patch by griffore (#2145806)
- (kurtnoise) [x264ConfigurationPanel] few refactoring.

0.3.0.3001
- (kurtnoise) [VideoUtil] remove one iterator.
- (kurtnoise) [x264] update subME items.
- (kurtnoise) [x264] remove bRDO code.
- (kurtnoise) [x264] remove biME code.
- (kurtnoise) [OnClickWindow.Designer] add openOnQueue checkbox. Patch by ateeq.
- (kurtnoise) [OneClickWindow] update to the last changes. Mainly from the patch provided by ateeq.
- (kurtnoise) [FileBar] add performClick() function. Patch by ateeq.
- (kurtnoise) [VobinputWindow] add selectStat as boolean to reflect changes in the radioboxes CheckedChanged events. Patch by ateeq.
- (kurtnoise) [VobinputWindow] use "]" as delimiter for the 2nd argument. Patch by ateeq.
- (kurtnoise) [VobinputWindow] add getSourceMediaInfo() from vUtil & reconstruct ifofile creation into openVideo(). Patch by ateeq.
- (kurtnoise) [VobinputWindow] clear AudioTracks items for all new files, not only VOBs. Patch by ateeq.
- (kurtnoise) [VobinputWindow] add *.m2p as file extension. Patch by ateeq.
- (kurtnoise) [d2vReader] remove duplicated code. Patch by ateeq.
- (kurtnoise) [AviSynthWindow] suggestResolution checked by default. Patch by ateeq.
- (kurtnoise) [AviSynthWindow] return a DialogResult now for gotoD2vCreator() instead of a void & update openVideoSource(). Patch by ateeq.
- (kurtnoise) propagate the last changes to getAllDemuxedAudio() used elsewhere in the code.
- (kurtnoise) [VideoUtil] add audioTrackIDs as List in getAllDemuxAudio(). Patch by ateeq.
- (kurtnoise) [VideoUtil] add getSourceMediaInfo() to the openVideoSource(). Patch by ateeq.
- (kurtnoise) [VideoUtil] remove unused code.
- (kurtnoise) [VideoUtil] modify trackID & Type in the getDGindexLogInfo() function. Patch by ateeq.
- (kurtnoise) [VideoUtil] add SamplingRate as getter/setter & getSourceMediaInfo() function to retrieve some infos via the MediaInfo library. Patch by ateeq.
- (kurtnoise) [PrettyFormatting] use IsNullOrEmpty function & add '\' as delimiter. Patch by ateeq.
- (kurtnoise) [IFOparser] add a test to check whether or not the length of vobFiles is equal to 0. Patch by ateeq.
- (kurtnoise) [VideoPlayer] fix a typo in the VideoPlayer Class summary. Patch by ateeq.
- (kurtnoise) [MainForm] add openAudioFile() to the other video FileType. Patch by ateeq.
- (kurtnoise) [FileBar] add FilterIndex in the openButton_Click() - Patch by ateeq.
- (kurtnoise) [FileBar] add FilterIndex as getter/setter. Patch by ateeq.
- (kurtnoise) [AviSynthAudioEncoder] force the 2nd portion to be long. Patch by ateeq.
- (kurtnoise) [AviSynthAudioEncoder] move AVI sources in the non DShow part. Patch by ateeq.
- (kurtnoise) [ProfileExporter] added a tooltip to the list.
- (kurtnoise) [ProfileImporter] use the ContextHelp stuff for the tooltip like in the x264 config.
- (kurtnoise) [ProfileImporter] put SetToolTips method in the Shown Event instead of the Load one. Presets Importation failed otherwise...

0.3.0.2018
- (kurtnoise) added DTS MA & DTS HD as file extension for audio inputs. updated RaWavSource config according to the last library default settings. Both require NicAudio 2.02 or higher...
- (kurtnoise) [x264Encoder] cosmetics.
- (kurtnoise) added a toolTip in the Presets Importer to inform people that we can check all presets via the right click button on the list.
- (kurtnoise) [VobSubber + D2vCreator] Now, we use the ifo file selected; not necessary the one from the main movie.
- (kurtnoise) [x264Encoder] updated GetFrameString() to have the correct parsing for the last builds (#2132041).

Jawed
14th October 2008, 19:07
upload a sample of your source please...
Here you go:

global MeGUI_darx = 2361
global MeGUI_dary = 1000
blankclip(length=100,width=704,height=424,pixel_type="YV12",fps=25)

that's an Avisynth script that generates this problem with meGUI 3.0.3002. It encodes correctly in meGUI 2.6.1046.

Jawed

hydro
14th October 2008, 19:30
I couldn't find how to remove only completed jobs from the queue. If I haven't missed the obvious here's one way to do it if anyone else is interested:
http://pastebin.com/m71864880

NicMPG123Source creates .d2a files when processing .mp2 files, which get left behind (I originally thought it was DGIndex but it's not), here's a small fix to take care of the problem:
(I didn't apply it to all the mpg formats as it doesn't get created on .mp3 although a .mpa could contain an mp2 stream?)
http://pastebin.com/m112b3630

ps. please let me know if you want any of these posted to Sourceforge.

Kurtnoise
14th October 2008, 22:59
looks good to me...:) I'll apply them tomorrow if no one object.


If you (hydro) and Greif want to join us in the team, you have my vote ;) Give your nicks from SF website to Sharktooth...he'll give you the keys.

Sharktooth
15th October 2008, 03:42
Welcome on board Greif

Greif
15th October 2008, 03:44
Thanks

I'll do my best... :)

Sharktooth
15th October 2008, 03:45
i gave you SVN write access too.

Sharktooth
15th October 2008, 03:50
I couldn't find how to remove only completed jobs from the queue. If I haven't missed the obvious here's one way to do it if anyone else is interested:
http://pastebin.com/m71864880

NicMPG123Source creates .d2a files when processing .mp2 files, which get left behind (I originally thought it was DGIndex but it's not), here's a small fix to take care of the problem:
(I didn't apply it to all the mpg formats as it doesn't get created on .mp3 although a .mpa could contain an mp2 stream?)
http://pastebin.com/m112b3630

ps. please let me know if you want any of these posted to Sourceforge.
.mpa could contain an mp2 stream, but i dont think it's such as common. we'll see if anyone reports a bug or something.
patches seem good to me.

tebasuna51
15th October 2008, 04:21
NicMPG123Source creates .d2a files when processing .mp2 files, which get left behind (I originally thought it was DGIndex but it's not), here's a small fix to take care of the problem:
(I didn't apply it to all the mpg formats as it doesn't get created on .mp3 although a .mpa could contain an mp2 stream?)
http://pastebin.com/m112b3630

NicMPG123Source always create the .d2a file, then the patch must be for mpa, mpg, mp2 and mp3.

Maybe in next version I make optional create the file.
If the file exist AviSynth don't need scan all the audio file to know the sample count when open a second time the same file.

Greif
15th October 2008, 04:25
I'd like to define a MeGUI conditional compilation symbol. That way we can use preprocessor directives, such as:

#if MeGUI
// in the MeGUI project
#else
// outside the MeGUI project
#endif

I would to provide the HD-DVD/Blu-Ray tool as a MeGUI tool window but also as an external EXE.

Pretty much the only place I would need to use them would be on form load/close and on job queue.

Let me know what you think.

Kurtnoise
15th October 2008, 09:12
@Greif: welcome...:) and I asked you something about that on devs forum on SF.

@Hydro: I committed the first one (jobControl).

@Sharktooth: I think it's time to upgrade the package on SF. Now, megui is more stable than before...

@Check : I'm ready to move to the trac system now...:p

ggf31416
15th October 2008, 14:32
Is this intentional?

CommandlineJobProcessor.cs
public void changePriority(ProcessPriority priority)
{
[...]
case ProcessPriority.HIGH:
proc.PriorityClass = ProcessPriorityClass.RealTime;
break;


If it's intentional, could you add a confirmation dialog when the priority is set to HIGH (for OS other than Vista, as Vista already have one)

Kurtnoise
15th October 2008, 14:52
you mean high priority ?

well, no...it's not intentional but I can add the confirmation dialog as well.

ggf31416
15th October 2008, 15:19
you mean high priority ?


I mean if setting PriorityClass to RealTime when priority is HIGH is intentional or not.

Sharktooth
15th October 2008, 15:21
@Kurtnoise: done

check
15th October 2008, 15:44
@Check : I'm ready to move to the trac system now...:p
Bah! If you had mentioned this 15 days earlier :P But it's OK, assuming the other main devs (sharktooth) approves also I'll set it up either this weekend or next.

BTW, about priority, why even have realtime as an option? I think even High should not be there, if people want it they can use taskmgr.exe :p

Sharktooth
15th October 2008, 16:14
RealTime hangs other processes. IMHO it shouldnt be an option. High should be more than enough...

hydro
15th October 2008, 19:35
NicMPG123Source always create the .d2a file, then the patch must be for mpa, mpg, mp2 and mp3.

Maybe in next version I make optional create the file.
If the file exist AviSynth don't need scan all the audio file to know the sample count when open a second time the same file.

I thought I'd pointed it at an mp3 and didn't notice a .d2a but just tried it again and yes it's there.

Is it supposed to work with .mpg files as it just hangs on my system with no output, in MPC hangs at "opening..."?

I can see the usefulness in AviSynth to avoid scanning large audio files but do you think processing an audio file multiple times is a frequent occurence in MeGUI, I din't notice anything that does 2-pass audio encoding and AVS cutting doesn't open the audio file either?

Much simpler change for all Nic123MPG sources: http://pastebin.com/m22dff47

@Kurt: SF nick is ateeq, although I'm not a developer so once I fix the things that feel broken to me in MeGUI I'll probably lose interest...

Sharktooth
16th October 2008, 04:13
hydro, all megui devs code it in their free time. so if you feel you can lose interest, well... that's not a big problem. even occasional patches or discussion about features and bugs are welcome and i gladly accept your work even if you do it only occasionally or when you have time.
that said, the kurtnoise offer is still valid ;)

Sharktooth
16th October 2008, 21:27
welcome on board hydro :)

Sharktooth
23rd October 2008, 19:23
0.3.0.3005
- (ateeq) Removed filename passed to new VobinputWindow as SetConfig passes it anyway. This way OpenVideo isn't called twice.
- (ateeq) clear queue without prompting if all jobs are done
- (ateeq) oneclick fixes
- (ateeq) mod16 undercrop for anamorphic encoding
- (ateeq) delay setting status to done till after postprocessing
- (kurtnoise) [ProgressWindow] trigger the high priority warning for all Windows OS, not only Vista.

0.3.0.3004
- (kurtnoise) [FilmCutter] AudioRate(__film) instead of AudioRate(__just_audio) for else case.
- (kurtnoise) [AMGMuxer] Splitting feature works fine now. Fix issue #2145143.
- (kurtnoise) [JobControl] allow to remove only completed jobs from the queue. Patch by ateeq.
- (kurtnoise) [DAR] use rounding value for SAR calculation. Should fixed issues #2010131 & #2013287.
- (kurtnoise) allow name for Video Tracks in the AdaptiveMuxer & fix several cosmetics spaces. Fix #2063188
- (kurtnoise) [PrettyFormatting] fix issue #2164193 about the wrong length for output filename in the oneClick encoder. Patch by ateeq.

Greif
24th October 2008, 00:37
0.3.0.3005
- (ateeq) mod16 undercrop for anamorphic encoding

Can someone explain this one?

Nightshiver
24th October 2008, 04:04
What's to explain? There was a mod16 overcrop, now there's a mod16 undercrop. What do you think it does?

Greif
24th October 2008, 05:04
I wasn't aware of this feature... had to look deeper to find it.

Sharktooth
24th October 2008, 14:50
from what i see there is now an option to Undercrop instead of overcrop or resize.
Undercropping means the cropping function will not remove some lines to comply with mod16 but it will leave some small black borders around the picture.
over/undercrop features can be automated (using a 8 pixel bias to decide where to undercrop or undercrop)... one day ill do it...

[ReX]
24th October 2008, 20:09
mkvmerge 2.4.0 is out for some time (11 Oct 2008). :)

check
27th October 2008, 07:25
@Check : I'm ready to move to the trac system now...:p

I'll be setting this up before Sunday (once I convince the trac install to coexist with my existing python environment).

Sharktooth
27th October 2008, 19:24
there is a problem... where do we host the megui builds after switching to trac?

check
28th October 2008, 15:16
there is a problem... where do we host the megui builds after switching to trac?
We already have two autoupdate mirrors I'm sure can help out here :) I reckon if you poke jarod you could convince him to run another autoupdate mirror too.

Sharktooth
28th October 2008, 15:25
0.3.0.3006
- (ateeq) [DAR] Alternative SAR fraction calculations for slightly better accuracy
- (ateeq) (AdaptiveMuxer) Allow splitting to same container with Adaptive Muxer
- (ateeq) [AdaptiveMuxWindow] Fix to work with previous baseMuxWindow changes
- (ateeq) [AMGMuxer.cs] File Splitting fix and don't number unless splitting
- (ateeq) [baseMuxWindow.cs] Add DefaultOutputDir and mainForm visibility change
- (ateeq) [MuxWindow.cs] Remove duplication of mainForm between MuxWindow and baseMuxWindow

hajj_3
29th October 2008, 19:45
feature request: Ability to show % error of aspect ratio on the "avisynth script creator" window. Gordian knot has this and i miss that when doing my x264 encodes.

I've done a screen what it would look like, highlighted in blue is the new bits:

http://i38.tinypic.com/eu0t35.jpg

RyaNJ
29th October 2008, 20:23
Question for any devs out there. Any plans to add a Spline64 resize option? My understanding is that AviSynth already has the Spline64Resize filter correct?

Avenger007
29th October 2008, 20:32
@ hajj_3 and RyaNJ
Submit it on the feature requests tracker (http://sourceforge.net/tracker/?group_id=156112&atid=798479).

@Sharktooth, update MeGUI to use DGMPGDec 1.5.3 Final (http://forum.doom9.org/showthread.php?t=129510).

RyaNJ
29th October 2008, 20:45
@ hajj_3 and RyaNJ
Submit it on the feature requests tracker (http://sourceforge.net/tracker/?group_id=156112&atid=798479)

Already done. Just wanted to know how simple it would be to do here :)

hajj_3
29th October 2008, 21:04
added request to sourceforge, thanks.

Sharktooth
29th October 2008, 21:37
@Sharktooth, update MeGUI to use DGMPGDec 1.5.3 Final (http://forum.doom9.org/showthread.php?t=129510).
when my stupid DSL stops acting like a 14.4kbps line...
Pinging forum.doom9.org [213.113.149.94] with 32 bytes of data:

Reply from 213.113.149.94: bytes=32 time=520ms TTL=46
Reply from 213.113.149.94: bytes=32 time=674ms TTL=46
Reply from 213.113.149.94: bytes=32 time=619ms TTL=46
Reply from 213.113.149.94: bytes=32 time=567ms TTL=46
...
... up/down speed is also ridiculous ...

Avenger007
29th October 2008, 21:50
Make sure the modem isn't near any EMI. Also, make sure it's not getting too hot.

Sharktooth
30th October 2008, 18:07
it's the ISP that's having problems with the aggregator.

check
31st October 2008, 06:26
I'd like to move the autoupgrade url for my megui binary mirror to a new hostname. Will the autoupdater follow a HTTP 301/302 redirect without breaking in current versions of MeGUI?

[ReX]
1st November 2008, 12:56
I don't know if it was a download error here, but on last x264 updated build (1016 - Skystrife's patched build) is missing the file pthreadGC2.dll.

If anyone have this problem, download this DLL here: ftp://sourceware.org/pub/pthreads-win32/prebuilt-dll-2-8-0-release/lib/

Kurtnoise
1st November 2008, 13:53
Will the autoupdater follow a HTTP 301/302 redirect without breaking in current versions of MeGUI?
I don't think so but can't you try by yourself ?

Fishman0919
1st November 2008, 14:28
Getting an error after updating to x264 1.016.

Vista error "x264 has stopped working"

skystrife
1st November 2008, 16:06
Getting an error after updating to x264 1.016.

Vista error "x264 has stopped working"

This is my fault, I had my msys environment set up incorrectly for the build (I had it set to my testing environment and stuff borked). I'll post a fixed build soon. Just download that and replace the x264 you have in your megui directory (Sharktooth will replace the build in the autoupdate but he's not online atm).

Fixed: http://skystrife.com/x264/x264.1016.modified.02.exe

Fishman0919
1st November 2008, 19:44
Thank You

Sharktooth
1st November 2008, 20:30
I don't think so but can't you try by yourself ?
it wont work.

saint-francis
2nd November 2008, 03:57
This is my fault, I had my msys environment set up incorrectly for the build (I had it set to my testing environment and stuff borked). I'll post a fixed build soon. Just download that and replace the x264 you have in your megui directory (Sharktooth will replace the build in the autoupdate but he's not online atm).

Fixed: http://skystrife.com/x264/x264.1016.modified.02.exe

Strange. I just encoded a movie with it and didn't have any problems at all. :confused:

Sharktooth
2nd November 2008, 06:04
probably you have (like me) the pthread lib in your windows\system32 folder (or in the path)

Kurtnoise
2nd November 2008, 08:31
it wont work.
why it won't work ? what's the problem ? ...just by curiosity coz I'm a simple newbie about http related stuff. :p

hydro
2nd November 2008, 10:25
I find switching between x264 profiles in the x264 configuration dialog tends to throw a lot of annoying errors in the event handlers.
I'm hoping the fix is as simple as disabling the event handlers during profile switch but has anyone tried this before?

This combination seems to work for my profiles and the few standard profiles I have installed (Insane + portable devices): http://pastebin.com/m528507a7

Kurtnoise
2nd November 2008, 14:43
the init type for "updating" is missing...

hydro
2nd November 2008, 15:24
It's a change to visibility of updating in VideoConfigurationPanel I forgot to include: http://pastebin.com/m610e8ec4

Kurtnoise
2nd November 2008, 17:33
ok...it seems to work fine for me too. :)

Sharktooth
2nd November 2008, 20:16
why it won't work ? what's the problem ? ...just by curiosity coz I'm a simple newbie about http related stuff. :p
coz megui is not a web browser... ;)
the http responses should be manually handled to make the redirect work...

check
4th November 2008, 03:34
can you tell me what functions are called? I'll have a read through the documentation. If it's possible to move the location of the autoupdate files I'd like to do so, but I don't want to break old clients.

Sharktooth
4th November 2008, 15:42
dont worry, that's why we have 2 auto-update servers by default and megui randomly chooses one of them at every startup for updating.
just tell us the new url and we'll change it.

Sharktooth
6th November 2008, 03:06
0.3.0.3008
- (sharktooth) [AviSynthWindow.cs] Default resize values now equal to the source file resolution values.
- (sharktooth) [x264Encoder.cs] --filter -> --deblock
- (ateeq) [x264Settings] Add MacroBlockOptions
- (ateeq) [x264ConfigurationPanel] set/get MacroBlockOptions to/from profiles

0.3.0.3007
- (ateeq) [x264ConfigurationPanel] set updating to avoid triggering spurious events during x264 profile switching
- (ateeq) [VideoConfigurationPanel] Change visibility of updating variable
- (ateeq) [AviSynthWindow] Remember current frame unless loading a new video
- (ateeq) [VideoPlayer] Add startFrame parameter to loadVideo to allow starting with specific frame
- (ateeq) [SettingsForm] Add missing clearDefaultOutputDir EventHandler link
- (ateeq) [AutoEncodeWindow] Change muxedOutput to FileBar
- (ateeq) [FileBar] Set File Dialog InitialDirectory to where current Filename is located
- (ateeq) [JobControl] Allow dependent jobs to run on JobStatus.SKIP
- (ateeq) [VideoPlayer] Help C# with memory management by disposing bitmap as soon as we're finished with it
- (ateeq) [JobControl] Remove job from parent/required job's EnabledJobs list (fixes #2124850)
- (ateeq) [AviSynthWindow] Delay OpenScript until ASW is closed to prevent ARChooser race condition with VideoPlayer
- (ateeq) [ARChooser] Fix to keep user selected ARs

Sharktooth
11th November 2008, 16:50
0.3.0.3009
- (sharktooth) [AVSCreator] Resize filter now disabled by default. AVS presets settings will not be overridden though.
- (ateeq) [x264ConfigurationPanel] Fix doMacroBlockAdjustments for P4x4 compliance at Level 3+ when All option is selected.
i uploaded into the auto-update server a default *scratchpad* AVS preset to disable the resize by default for older installations.
the installer is also available: https://sourceforge.net/project/showfiles.php?group_id=156112

Audionut
12th November 2008, 13:58
IMHO when setting Macroblock options to custom, I should be able to select P4x4 regardless if it breaks compliance.

I appreciate a warning, but hate being forced. :)

Thanks.

hydro
12th November 2008, 19:51
The previous behavior was to reset the level to unrestricted if you tried to set p4x4 so you can achieve the same by setting level to unrestricted (after the next update to fix a stupid bug) before trying to set p4x4?

Audionut
13th November 2008, 04:32
so you can achieve the same by setting level to unrestricted

No you can't. P4x4 is not selectable unless the AVC Level is 2.2 or lower.

P4x4 works fine with x264 and level 4.1 on PS3.

tomcat_
13th November 2008, 08:06
[code]0.3.0.3008
- (sharktooth) [AviSynthWindow.cs] Default resize values now equal to the source file resolution values.

I have noticed that now on the music dvds that i encode the resolution defaults to 720 while before it was at 680....

might sound a silly question as i'm not well up with the resolutions and such....but does this mean that before i was encoding or resizing at 680 where the source was 720?

thanks

Dark Shikari
13th November 2008, 08:07
Please stop trying to force false compliance... all levels allow p4x4.

Adub
13th November 2008, 09:00
@tomcat_
Yeah. The standard resolution for DVD's is 720.

tomcat_
13th November 2008, 10:21
so before the megui was defaulting at 680?

*edit* from what i understand aspect ratio is a hot subject...so reading a bit around...i'm very confused...so i guess i will have to read more...cause i have no clue what i have been encoding so far...as all the dvds were at 680 using the default settings of megui...

Adub
14th November 2008, 02:39
Yes, before MeGUI was defaulting to 640, or whatever it thought was best.

Edit: fixed to 640. oops.

Sharktooth
14th November 2008, 03:02
IIRC it was 640... and that was an arbitrary value, so i removed it.
a fix for the p4x4 thing has been committed. a new build is coming soon.

check
14th November 2008, 16:04
re: trac setup. I was hoping to set trac up on my main server (rather than a spare VM like it was) but it's proving complicated. More updates later this weekend.

Sharktooth
14th November 2008, 17:16
take your time, there is no hurry.

hydro
14th November 2008, 20:36
Please stop trying to force false compliance... all levels allow p4x4.

MeGUI used to reset Level to unrestricted if P4x4 was selected in levels > 3.1 or 3:

invalidLevelHelp = "P4x4 macroblocks are not allowed in level > 3 or in level 3 with B frames.";
I just took that for granted and changed it so you couldn't select P4x4 except <3.1 and unrestricted (ok I got the logic wrong in the current relase so you can't select p4x4 in unrestricted).

If it's related to MaxMvsPer2Mb http://forum.doom9.org/archive/index.php/t-125734.html, then I take it you are saying the check/restriction should be lifted for all levels as the likelihood of running into problems is negligible?

Sharktooth
15th November 2008, 16:06
0.3.0.3010
- (kurtnoise) removed CropDialog Form from projects files. This is not used anyway...
- (kurtnoise) revert rev805...shame on me (#2231667).
- (kurtnoise) [BeSplitter] one frame is missing for end value (#2283781)
- (kurtnoise) [BeSplitter] use dot instead of comma for start & end values (#2283781)
- (kurtnoise) updated MediaInfo library and its wrapper to the latest release (0.7.7.8)
- (ateeq) [x264ConfigurationPanel] Fix to correctly apply last P4x4 change to level 3.1 and unrestricted

hajj_3
17th November 2008, 17:56
please can you add ".mpa" to allowed extensions list in the open dialog box on bitrate calculator, there is .mp2 etc but no .mpa:

http://i33.tinypic.com/10nghgp.jpg

thanks.

Adub
17th November 2008, 19:37
That's a feature request. All feature requests need to go into the sourceforge page, or they will probably be ignored.

hajj_3
17th November 2008, 20:04
is it not a bugfix? as the audio encoding section of the main window can open .mpa files to encode to .mp4 etc so surely the bitrate calculator should be able to do this otherwise the bitrate wont be able to be calculated properly.

check
18th November 2008, 05:43
whatever it is, it's not what should go in this thread.

Dark Eiri
22nd November 2008, 02:15
Can I suggest something? I think it's well known that no MP4 splitters are able to fix negative audio delay.
I wonder if MeGUI could detect if the delay is negative, in the MP4 Muxer and delay the video instead. Wouldn't it fix the problem?

Kurtnoise
22nd November 2008, 08:44
nope...

If there is an audio delay, it should be "fixed" during your audio transcoding unless you use directly the muxer ?

Dark Eiri
23rd November 2008, 03:44
Oh, I didn't reencode the audio. I'm trying to encode some HDTV .ts, the audio already is AAC, so...

Kurtnoise
23rd November 2008, 11:03
this belongs to containers forum but...

did you try to mux directly your audio stream from the ts file ?

Dark Eiri
24th November 2008, 08:26
Demuxed it with DGindex and then added it to the MP4 Muxer inside MeGUI.
I mean, YAMB lets me delay the video, so the audio sync is fixed, I was thinking something like that for the internal MP4 Muxer.
I don't know if standalones can detect the video delay correctly, though...

Sharktooth
27th November 2008, 18:33
0.3.0.3011
- (ateeq) [VideoUtil] MediaInfo Track ID has changed to decimal for all tracks
- (ateeq) [ScriptServer] Add Spline64Resize option

~bT~
27th November 2008, 19:21
for those looking for the new resizer(s)

http://forum.doom9.org/showpost.php?p=958662&postcount=73

Kurtnoise
29th November 2008, 19:33
@Sharktooth: can you update the upgrade.xml file ? to have the yadif node in the avisynth deinterlacer subtree. Thanks...:)

like this one (http://kurtnoise.free.fr/index.php?dir=MeGUI/&file=upgrade.xml).

Sharktooth
1st December 2008, 03:02
why ?

Kurtnoise
1st December 2008, 09:33
as I said...in the updater, to have the yadif plugin in the avs deinterlacer subtree.

Currently, yadif is only in the root, not part of the avisynth filters.

Sharktooth
1st December 2008, 19:08
no, it's not possible. if you move yadif under avisynth section the file will be extracted in the avisynth plugin folder... and that's wrong coz it is a stdcall plugin and should not be placed in the avisynth plugin folder.

Kurtnoise
1st December 2008, 19:23
you can store yadif wherever you want...it's just LoadCplugin or Load_Stdcall_plugin the most important.

Sharktooth
1st December 2008, 19:36
if you move it under avisynth tree it will be stored in the avisynth plugin folder...

check
4th December 2008, 10:32
I believe yadif is no longer a weird plugin but is instead called normally. http://avisynth.org.ru/yadif/yadif.html

Adub
4th December 2008, 10:54
Nope, it's still "wierd". Read a little down on the page you linked to.

Implemented as Avisynth C-plugin (not regular Avisynth plugin).
Must be loaded with Load_Stdcall_plugin("yadif.dll") or LoadCplugin("yadif.dll") (not LoadPlugin !).

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 :)

CoRoNe
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

CoRoNe
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: