Log in

View Full Version : MeGUI development


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

fegul
3rd January 2006, 23:41
I have the location of DGindex 1.45 listed in the settings, so it should be looking in that directory for the DLL

Also, I tried selecting the default profile, but still got the crash when I hit crop

Also, when I try to preview it, I get a really thin narrow line (like 600x70) even though my video settings are set higher than that, and its just a thin black bar with no video.

Mutant_Fruit
4th January 2006, 00:02
Shouldn't the TODO be moved to Source Forge tasks so that it's not required to get a CVS update just to see the TODO?
Aye. I think if people posted bug reports up there, it'd help coordinate us aswell. That way someone could take a bugreport and assign it to themselves to stop two or more people trying to fix the same bug.

bob0r
4th January 2006, 01:05
megui-x264-svn.exe compiled using compile.bat x264-svn

This is the output:
Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.42
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.

Encoder.cs(91,4): warning CS0618: 'System.Threading.Thread.Suspend()' is obsolete: 'Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. http://go.microsoft.com/fwlink/?linkid=14202'
Encoder.cs(98,4): warning CS0618: 'System.Threading.Thread.Resume()' is obsolete: 'Thread.Resume has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. http://go.microsoft.com/fwlink/?linkid=14202'

Dont know how this affects the compiled .exe so i just report this (it is working as far as i can see)

Sharktooth
4th January 2006, 04:52
those are just warning, the bins should work as expected.

CVS update:
0.2.3.1031 (work in progress)
Fixed AVS default profile selection in MeGUISettings.cs
Fixed PSNR checkbox label for Segoe font (Win Vista default) in x264ConfigurationDialog.cs

Sharktooth
4th January 2006, 05:15
@mutant_fruit: seems some things of your patch have been already integrated... could you re-post your patch for the latest source?

sources: http://www.webalice.it/f.corriga/megui/MeGUI-src.CVS.0.2.3.1031.1.7z

berrinam
4th January 2006, 07:12
Could Doom9 or Sharktooth or charleski do something about the #cvs.lock file which is preventing non-admin developers from using the password-based CVS?

Doom9
4th January 2006, 09:01
Dont know how this affects the compiled .exe so i just report this (it is working as far as i can see)It has no effect, it's just a warning. It will be gone when I'm through with my major encoding section revamp that I'm currently working on.. but it'll be a while until everything is merged.

FYI, here are the main points: At this point I have defined an Interface which video encoders need to implement. It outlines all the basic operations I expect every encoder to provide, plus the means to return results (via the well-known StatusUpdate... it might be modified in the process though as it has become more of a hack with each additional functionality that was added). That would allow different video encoders, even non commandline based ones. Then there's a base class for all commandline based video encoders that implements the interface.. so in the end the actual encoder class is rather small and only has to handle stdout and stderr data (the reading is also done in the base encoder class).. so basically separate between errors and progress reports and decide where to put them and keep the status updated. My xvid encraw encoder is currently only 3k and I don't expect much more work.. most of the legwork is done in the base encoder which can be reused for all other encoders (I plan to merge them eventually).

Also, when I try to preview it, I get a really thin narrow line (like 600x70) even though my video settings are set higher than that, and its just a thin black bar with no video.This means there's an error in your AviSynth script. For reasons unkown (so far), if there's an error, the video size reported via VfW doesn't correspond to the video size that script should have.. so you only get to see black, bug if you play the script in a media player, you'll get to see the error.

The TO DO list is not up to date What is missing / requires updates? Somebody else could be in charge of the todo in a post on this board.. being admin ensures that I can always make my own updates.

Bugtracking can be nice on SF if that's the only facility you have, but I think with this forum we have a well established way of handling just that. And I find myself personally very reluctant to post bugs anyplace but where I'm already a member and since most people are not sf members, trying to move everything there might actually reduce the level of feedback we get. It's not the most convenient for us, but for the user I think sticking to the forum is the better option, and it's what is commonly done for softwares that have their home in this place.

Mutant_Fruit
4th January 2006, 10:08
could you re-post your patch for the latest source?
I'll do that later today, when i get back from work.

bob0r
4th January 2006, 10:12
@Doom9: Okay
@Sharktooth: Okay.... and dont forget to update AssemblyInfo.cs :)

berrinam
4th January 2006, 10:52
What is missing / requires updates? Somebody else could be in charge of the todo in a post on this board.. being admin ensures that I can always make my own updates.
As both this thread and the main MeGUI thread are very long, and this thread is meant only for developers, perhaps it would be worth having a dedicated feature-request/bug-report thread?

On the topic of long threads, here's (http://forum.doom9.org/showthread.php?p=756631#post756631) a feature request which may have been lost in the midst of everything else:Could perhaps the "shutdown when finished" tick box be moved out of the settings onto the queue tab. I keep forgetting to disable it again and will just be doing a simple mux, only for the computer to then shutdown! lol :D

Finally, the D2V Creator seems to be ignoring whether you have the 'and close' checkbox checked. To fix this, change queueButton.DialogResult = DialogResult.Yes; in VobinputWindow.checkIndexIO() to queueButton.DialogResult = DialogResult.None;

Doom9
4th January 2006, 11:08
Finally, the D2V Creator seems to be ignoring whether you have the 'and close' checkbox checked. To fix this, changeHmm.. did somebody break that? I seem to recall that feature working in my latest release build that I used for the codec comparison. Why would the queuebutton need a DR anyway?

And Sharktooth already promised to move the shutdown checkbox.

Doom9
4th January 2006, 11:14
As far as creating multiple threads go.. I think we need a maintainer for the feature request and bug report thread so that he can start (and then edit) the thread. The first post imho should include approved/discarded feature request and verified bugs respectively. And of course, in the bug thread, it's about whipping people into shape to make proper bugreports (don't forget logs, verify the script works properly, proper configuration, etc)

charleski
4th January 2006, 13:49
As I said above: anonymous CVS is a pain, as is making patches. :devil: Can I have my developer access back, please, or can I be made an admin? This 'training period' excuse seems quite flimsy to me.

Yeah, I put you back to developer access.
The question is which access method works best: dimzon was having problems with the CVS access, you seem to be having problems with the Patch Tracker. But I think it's best if we use one consistent method. Both do involve a certain amount of training to get used to the system.

charleski
4th January 2006, 14:05
When I use the Avisynth creator and hit prevew after inputing the d2v file, I get a narrow black bar that has no video.
This basically means that there's a problem reading in the d2v file.
I see from your d2v file that you're using an older version of DGMPDEC, which may well be the problem. Upgrade to the latest version (1.4.6 I believe, but Donald Graft is still actively developing DGIndex) and recreate the d2v file. Make sure that there is no dgdecode.dll in your MeGUI directory, it should use the one in the DGIndex dir, which will be updated along with the rest of it.

Sharktooth
4th January 2006, 16:18
CVS update:
Fixed the D2V creator thing, updated MeGUI version and changelog.

@doom9: i completely forgot about moving the "shutdown" checkbox. However im doing very small changes coz i have not enaugh time (until 7th january) to work on MeGUI... something like 5 mins per day and im still learning :)

Doom9
4th January 2006, 16:25
i completely forgot about moving the "shutdown" checkbox. Well.. it's not a huge change.. if you remove it from the settings dialog, there'll be an error in Form1.cs.. that's the part that needs to be changed for it to work again. And I already put you down for making this change ;) I like breaking bigger things like the whole encoder backend :) I wonder if I get my new and improved backend to work as I want.. if I do it's really quite beautiful.. and while at it I'll probably introduce an option to keep the entire stdout and stderr output for debugging purposes.

godhead
4th January 2006, 17:26
Bugtracking can be nice on SF if that's the only facility you have, but I think with this forum we have a well established way of handling just that. And I find myself personally very reluctant to post bugs anyplace but where I'm already a member and since most people are not sf members, trying to move everything there might actually reduce the level of feedback we get. It's not the most convenient for us, but for the user I think sticking to the forum is the better option, and it's what is commonly done for softwares that have their home in this place.

I guess I'll just have to get used to looking at the newly suggested Request/Bug thread. Unless the maintainer of that thread wants to also make the correct entries in the SF bug tracker. I would volunteer for this, but I'm not sure I have enough time to do this daily as is probably needed.

godhead
4th January 2006, 17:31
I'd also like to propose that once the Feature Request/Bug Tracking thread is created, we move this development thread to the Programming and Hacking/Development forum to further seperate the development discussions from the normal user discussions.

Sharktooth
4th January 2006, 17:37
The previous link to sources was pointing to the wrong file.
... http://www.webalice.it/f.corriga/megui/MeGUI-src.CVS.0.2.3.1031.4.7z

Sharktooth
4th January 2006, 17:40
Well.. it's not a huge change.. if you remove it from the settings dialog, there'll be an error in Form1.cs.. that's the part that needs to be changed for it to work again. And I already put you down for making this change ;)
well... it is since it's in "settings"... or i'm just drunk again?

Raithmir
4th January 2006, 18:45
Also, when I try to preview it, I get a really thin narrow line (like 600x70) even though my video settings are set higher than that, and its just a thin black bar with no video.

Still problems selecting the AVISynth path in the settings (it starts at "c:\program files" and there's no option to select the other drive that the plugins are on. I have however entered the correct address manually in the XML file.

I also have the same problem as fegul, quoted above, when attempting to use deinterlacing or noise reduction.

This is in 1030, I can't see 1031 on SF yet?

Sharktooth
4th January 2006, 19:13
CVS update:
Allowed the selection of any folder to locate avisynth scripts.

sources: http://www.webalice.it/f.corriga/megui/MeGUI-src.CVS.0.2.3.1031.5.7z

Mutant_Fruit
4th January 2006, 21:13
Recreated the dialog patch against the latest source. Its up on sourceforge.

*hopes it gets integrated before someone else changes the source again* ;)

berrinam
4th January 2006, 23:26
CVS Update:
Fixed crash on configuring level-incompatible x264 settings
Fixed the over-restrictive AVC Levels (pixel size vs macroblock size issue), and the ignored Validate AVC Level dialog results

See more about the bugs in BlackSharkfr's post (http://forum.doom9.org/showthread.php?p=762117#post762117)

Doom9
4th January 2006, 23:35
@all developers: as long as I keep the todo list in this thread, could you guys please give me a heads-up when you are working on something/have finished/want to do something? And if anybody wants to volunteer for that task...

berrinam
5th January 2006, 00:01
I'm willing to start feature request and bug report threads. Anything else I need to know before I do?

Doom9
5th January 2006, 09:03
Anything else I need to know before I do?Not really.. just make sure you put up some nice reporting guidelines, but you've already written some in the past. And make sure that no support will be given for those that don't bother with a good report.. we all have better things to do than pull worms out of people's noses.

Similarly, a feature request should contain a good argumentation why a certain feature makes sense, looking beyond the plate that's in front of you.

Sharktooth
5th January 2006, 15:38
Im personally working on bugfixing right now coz, as i said, i have not much time to spend for adding features or stuff.
For the TO DO list, check the changelog.

jmk
5th January 2006, 16:39
i have encountered the following problems with the latest version (but also with the ones before) of MeGui (btw, beautiful program, love it!):

- the window title of MeGui stays at 99% even though everything is finished
- right now it seems, that mp4 muxing in the "oneclick mode" forgetts the chapter file

---
IsoMedia import - track ID 1 - Video (size 640 x 384)
IsoMedia import - track ID 1 - HE-AAC (SR 24000 - SBR-SR 48000 - 6 channels)
IsoMedia import - track ID 2 - media type "odsm:mp4s"
IsoMedia import - track ID 3 - media type "sdsm:mp4s"
Saving ***.mp4: 0.500 secs Interleaving
---

- if i select "auto-detect" in the aspect ratio drop down list and click "signal AR", the correct aspect ratio is not detected (neither in mplayer nor vlc)


and maybe some suggestions, if i may:

- add a button "hide" or "close" or something in the process window. it took me a while before i realized it can be closed without aborting the process.

thanks again for this great program!

jmk

Sharktooth
5th January 2006, 17:16
0.2.3.1031 5 Jan 2005
Redesigned x264 codec config and part of the main form (original patch by mutant_fruit)
Fixed crash on configuring level-incompatible x264 settings
Fixed the over-restrictive AVC Levels, and the ignored Validate AVC Level dialog results
Fixed the displacement of the SettingsForm.cs controls and allowed to select a any folder in Settings to located Avisynth filters.
Fixed the "and close" checkbox in D2V Creator and LoadOnComplete control size
Fixed AVS default profile selection in MeGUISettings.cs
Fixed PSNR checkbox label for Segoe font (Win Vista default) in x264ConfigurationDialog.cs

Sources: http://www.webalice.it/f.corriga/megui/MeGUI-src.CVS.0.2.3.1031.7z
Binaries on SF.

Shinjite
5th January 2006, 17:22
I am just wondering, no more updates on binaries for .net 1.1 for MEGUI?

Sharktooth
5th January 2006, 17:25
No. MeGUI has moved to .NET 2.0.

godhead
5th January 2006, 17:49
@Doom9 and berrinam: Please put me down for the following 2 items on the TODO list.

add support for the -name tag in mp4box
Description: N/A
Status: No-one is working on it

Replace English language names with native language names
Description: N/A
Status : No-one is working on it

Sharktooth
5th January 2006, 17:51
i think i broke the 3-state thing for b-frames with with the latest patch...

partially fixed and CVS updated...

godhead
5th January 2006, 18:47
Yeah, I put you back to developer access.
The question is which access method works best: dimzon was having problems with the CVS access, you seem to be having problems with the Patch Tracker. But I think it's best if we use one consistent method. Both do involve a certain amount of training to get used to the system.

I'd prefer to have CVS access as well if you can enable it for me. I just don't care for the patching method. If the group would rather use the patching method, then I'll force myself with that method.

Just to verify I'm doing the patching method correctly. I'll need to have two copies of the source where one is modified and one if the CVS copy. Once I'm completed with my changes I use WinMerge or other diff tool to create the patch, is that correct? Sorry, never done the patching so maybe that's why I think it's a pain.

Sharktooth
5th January 2006, 18:49
Im still looking at what's missing in x264ConfigurationDialog.cs...
tri-state is not working poperly... but i cant see what's missing (or i am blind)...

godhead
5th January 2006, 18:54
I'd prefer to have CVS access as well if you can enable it for me. I just don't care for the patching method. If the group would rather use the patching method, then I'll force myself with that method.

Just to verify I'm doing the patching method correctly. I'll need to have two copies of the source where one is modified and one if the CVS copy. Once I'm completed with my changes I use WinMerge or other diff tool to create the patch, is that correct? Sorry, never done the patching so maybe that's why I think it's a pain.


Ahh nevermind about my patch question. I just noticed that Tortoise has a patch context menu option that will create a patch file by checking the CVS, so I will only need 1 copy of the source. I guess this is workable.

charleski
5th January 2006, 19:08
Well, ask doom9, he asked if we could try out the Patch tracker feature, as it should provide a more structured method of managing various alterations of the codebase.

BTW, something came to me last night re the 'shutdown when finished' issue - why not have a button on the queue page that will insert a Shutdown job into the queue? This will then be a job like any other and can be moved around in the list. It also means it will be clear from a simple glance at the queue list whether a shutdown is scheduled or not.

If this sounds like an idea I'll code it up.

Sharktooth
5th January 2006, 19:14
it could be interesting.
Could any dev update to the latest CVS and check x264ConfigDialog.cs to find what's wrong with it?

latest sources are here btw: http://files.x264.nl/?dir=./Sharktooth/megui/Sources

Sharktooth
5th January 2006, 19:43
in the meanwhile i pulled 1031 from the file releases...

EDIT: CVS update
More fixes for Segoe font (Win Vista default).

Sources (as usual) are here: http://files.x264.nl/?dir=./Sharktooth/megui/Sources

charleski
5th January 2006, 21:55
0.2.3.1032 6 Jan 2006
Added a button to the Queue tab on the main form: "Add Shutdown". This adds a shutdown job to the end of the queue. Automatic shutdown can still be set using the checkbox in the Settings form.
Fixed tri-state GUI display dependencies in x264ConfigDialog.cs

Actually, the tri-state problem was a side-effect of not allowing showCommandLine() to run when the dialog is first being initialised. I just added a separate call at the end of the load process.

Sharktooth
5th January 2006, 21:56
?!? Where was the error ?!?

berrinam
5th January 2006, 22:01
@jmk: Bug reports should really be posted on the bug report thread. Similarly with feature requests and the feature request thread.


- the window title of MeGui stays at 99% even though everything is finished
Yep, it happens to me, too. Will go on the bug report thread.

- add a button "hide" or "close" or something in the process window. it took me a while before i realized it can be closed without aborting the process.Will put this on the feature request thread.

As to the other bugs you mentioned, they don't happen for me, so you should post a more detailed explanation on the MeGUI Bug Report Thread. This thread is for developers.

charleski
5th January 2006, 22:03
The tri-state stuff is only called by showCommandLine(), and this was disabled when the dialog is being loaded: private void showCommandLine()
{
--> if (!loaded)
--> return;
if (!x264ConfigurationDialog.levelEnforced)
EnforceLevel(this.CodecSettings);
x264DialogTriStateAdjustment(); So when the dialog loads it doesn't go through the x264DialogTriStateAdjustment() code and only adjusts to the right state if you change something.

Doom9
5th January 2006, 22:05
- add a button "hide" or "close" or something in the process window. it took me a while before i realized it can be closed without aborting the process.Hmm.. I don't agree on that.. I took VDub as a model for the progress window and that one also allows closing by pressing X.

berrinam
5th January 2006, 22:08
The tri-state stuff is only called by showCommandLine(), and this was disabled when the dialog is being loaded: private void showCommandLine()
{
--> if (!loaded)
--> return;
if (!x264ConfigurationDialog.levelEnforced)
EnforceLevel(this.CodecSettings);
x264DialogTriStateAdjustment(); So when the dialog loads it doesn't go through the x264DialogTriStateAdjustment() code and only adjusts to the right state if you change something.
I added those two lines because otherwise, MeGUI was sometimes being forced to do a TriStateAdjustment before all the values had been set, leading to a NullReferenceException. Sorry to cause the problem.

charleski
5th January 2006, 22:13
I added those two lines because otherwise, MeGUI was sometimes being forced to do a TriStateAdjustment before all the values had been set, leading to a NullReferenceException. Sorry to cause the problem.
Yeah, one of the problems with event handlers is that the code can waste a fair amount of time needlessly thrashing through them. It just needed an extra explicit call at the end of the load routine.

bob0r
5th January 2006, 22:54
Using megui-x264-svn.exe:

- Selecting profiles HQ-Insane and HQ-slowest then hit config (or select these profiles in config) crashes.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: InvalidArgument=Value of '6' is not valid for 'SelectedIndex'.
Parameter name: SelectedIndex
at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
at MeGUI.x264ConfigurationDialog.set_CodecSettings(x264Settings value)
at MeGUI.x264ConfigurationDialog.videoProfile_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
at System.Windows.Forms.ComboBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
megui-x264-svn
Assembly Version: 0.2.3.1032
Win32 Version: 0.2.3.1032
CodeBase: file:///G:/msys/1.0/home/user/pack/megui-x264-svn.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
_7rwuzjn
Assembly Version: 0.2.3.1032
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Profiles used:
http://forum.doom9.org/showthread.php?t=101813
MeGUI-x264_generic_profiles_v20.7z

Doom9
5th January 2006, 22:59
- Selecting profiles HQ-Insane and HQ-slowest then hit config (or select these profiles in config) crashes.It appears to me that those use subme7.. don't try to use non SVN features with a built that only supports SVN features.. you're the one who wanted that build - I think it was pointed out that this could happen when I added the additional conditional code.

bob0r
5th January 2006, 23:27
Ah ok, i understand.
Coding an option to detect valid profiles can be touch i guess.

Thanks (And yes svn only still is perfect, profiles do not come with the package, i only report what i see :))

Edit:
Moved the other report to the bug report thread, i just noticed it :D