View Full Version : MeGUI development
mroz
6th November 2007, 17:56
For my immediate needs this is probably more than I need, most of the movies I want to convert tend to be from the same source (digi cam) and I intended to use x264 in const. quality mode. The most I really need is to rotate by 90 degrees some of the movies, not sure how to automate a test for that though if it is even possible.
That's an interesting problem. I wonder if average orientation of motion vectors would tend to show more movement in the horizontal plane? If I wanted to pursue that I'd look into avisynth & mvtools - it might be possible to get that info out of mvtools; I'm not sure.
In some ways it also goes against what I am hoping to achieve here as well by making the process more complex . This could be largely mitigated through good UI design and well thought out defaults.
I certainly appreciate the desire to keep the interface clean.
As I said earlier, part of my motivation here to create a new tool is the fact that the "One Click Encode" tool is not even close to one click and far too complex for a simple transcode operation.
I didn't explore Megui's one click encode much as it didn't seem to meet my needs for any of my own use cases, but that's perhaps not surprising as a one click solution is ambitious if it's to cover more than a very restrictive set of sources & do a decent job.
While MeGUI is quite powerful and I like the concept, it is not a very clean design and not very user friendly.
That was my initial impression too but perhaps through a few months familiarity I've lost that perspective. Certainly I'd say it feels like a tool set which has evolved, rather than an integrated whole designed with consistent aims. Not that I'm criticising Megui, should it come across that way; I find it highly functional or I'd not be bothering posting in these threads. It's also harder obviously to achieve unification when underlying tools are third party.
I think this holds it back a great deal and as such I want to keep the transcode tool as "clean" and easy to use a possible.
Fair point. As it happens I like clean too.
Having said that, I certainly wouldn't rule out what you are after though I am not sure how it would work. It seems like it might be a very niche requirement and so might be better implemented in some scripting way, possible AVISynth? I'm not very familiar with the power of the AVISynth scripting language, but if what you are after was possible (in some part at least) in AVISynth then it would effectively work right in with what I am planning as I will take my input from an AVISynth template which could (possibly) contain your custom preprocessing.
I don't think the preprocessing could be done at encode time - typically it would need an initial pass to assess the entire source. That said, it would be AVISynth based.
I'm no AVISynth guru, but yes, AVISynth is very powerful & would be used to perform most of the tests (via Megui's Analysis job type - which runs a script via Mencoder with null output; analysis results are written to a log file as the script proceeds via WriteFile (http://avisynth.org/mediawiki/WriteFile).
Writing generic template g(i) to mean {audio profile(i), video profile(i), containor type(i), avs template(i)} (where by (i) I mean depending on i, not merely indexed by i)
Your model currently looks like:
transcode template <-> g
Essentially the additional functionality needed of your user interface would be
transcode template <-> { analysis script, {g(i) for a small range of i}}
A transcode job would then consist of one (optional) analysis job, the output of which selects which g(i) to appy for the main transcode.
Personally I'd like to see a special case of g(i) which doesn't perform an encode but instead outputs a log in place of the encode, explaining that the user needs to intervene as the analysis stage couldn't reach an automated conclusion.
As you say, with a well designed user interface & default settings, the necessary gui could be virtually indistinguishable from one providing your original functionality. All that needs to be visible is the option, when defining a transcode template to add an analysis script (from a drop down list of predefined scripts); as soon as this is selected, the gui modifies slightly to allow the transcode template to define multiple g(i) rather than a single g(i) - perhaps via multiple tabs (I'm getting ahead of myself here, but the tabs could take meaningful names from suitable comments in the analysis script).
Does that make sense at all?
Eamon21
6th November 2007, 18:10
@mroz: Ok, I see what you are getting at. I doubt it will be in the initial version of the tool, but I will keep it in mind for the design with a view for possible addition later.
mroz
6th November 2007, 18:17
@Eamon, regarding detecting orientation, are you able to restrict the choices to one horizontal & one vertical? For example, I doubt you shoot much material with the camera upside down, but when it's on its side, is it always orientated the same way?
I'm guessing it might be possible to tell horizontal from vertical, but up from down is probably much harder.
Eamon21
6th November 2007, 19:22
@Eamon, regarding detecting orientation, are you able to restrict the choices to one horizontal & one vertical? For example, I doubt you shoot much material with the camera upside down, but when it's on its side, is it always orientated the same way?
I'm guessing it might be possible to tell horizontal from vertical, but up from down is probably much harder.
Unfortunately not, while it is possible that I have, I am not certain. I can't really see how it would be possible for a computer to tell which way the video was shot without some freakishly complex algorithms and horsepower. Even then I wouldn't bet on it getting it right all the time.
Given how much easier it would be for me to just look at the thumbnail for each movie and decide which ones to rotate, I don't think it is worth pursuing an auto rotate. Happy to use one though if someone else comes up with a reliable method :)
berrinam
7th November 2007, 03:13
3 bugs left... :)
the 120dpi font issue can be postponed after the "stable" release though...
just a curiosity... yesterday MeGUI surpassed the 600 downloads/day (sourceforge statistics (http://sourceforge.net/project/stats/?group_id=156112&ugn=megui)). keeping that pace, it generates about 18Gigz/month of traffic on the SF mirrors... plus the near 3000 project page views...
i wonder how much traffic is generated monthly on the autoupdate server...
The update_cache seems to cause problems with people who attempt a "clean reinstall" of MeGUI, since I think they often leave the update cache behind. Would it be possible for the MeGUI uninstaller to delete (or give the option of deleting) the update_cache registry key?
Also, about autoupdate bandwidth: we may be able to transfer some of this load to Sourceforge if we additionally distribute "offline installs" -- these installs would have to set the update_cache registry key and which fill the update_cache folder with the files off the server. I don't know any installer scripting, so I can't do this, but I think the option of this could be good for some people, and it could result in fewer downloads from the autoupdate server.
berrinam
7th November 2007, 03:50
via Megui's Analysis job type - which runs a script via Mencoder with null output; analysis results are written to a log file as the script proceeds via WriteFile (http://avisynth.org/mediawiki/WriteFile)Just to clarify a point on this: MeGUI achieves the same result as this without the mencoder dependence: MeGUI just plays through the script directly, since it already can interface with Avisynth
mroz
7th November 2007, 03:51
Unfortunately not, while it is possible that I have, I am not certain. I can't really see how it would be possible for a computer to tell which way the video was shot without some freakishly complex algorithms and horsepower. Even then I wouldn't bet on it getting it right all the time.
Given how much easier it would be for me to just look at the thumbnail for each movie and decide which ones to rotate, I don't think it is worth pursuing an auto rotate. Happy to use one though if someone else comes up with a reliable method :)
It just seems like an interesting challenge. I want to test my idea that typical material will have more horizontal motion than vertical.
MVTools (an AVISynth plugin) already has a depan function which will generate some stats on global motion in each frame. If I can get it to spit these into a log file I'll run a few checks to see if there are such patterns.
If it works at all I'd still not want to bet on reliability though ;)
And that still doesn't begin to address how one tells up from down.
mroz
7th November 2007, 03:54
Just to clarify a point on this: MeGUI achieves the same result as this without the mencoder dependence: MeGUI just plays through the script directly, since it already can interface with Avisynth
Thanks, that's important to know. How does it open the script? Does it suffer from the same problems as MEncoder requiring the hack of appending a call to Distributor() to the end of the script in order to allow SetMTMode() to be effective?
Edit: /checks
Yup, it does. An analysis pass for this scriptSetMTMode(2,0)
leaf1="noSetMT-md5-A6D1176F8C46CA800278D64FCA94C160"
leaf2="SetMT-t1-tsp1-md5-64920A02A02CB3332F27D88797B3DBC1"
global c1=AVISource("E:\Work\test\hfyu_MVMT-longtest-"+leaf1+".avi")
global c2=AVISource("F:\Michael\My Documents\VideoCompilations\hfyu_MVMT-longtest-"+leaf2+".avi")
global total=0
global file="E:\Work\test\compare-"+leaf1+"-"+leaf2+".log"
BlankClip(c1, width=16, height=16) # maybe 15% faster than using c1 as our 'dummy' clip (& 100% faster than using subtract(c1,c2) with variation subtitled)
WriteFileStart(file, """ "vim:tabstop=6"+chr(10) """, """ Time("%#c")+chr(10) """, """ "Frame"+chr(9)+"Total"+chr(9)+"Variation" """, append=true)
WriteFileEnd(file, """ "Test complete."+chr(10) """)
ScriptClip( """
variation = LumaDifference(c1,c2)+ChromaUDifference(c1,c2)+ChromaVDifference(c1,c2)
# nb1 keeping writefile inside here allows us to store variation as local, reducing problems with running in MTMode 2
# nb2 aside: writefile doesn't want to when called inside FrameEvaluate; anyone know why?
# nb3 sometimes the running total is reported incorrectly in MTMode 2 as another thread updates the total before code writes out data to log;
# this isn't terribly important & can be corrected as is implicit in data set
# nb4 compare against 0.0001 instead of 0 to allow for rounding errors - 2 identical files will report a variation of 0.000022
WriteFileIf(file, "variation>0.0001", "current_frame", "chr(9)", "thistotal", "chr(9)", "variation")
global total = total + ((variation>0.0001) ? 1 : 0)
thistotal = total # massively reduce chance of MTMode 2 screwing up logging of total
return last
""" )
#Distributor()
gives me 44fps & 23% cpu load without Distributor & 137fps around 80% cpu load with it.
This is the same situation one faces when doing a prerender pass in Megui via MEncoder.
I don't know how much I've posted in Megui threads about this before, so I'll summarise the conclusions reached with the help of MT's dev tsp & AVISynth dev IanB. When a script is opened as an AVIfile with an MT aware AVISynth, & the script is seen to invoke SetMTMode, it is able to append to the filter chain a call to Distributor; when however the script is imported or otherwise fed into a dynamic AVISynth environment, AVISynth has no easy way to know when the script is complete & Distributor is not invoked resulting in single threaded performance.
The fix has to be within the program invoking the script - in this case both MEncoder & Megui: After the script is imported, call GetMTMode to read the current mode. If there's an error/exception (typically as GetMTMode doesn't exist), proceed as normal, otherwise, if the mode is between 1 & 4 invoke Distributor().
There's most of an untested suggested patch to mencoder here (http://forum.doom9.org/showthread.php?p=1052022&highlight=distributor#post1052022) which is probably close to what's needed in Megui (though MEncoder uses the C API to interact with AVISynth). Also some info on MT (http://avisynth.org/mediawiki/MT_modes_explained).
I'd file a proper bug report, but it's nearly 4am here & I want to go to sleep. Also I lost steam over this issue as I was hoping a MEncoder dev would care enough to fix the problem their end but I guess they have a lot of problems judging from their mailing lists.
Sharktooth
7th November 2007, 03:58
The update_cache seems to cause problems with people who attempt a "clean reinstall" of MeGUI, since I think they often leave the update cache behind. Would it be possible for the MeGUI uninstaller to delete (or give the option of deleting) the update_cache registry key?
Also, about autoupdate bandwidth: we may be able to transfer some of this load to Sourceforge if we additionally distribute "offline installs" -- these installs would have to set the update_cache registry key and which fill the update_cache folder with the files off the server. I don't know any installer scripting, so I can't do this, but I think the option of this could be good for some people, and it could result in fewer downloads from the autoupdate server.
ill do that (both things) as soon as i have some time.
berrinam
7th November 2007, 04:03
This page may be useful for those interesting in contributing code to MeGUI: http://mewiki.project357.com/index.php/MeGUI:Helping_with_MeGUI
In some ways it also goes against what I am hoping to achieve here as well by making the process more complex . This could be largely mitigated through good UI design and well thought out defaults.
I haven't actually used any encoding GUIs other than Gordian Knot and Nero for any extended period of time, so I don't know how they approach this, but it seems like setting up an encode of a video is actually a hard problem. Particularly with DVD/TV/Digicam captures, a number of things need to be configured: cropping, input AR, resizing, deinterlacing, which audio/subtitle tracks to keep, and potentially editing of the video and denoising. I don't specifically know what you refer to when you discuss "cleanliness", but many of these things are important even for automated encodes, so the best that an automated encoder can do is automate as much of this as possible (which can potentially be all of it except editing), allowing the advanced user to configure the automation at the start while hiding these options from the novice user so as not to scare them.
I believe that the One click encoder mostly does this already. For starters, the General tab contains only Input, Output, audio track selection, profile name, and filesize; I would expect even a novice to understand what all of them mean (except perhaps the profile). And there is a clear distinction between General and Advanced, as you have to click "Show Advanced Options" to get to the advanced options. I agree that resolution selection could be made more flexible, and the ability to add an Avisynth pre-render job now seems out of place, but I believe the rest of the options important.
However, this large number of options does not prevent it still being a one click approach. For me, I can simply open the input file, and press go, since I have my options already configured in a oneclick profile.
This all started with me wanting to convert a lot of MOV files from my digital camera from MJPEG into H264 to save space, there are hundreds and i certainly don't want to have to do them one at a time.Indeed, MeGUI doesn't handle this kind of encoding well.
I also agree with the criticism that the tools in MeGUI are not well integrated. I would be interested in discussing how this could be improved.
berrinam
7th November 2007, 04:06
Thanks, that's important to know. How does it open the script? Does it suffer from the same problems as MEncoder requiring the hack of appending a call to Distributor() to the end of the script in order to allow SetMTMode() to be effective?
MeGUI does nothing explicit to support MT Avisynth, so no, it doesn't call Distributor(). I don't know whether this actually results in it running multi-threaded or not, since I haven't used MT Avisynth.
mroz
7th November 2007, 04:50
MeGUI does nothing explicit to support MT Avisynth, so no, it doesn't call Distributor(). I don't know whether this actually results in it running multi-threaded or not, since I haven't used MT Avisynth.
I started editing the post you replied to before reading your response, so if you have a moment please look back at that for some comments on this issue. Thanks.
berrinam
7th November 2007, 04:59
I don't know how much I've posted in Megui threads about this before, so I'll summarise the conclusions reached with the help of MT's dev tsp & AVISynth dev IanB. When a script is opened as an AVIfile with an MT aware AVISynth, & the script is seen to invoke SetMTMode, it is able to append to the filter chain a call to Distributor; when however the script is imported or otherwise fed into a dynamic AVISynth environment, AVISynth has no easy way to know when the script is complete & Distributor is not invoked resulting in single threaded performance.If MeGUI uses the AVIFile interface, then I presume this problem will be solved? (although we lose the niceties of better error handling, darx/dary reading)
mroz
7th November 2007, 05:07
If MeGUI uses the AVIFile interface, then I presume this problem will be solved? (although we lose the niceties of better error handling, darx/dary reading)
AIUI Yes. A shame to lose any benefits though. Is dar reading involved in the analysis pass? Now I really am going to sleep. I ought to schedule a task to kill my damned email client around 2am :)
check
7th November 2007, 10:15
just a note letting you know my update cache's mirror automatic update procedure died about 4 days ago. It won't be fixed until I have moved to a new server, which is looking to happen in the next fortnight.
berrinam
7th November 2007, 11:30
I'm getting a bit impatient with this stable release, as we keep waiting to fix all the bugs, as more and more are still found. I say we branch now, continuing to commit bug fixes (but nothing else) to the stable version, and committing new code to the development version.
If no-one objects, I'm happy to go ahead and perform the SVN branch. I would bump the development version number up into the 0.3.x.x series, and leave the version number of the stable version alone. Then I would rearrange the SVN folders to look like this:
root
|-branches
|-tags
|-0_2_x_x
|-trunk // this has the development version
|-bautodeint
|-MediaInfoWrapper
|-...
|-MeGUI
What do you think?
berrinam
7th November 2007, 11:50
Also, since we're having a discussion about GUI design now, one thing I've been thinking about doing is moving audio and video encoding off the main page, and just putting them in another dialog box, like muxing, autoencode, etc. This can potentially free up the main page for a more intuitive UI, perhaps one where you just dump your files (via drag-and-drop, or opening files manually for Vista) and MeGUI gives you options of what you can do with them. I haven't really given the replacement much thought, but I have felt it would be nice to entirely separate video/audio encoding from the main window.
Thoughts?
Kurtnoise
7th November 2007, 13:17
What do you think?
ok for me...:)
Eamon21
7th November 2007, 13:24
Indeed, MeGUI does handle this kind of encoding well.Is that supposed to be "doesn't"?
If not then I can't agree, a minimum requirement would be a batch process where the same settings are applied to each file. Secondly you can't use One Click with *.MOV files.
I realise that the One Click tool reduces configuration each time using the profile approach to store settings and I intend to do something very similar, but the One Click encode is totally geared towards DVD encodes as far as I can tell and can only encode a single file at a time, two things that mean it is not appropriate for me.
As for the branch idea, I like the idea as I don't want to add any new code into a release that is trying to become stable.
Finally with regard to UI re-design, I agree that something needs to be done, probably even looking at changing some of the tools to run in the main window (as usercontrols) rather than spawning new dialogs. Really need some stats though as to how people mainly use MeGUI though to come up with a good UI. I know how I use it though I am also sure that a lot of other people would use it for different reasons. Maybe have some sort of anonymous stats collector that people can agree to that uploads to a webservice info about how they use it e.g. what tools they use, what codecs etc.
Eamon
berrinam
7th November 2007, 13:48
Is that supposed to be "doesn't"?Fixed :P
I realise that the One Click tool reduces configuration each time using the profile approach to store settings and I intend to do something very similar, but the One Click encode is totally geared towards DVD encodes as far as I can tell and can only encode a single file at a time, two things that mean it is not appropriate for me.Yes, it is geared towards DVD encoding. What kind of encoding are you considering? Specifically, do you apply any further cropping, resizing, or deinterlacing, or do you simply want to put the video in a different codec but otherwise the same? If this is the case, then this is easier, since there is less the tool must take care of.
Sharktooth
7th November 2007, 14:18
I'm getting a bit impatient with this stable release, as we keep waiting to fix all the bugs, as more and more are still found. I say we branch now, continuing to commit bug fixes (but nothing else) to the stable version, and committing new code to the development version.
If no-one objects, I'm happy to go ahead and perform the SVN branch. I would bump the development version number up into the 0.3.x.x series, and leave the version number of the stable version alone. Then I would rearrange the SVN folders to look like this:
root
|-branches
|-tags
|-0_2_x_x
|-trunk // this has the development version
|-bautodeint
|-MediaInfoWrapper
|-...
|-MeGUI
What do you think?
ok, but i have to say i have not much time to spend on megui right now. maybe something will change in december.
Also, since we're having a discussion about GUI design now, one thing I've been thinking about doing is moving audio and video encoding off the main page, and just putting them in another dialog box, like muxing, autoencode, etc. This can potentially free up the main page for a more intuitive UI, perhaps one where you just dump your files (via drag-and-drop, or opening files manually for Vista) and MeGUI gives you options of what you can do with them. I haven't really given the replacement much thought, but I have felt it would be nice to entirely separate video/audio encoding from the main window.
Thoughts?
That's ok for me. I always thought the main window should be a sort of "wizard". that will also make megui easier for the first-time user.
mroz
7th November 2007, 14:26
As for the branch idea, I like the idea as I don't want to add any new code into a release that is trying to become stable.
One caveat in the form of a question: do the devs have sufficient resources & willpower to keep bug fixing a stable release when there's a nice juicy new dev branch to work on? :)
Regarding design comments, do the devs want comments from any interested parties or just devs? For now I'll assume all welcome...
Finally with regard to UI re-design, I agree that something needs to be done, probably even looking at changing some of the tools to run in the main window (as usercontrols) rather than spawning new dialogs.
Agreed, though after a little thought I also agree with Berrinam that video & audio encoding set up should be treated on a par with the other tasks & not have a higher status within the UI layout, with the main Megui window being used to control access to other features & possibly for dumping files into.
Certainly I'd want to get away from patterns where the location the user has to drop their source file depends on what the source file is - eg atm if you have an avs it would go in the main window, while an avi requires the avs creator & if you start from a vob you also need to find & open the d2v creator.
Of course processing some types requires extra steps, but this should be made apparent to the user /after/ they've followed a consistent method to get the files into Megui.
Really need some stats though as to how people mainly use MeGUI though to come up with a good UI. I know how I use it though I am also sure that a lot of other people would use it for different reasons. Maybe have some sort of anonymous stats collector that people can agree to that uploads to a webservice info about how they use it e.g. what tools they use, what codecs etc.
Funnily enough I was thinking this last night. It's very important if one is serious about designing an effective gui for widespread use, rather than just an interface to meet the devs own needs or those of vociferous users.
mroz
7th November 2007, 14:41
I always thought the main window should be a sort of "wizard". that will also make megui easier for the first-time user.
That horrid word went through my head as well while thinking about this.
Wizards tend to do two things ime, reduce user choices & linearise whatever process they conduct. Both these help guide users, but are also horribly limiting.
Here's how I see the situation. If you offer a wizard in addition to more flexible controls, you can afford the wizard to be quite restrictive. OTOH if it is your only interface to the task in hand you need to be very clever & very careful otherwise you risk vastly crippling your application & your users.
GUIs are potentially lovely, agreed? You'd not want to go back to an interface comprising a sequence of choices from menus.
All I'm asking is to not throw the baby out with the bath water :)
My aim in UI design is to offer the user subtle hints to allow them to naturally follow a linear path through the gui in order to get their task done, if that's both possible & appropriate, without forcing them to take a particular path. Thus they can be productive immediately, yet still free to grow their usage patterns as they develop familiarity & expertise.
Not that I mean to suggest you're likely to get this wrong. It's just that damned term Wizard which sets off alarm bells in my head.
Sharktooth
7th November 2007, 14:41
The installer changes im going to commit will create the update_cache registry key and will delete it when running the uninstall.
I will make a new MeGUI dev release, so please test the installer/uninstaller behaviour and report eventual bugs.
Sharktooth
7th November 2007, 15:04
0.2.6.1035
- (Sharktooth) [Installer] Creates (and removes during uninstall) update_cache reg key, also creates update_cache, logs and tools folders.
- (berrinam) At startup, jobs marked as "processing" are marked as "aborted". Should help #1826981.
- (berrinam) Fix autocrop crash in AVS creator after reopening original video window.
- (berrinam) Fixed #1825958 (Audio track tab numbering issue)
- (berrinam) Fixed #1825182 (Nero AAC settings not saved)
- (Kurtnoise) [Mencoder Encoder] force to set up only video command (fixed #1824505 & #1825708)
- (Sharktooth) [Installer] Added links to Tools, Logs and Auto-update cache folders.
- (Kurtnoise) [Settings Form] English as 1st Language (#1822098)
A new dev release is available on SF: http://sourceforge.net/project/showfiles.php?group_id=156112&package_id=244469
Kurtnoise
7th November 2007, 21:18
Wizards tend to do two things ime, reduce user choices & linearise whatever process they conduct. Both these help guide users, but are also horribly limiting.
I disagree with you about limitations...Wizzards are created to simplify the normal uses and are mainly dedicated to people whose know nothing about A/V compression or anything else. Keep in mind that for newbies, the less there are, the more there are happy. :) Honestly I don't think that the main goal of a wizzard is to let multiples choices for people concerning customatization or tuning the settings. So, it means that maybe we need to rethink the goals of MeGUI (tend to be "newbies only", "geeks only"...).
Eamon21
7th November 2007, 23:04
Just uploaded a patch that addresses bugs 1827268 and 1822000.
Eamon21
7th November 2007, 23:30
and a patch for 1827919
berrinam
8th November 2007, 00:19
0.2.6.1035
- (Sharktooth) [Installer] Creates (and removes during uninstall) update_cache reg key, also creates update_cache, logs and tools folders.
- (berrinam) At startup, jobs marked as "processing" are marked as "aborted". Should help #1826981.
- (berrinam) Fix autocrop crash in AVS creator after reopening original video window.
- (berrinam) Fixed #1825958 (Audio track tab numbering issue)
- (berrinam) Fixed #1825182 (Nero AAC settings not saved)
- (Kurtnoise) [Mencoder Encoder] force to set up only video command (fixed #1824505 & #1825708)
- (Sharktooth) [Installer] Added links to Tools, Logs and Auto-update cache folders.
- (Kurtnoise) [Settings Form] English as 1st Language (#1822098)
A new dev release is available on SF: http://sourceforge.net/project/showfiles.php?group_id=156112&package_id=244469
Is this supposed to be a development release? Most of the commits seem to be bug fixes.
berrinam
8th November 2007, 01:42
I've performed the stable/dev split. The directory structure is now as I posted before. The stable version is still 0.2.6.1035, and I have increased the dev version to 0.3.0.0000 (although I haven't committed any code to it yet).
saint-francis
8th November 2007, 01:44
Wizzards are created to simplify the normal uses and are mainly dedicated to people whose know nothing about A/V compression or anything else. Keep in mind that for newbies, the less there are, the more there are happy. :) Honestly I don't think that the main goal of a wizzard is to let multiples choices for people concerning customatization or tuning the settings. So, it means that maybe we need to rethink the goals of MeGUI (tend to be "newbies only", "geeks only"...).
As a rule of thumb I don't participate in this thread (although I follow it religiously) becauese I don't in any way "speak C#" so this is clearly the "wrong thread" for me to post in, but, I must express my opinion here. To me MeGUI is fantastic because it is a tool for the n00b and the more advanced user. Almost every step I make in my journey to becoming more competent in the world of video encoding MeGUI can so far match. Of course as I venture into the world of more complicated tasks MeGUI falls behind. Remember that since MeGUI is a work in progress the "so far" should be noted. My hopes are that in the future MeGUI will help me automate even the most complicated tasks I ask of it. Yet MeGUI does make the process easier. This I assume is the entire purpose of the project. I personally think a "wizard" like interface option could greatly increase the usefulness of MeGUI. At the same time I would like to see more technical or "geeks only" functionality from MeGUI; such as more filtering options, options for more source types, etc. There is already a very good complete N00b tool, AGK, and it has worked very well for me in the past, so I see no reason to make MeGUI a new AGK and rob the more advanced users of the potential benefits of more options in the AVS creator, etc, etc. If that is the kind of tool that people want then AGK should be further developed. I think the flexibility to use more advanced functionality is excellent because one who knows how can gain more control; hence producing a higher quality product for themselves. Hopefully. But x264 encoding and encoding video in general can be a daunting proposal for some who haven't spent hours and hours of their lives reading, experimenting and learning so I heartily agree that (accurate) automation is a priceless quality for any video encoding tool.
To sum my statement up, I think that further long term development of MeGUI which is beyond bug fixes should contain both automation functionality and more advanced options in the AVS creator. If the combination seems daunting to the dev's then they should just remember that this is an opensource project and there is absolutely no pressure on them from any force that may hinder their wellbeing to even continue with the project as it is. I am happy right now with MeGUI. With every update I feel like it's Christmas in Las Vegas. MeGUI is very mature and any update only makes a good thing better. If it takes time to make MeGUI what the community/dev's want it to be......so be it. No rush is needed. I use the latest dev releases several times a week and I have been for over a year. And essentially without suffering from bugs.
My hat is off to all fo the MeGUI dev's and everyone in the past and present who has made this possible.
berrinam
8th November 2007, 02:13
It's very nice to hear such words of praise for MeGUI. Thank you.
What kind of more advanced options for the source creator do you mean? More source types, more deinterlacers, more resizers? Or is there a whole other class of filters that have been ignored by the AVS creator?
berrinam
8th November 2007, 02:22
@Kurtnoise: What did you decide about an IFO parser? I remember you linked to C# IFO parser. If you've got something working, could you commit it soon, please, because there are some features I want to do that rely on IFO parsing. (I don't want to rush you though)
berrinam
8th November 2007, 03:59
@devs: You probably know this, but I'm just warning you that, since I have moved the folder where megui sources were kept, if you try updating your working copy, your changes will be deleted. The only way I know of updating my working copies is to create a patch of them against their revision, and then apply that to the most recent revision.
Just warning you, so that you don't lose your work, and also asking if there's a better way to do this.
saint-francis
8th November 2007, 05:02
.
What kind of more advanced options for the source creator do you mean? More source types, more deinterlacers, more resizers? Or is there a whole other class of filters that have been ignored by the AVS creator?
As far as sources go I would like to be able to plug HD DVD's in just like I can a regular DVD. I am fully aware that at this time such a desire is wishful thinking as there is no tool such as the awesome DGIndex for HD sources. Given the current limitations of that field all I need to work around with in MeGUI is selecting "all file types" when browsing for my graph with the AVS creator and inserting the framecount, etc. in the edit tab. Which is understandable since there will hopefully be tools in the future that will render such operations unnecessary. As far as other functionality is concerned I would like the ability to automate tools like seesaw, MT, fft3dfilter and other less used filters. Now I have to add such commands manually. Which is also understandable as these aren't in the realm of conventional DVD ripping and take a modicum of knowhow to operate. Also it would be difficult to create a gui to manage them. Still I can't operate these filters as well as even a script some here could write. The deinterlacers and resizers seem to be up to the job. I was particularly happy about the addition of yadif.
:thanks:
berrinam
8th November 2007, 05:10
I'm afraid I'm not up-to-scratch on Didee's tools (which seesaw is, right?) as I understand they require a lot of plugins, tweaking, and computer time. Generally with filters that aren't in MeGUI, they are more likely to be added if someone provides information about where the required dlls are (including which version is best) and what settings to use.
Anyway, I have something in mind about the Avisynth filters which might help you. I won't tell you what it is yet, though. :p
mroz
8th November 2007, 05:47
I disagree with you about limitations...Wizzards are created to simplify the normal uses and are mainly dedicated to people whose know nothing about A/V compression or anything else. Keep in mind that for newbies, the less there are, the more there are happy. :) Honestly I don't think that the main goal of a wizzard is to let multiples choices for people concerning customatization or tuning the settings. So, it means that maybe we need to rethink the goals of MeGUI (tend to be "newbies only", "geeks only"...).
Adopting your definition, would you even consider a MeGUI that was primarily wizard driven?
Do you think it isn't possible to design a user interface which appeals to newbies without rigidly locking down functionality & reducing value to geeks?
mroz
8th November 2007, 05:58
Anyone here use AvsP (http://avisynth.org/qwerpoi/About.html)? I haven't but I keep hearing good things. I was just wondering if any of its approaches might be of use or at least inspiration to any redesign of MeGUI's AVS script creator.
mroz
8th November 2007, 06:44
I hope you don't mind me asking the following here. If anyone objects just say & I'll refrain from any similar questions in future.
I'm looking for some book recommendations re C# with an aim to prodding MeGUI about a bit. I'm an experienced C programmer with a very basic grasp of OO concepts. I like O'Reilly books so was considering possibly three of:
Programming C#, Fourth Edition (http://www.oreilly.com/catalog/progcsharp4/index.html)
Programming C#, the top-selling book on Microsoft's high-performance C# programming language, is now in its fourth edition. Aimed at experienced programmers and web developers, this comprehensive guide focuses on the features and programming patterns...
Programming C# 3.0, Fifth Edition (http://www.oreilly.com/catalog/9780596527433/index.html)
This thoroughly updated tutorial for beginning to intermediate programmers covers C# 3.0 and the newest .NET platform for developing Windows and web applications. Now in its fifth edition, our bestselling Programming C# 3.0 teaches the essentials of ...
C# Cookbook, Second Edition (http://www.oreilly.com/catalog/csharpckbk2/index.html)
Completely revised for C# 2.0, this updated bestseller offers more than 100 new code solutions to common problems that you're sure to face as a C# programmer. Nearly every solution, or recipe, contains a complete, documented code sample showing you how...
C# 3.0 Cookbook, Third Edition (http://www.oreilly.com/catalog/9780596516109/index.html)
Completely updated for C# 3.0 and the .NET 3.5 platform, the new edition of this bestseller offers more than 250 code recipes to common and not-so-common problems that C# programmers face every day. More than a third of the recipes have been rewritten...
Learning C# 2005, Second Edition (http://www.oreilly.com/catalog/learncsharp2/index.html#top)
Completely revised to cover C# 2.0 and Visual Basic 2005, this introductory guide offers a thorough introduction to Microsoft's premier .NET language. Discover how to develop various kinds of web services and applications--including those that work with...
An opinons, comments or suggestions I stop spamming? :)
berrinam
8th November 2007, 07:12
Anyone here use AvsP (http://avisynth.org/qwerpoi/About.html)? I haven't but I keep hearing good things. I was just wondering if any of its approaches might be of use or at least inspiration to any redesign of MeGUI's AVS script creator.
I haven't used it yet, but some first thoughts from reading the webpage:
I'm very impressed with the user sliders. Great idea, looks like a simple syntax, too. They could help making customisable filters
A lot of the text features are probably somewhat a waste of time for MeGUI, because the AVS creator is predominantly (at the moment) a GUI-based -- not text-based -- tool. However, it would be a good idea to color comments green, do a little bit of parsing, and definitely get rid of the word wrap in the MeGUI AVS editor.
berrinam
8th November 2007, 07:18
I hope you don't mind me asking the following here. If anyone objects just say & I'll refrain from any similar questions in future.
I'm looking for some book recommendations re C# with an aim to prodding MeGUI about a bit. I'm an experienced C programmer with a very basic grasp of OO concepts. I like O'Reilly books so was considering possibly three of ...
I haven't read any of them. Actually, MeGUI was the first C# project I worked on; it wasn't too hard to pick up because it is similar to Java and Microsoft's IDE is excellent. C# is a bit further separated from C than from Java, but it is still a curly-brace language, so most of the syntax should be familiar to you. I recommend just diving into MeGUI, and googling things you don't understand; CodeProject has a lot of articles on C# syntax and features.
mroz
8th November 2007, 07:21
Thanks for the comments. Appreciated :)
Kurtnoise
8th November 2007, 08:29
What did you decide about an IFO parser? I remember you linked to C# IFO parser. If you've got something working, could you commit it soon, please, because there are some features I want to do that rely on IFO parsing. (I don't want to rush you though)
Nothing new for the moment (to be clear, nothing that can be committed)...I'll give it a try this weekend maybe.
Kurtnoise
8th November 2007, 08:33
Adopting your definition, would you even consider a MeGUI that was primarily wizard driven?
Honestly ? Nope...even if there is a "One-Click Encoder" but it's just my opinion. :)
Do you think it isn't possible to design a user interface which appeals to newbies without rigidly locking down functionality & reducing value to geeks?
depends on the values & functionalities you want to have...;) Of course, it's doable.
berrinam
8th November 2007, 13:41
0.2.6.1036
- (berrinam) Fixed exception in profile import when file already exists
- (Kurtnoise) [VideoEncoding] DAR values Initialization (fixed #1823977)
- (berrinam) Fix an exception when changing codec if no profile is selected
- (patch by eamonh) fix profile scrolling issues (fixes #1822000, #1827268)
- (patch by eamonh) Fix #1827919 (OneClickEncode Settings not saved)
Stable branch on autoupdate now updates to 0.2.6.1036. In about a week's time, the rest of autoupdate's stable branch will be updated to the current dev branch.
@Eamon: thanks for those patches.
@all: You can see SpAwN_gUy's modification of megui to support x264farm, which is currently a branch of megui residing at https://megui.svn.sourceforge.net/svnroot/megui/branches/x264farm
Sharktooth
8th November 2007, 14:27
Stable branch on autoupdate now updates to 0.2.6.1036. In about a week's time, the rest of autoupdate's stable branch will be updated to the current dev branch.
why not right now? if its a matter of time i can do it (i've made a nice script that will do that automatically...)
@devs: dgindex commandline for audio tracks handling is changed starting from 1.5 beta 11.
the autoupdate server actually has the b10. however if we plan to continue to update dgindex some changes to the d2v creator are required.
https://forum.doom9.org/showthread.php?p=1063355#post1063355
berrinam
8th November 2007, 21:35
why not right now? if its a matter of time i can do it (i've made a nice script that will do that automatically...)Because older versions of MeGUI might crash if there are programs in the update.xml file that they don't understand.
Sharktooth
8th November 2007, 22:29
uhm... like?
berrinam
8th November 2007, 22:32
I think this is the case for any new MeGUI program, like AVI-Mux GUI.
Sharktooth
8th November 2007, 22:44
we should implement a handler for that in future revisions.
however a fresh installation is still recommended since some settings were changed and could make megui crash too...
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.