Log in

View Full Version : MeGUI Feature Request Thread


Pages : [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

berrinam
5th January 2006, 12:15
This thread is a place for people to request features for MeGUI, and this post will keep track of what has been requested. Together with the MeGUI Bug-Report Thread, this can serve as a TODO list for the developers.

Before posting
Please keep in mind that the developers contribute to MeGUI in their free time, and get no money out of doing so. There must be no expectation that what you request here will ever be implemented in MeGUI -- it is completely up to the discretion of the developers.

If you want to see something in MeGUI, then the easier you make it for the devs, the more likely it is to be implemented. Be descriptive about what you want, and explain why it would be useful.

Remember to check a build from the latest series (currently 0.2.3.2040 or later) to see if it is already implemented. Also check the list here to see whether it has already been suggested.

Requested features / todo list from builds 0.2.3.2040 or later
Features implemented in the last version have been removed from this list to save space. Always check a build from the newest series (currently 0.2.3.2040 or later) before asking for a feature, to see if it has already been implemented.
Orange means it is pending Doom9's approval
Red means it has been rejected
Blue means it has been accepted and no-one is working on it
Green means it has been completed
Allow the sure to set what priority the Source Detector runs in
Description: http://forum.doom9.org/showthread.php?p=795178#post795178
Status: Completed in 0.2.3.1115

Rearrange the long dialogs -- AviSynth creator, Settings
Description: Make them tabbed (preferably with Basic/Advanced, or some other structure) to make them less overwhelming, and also so that they can fit on a lower-resolution screen.
Status: Completed in 0.2.3.1115.

Add more input filetypes
Description: Almost all files can be loaded into AviSynth via DirectShowSource. For completeness, it would be useful to allow this in the AviSynth Script Creator
Status: Completed in 0.2.3.2122

Add a 'clear log' functionality
Description: Be able to clear the log.
Status: Completed in 0.2.3.2122

Have a more comprehensive deletion of temporary files
Description: Only some temporary files are deleted (namely, the ones which are listed as output files of linked jobs). Richard Berg posted a list of what's missing here (http://forum.doom9.org/showthread.php?p=770292#post770292)
Status: Completed in 0.2.2125.

Be able to choose the sampling rate for audio
Description: See quake74's post (http://forum.doom9.org/showthread.php?p=764825#post764825)
Status : Nobody is working on it.

Make control over 2pass/1pass with crf x264 more versatile
Description: See http://forum.doom9.org/showthread.php?p=795210#post795210
Status: Nobody is working on it

Commandline support for MeGUI
Description: See http://forum.doom9.org/showthread.php?p=799747#post799747
Status: Nobody is working on it

Video cutting in the AviSynth creator for removal of ads, etc
Description: Since video and audio can be done through AviSynth cutting can be completely precise. Use should be done using the trim statement.
Status: No-one is working on this yet.

change audio codec choice back to two and put the encoder choice in the settings instead
Description: N/A
Status : No-one is working on it, on hold until audio has been redone

Mapping of audio streams for *.ts files
Description: In a transport stream, a PID identifies a stream (audio or video), just like you have substream IDs in a VOB. So, if you have your TS, you need to know which PIDs are used for your audio and video in order to select them. It gets even more interesting if you've been recording the data from an entire transponder.. then you have multiple TV channels that you need to differentiate in between.
Status : No-one is working on it.

Resolve clashes between hotkeys
Description: See http://forum.doom9.org/showthread.php?p=770292#post770292
Status: No-one is working on it.

MeGUI shows BeSweet commandlines when processing an AviSynth audio encode
Description: N/A
Status: Nobody is working on it.

Add support for the -sbr or -sbrx tags in mp4box commandline
Description: Add a checkbox in MeGUI MP4 Muxer which says something like "AAC is SBR", so that the audio information is correctly stored in MP4.
Status : Nobody is working on it (what happened to godhead?)

Fix up cropping in AviSynth Script Creator, and enable ColorMatrix() by default on d2v sources, since it causes no harm
Description: See http://forum.doom9.org/showthread.php?p=806400#post806400
Status: Nobody is working on it.

Automatic running of atomchanger
Description: See quake74's post (http://forum.doom9.org/showthread.php?p=764825#post764825)
Status : Coming...

Autoonlineupdate for all external Programs like in StaxRip
Description: The above description is pretty obvious. However, this feature requires a webspace containing information about the required versions and links to the download files. I'm not sure if the SourceForge Terms of Service allow this for Project Web (ie I'm not sure if the required webspace can be hosted by SourceForge). A (perhaps) useful link on doing this is here (http://www.devx.com/dotnet/Article/10045/0/page/3)
Status : Mutant_Fruit is working on it

Make more use of "Don't show me this again" in dialogs.
Description: See http://forum.doom9.org/showthread.php?p=772750#post772750
Status: Easy to do now. Use the DialogManager class, and look at the other examples there.

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

Add support for xvid_encraw
Description: almost complete (the missing parts concern bitrate calculation and container issues)
Status : Doom9 is working on it

Add support for xvid avc
Description: N/A
Status : Doom9 is working on it

Add support for Ogg Vorbis encoding
Description: It's the only good free low bitrate codec at the moment (FAAC isn't tuned and afaik generally worse than Vorbis and the Nero AAC codec isn't free. Itunes AAC codec is for free and quite good imho but not very well supported via cli.). The obvious drawback: You can only sanely use it in mkv.
Status : The audio part is currently frozen pending a redesign/move to AviSynth.

More than two audio/subtitle tracks
Description: See quake74's post (http://forum.doom9.org/showthread.php?p=764825#post764825)
Status : I have to take the 80/20 rule here.. 2 audio and 5 subtitle track should cover most needs. We could eventually talk about the muxer itself, but not the encoding part of the GUI.

Make the Status window a child of the main MeGUI window so there's only one item in the taskbar
Description: N/A
Status : Refused - request doesn't make sense from a design point. If it bothers many people the "show in taskbar" flag can be removed from the window.. there's no reason to introduce a window dependency. And there's always the possibility to hide the progress window, as well as to never have it show up when encoding starts in the first place.

Add integration of DVDDecrypter into MeGUI
Description: See http://forum.doom9.org/showthread.php?p=772759#post772759
Status: This would not nearly come close to a comprehensive solution (megui supports tons of inputs) and it's better if users learn how to do this on their own. AutoGK is popular without this as well..

Some form of AviSynth script creation for audio, to allow the user control over advanced processing (and trimming)
Description: First we need to find out whether having audio processing in a video script slows down video encoding and vice versa. Then, we could either add audio input to the AviSynth Script Creator, or we could creat a separate script creator for audio. Although the current audio encoding system is able to add some audio processing, such as channel mixing, DRC and delay correction, it doesn't advanced processing, or trimming (which the video Avs creator also doesn't at the moment)
Status: Rejected by Doom9 -- it's less hassle to keep the scripts separated.

kotrtim
5th January 2006, 15:24
Track Type Info
201 video MPEG-4 Adv Simple@L5, 5625.620 secs, 538 kbps, 720x480 @ 23.9758
46 fps
101 audio MPEG-4 AAC LC, 5625.642 secs, 49 kbps, 24000 Hz
2 od Object Descriptors
1 scene BIFS

This is what mp4info.exe (mpeg4ip) show..... the audio is actually HE-AAC 49 kbps 48000 Hz with Parametric Stereo

My only request is to add a checkbox in MeGUI MP4 Muxer
something like "AAC is SBR" so that the audio information is correctly stored in MP4

berrinam
5th January 2006, 21:33
Added to the list.

Doom9
5th January 2006, 21:34
naturally, that flag should be automatically set in auto mode and one click mode ;)

berrinam
5th January 2006, 21:42
Of course.

charleski
5th January 2006, 22:27
Redo tri-state section
Description: redo the whole x264 tri-state section to have one big method that handles activation/deactivation for each GUI element. That method will be called by showCommandline. In addition, make it so that showCommandline is only triggered once the GUI is fully created and the entire settings have been loaded.
Status : No-one is working on it

This has been done a while ago


move shutdown checkbox from settings to queue tab
Description: 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!
Status : Sharktooth is working on it

Done. As an alternative, I added an 'Add Shutdown' button to the Queue tab which will add a Shutdown job. I also implemented a new class of job: SystemJob, which could possibly be used for other system-related tasks in future.

Doom9
5th January 2006, 22:56
what if you never get to that job? It's been a while for me so I'm not sure there's a scenario where we could end up with that, but I'm no fan of shutdown jobs.

And as far as hide/close goes.. it's basically a dialog window and dialog windows are not meant to close the main program. And MeGUI's example for the whole queue and progress report thing, VDub, doesn't do it either. Unless you're a programmer (we know we're only hiding it), X means close the window. Only if you press the X in the main window does it signify close the program.. and we do have a confirmation dialog there already.

charleski
5th January 2006, 23:19
what if you never get to that job? It's been a while for me so I'm not sure there's a scenario where we could end up with that, but I'm no fan of shutdown jobs.
The main reason I implemented it as a job was that the person who suggested the change noted that his real problem was that sometimes he wanted the program to shutdown after encoding, and sometimes he didn't. Doing it this way means there's a prominent SHUTDOWN label sitting at the end of the job queue, which makes it clear what's happening, rather than a checkbox setting which can be missed. I thought this was a better way of doing things for such an important system event.

Doom9
5th January 2006, 23:29
well.. I just found the problem case: You're setting up multiple movies for encoding in one click mode. So you end up having a bunch of one click jobs, then you add the shutdown job, and then you start. After indexing, MeGUI will write the jobs at the end of the queue.. then all other movies will be indexed, and then the system will shut down.. without encoding ever having been done. Previously, all movies would be encoded and only then would the system shut down. I agree that the way the one click mode adds jobs isn't ideal, but changing that touches the very core of MeGUI.. it's not something you can just whip up in a few hours and then never have to worry about it anymore.. if that's ever to be changed, whoever does it needs to know all the internal working of MeGUI quite well.. so I guess I would be the most obvious choice but I have other priorities. With that in mind, I strongly suggest just moving the checkbox to the queue, and having an option in the one click window that will set that checkbox (since it could be that you'll start encoding right away without having to go to the queue and manually start the queue). Doing it that way also means you never have to actually go to th e queue tab (we could add another one to the auto encoder form to set the flag as well).. all the more practical and it does what you want in all cases. The request came because it's admittedly cumbersome to go to the settings.. but if you have it where you start the jobs, that's even more convenient than having it in the queue tab.

charleski
6th January 2006, 00:58
well.. I just found the problem case: You're setting up multiple movies for encoding in one click mode. So you end up having a bunch of one click jobs, then you add the shutdown job, and then you start. After indexing, MeGUI will write the jobs at the end of the queue.. then all other movies will be indexed, and then the system will shut down.. without encoding ever having been done. Previously, all movies would be encoded and only then would the system shut down.
Hmm, yeah, looking at the DGIndexPostProcessing code I see what you mean, it would require a fair amount of special case control.
We can change it back to a checkbox causing it to shutdown on idle, but my main problem is a usability one.
Checkboxes and other generic settings GUI elements are 'fire-and-forget' - you set the program up the way you want it, then you use it from day to day with having to bother to check them. It's not the best GUI element to use for something you might use on one occasion but not another, especially when it controls a system-critical event like a shutdown (if that's something you always want it's fine, however). Poor GUI design like this has tripped me up on other programs and I was trying to avoid it. It's possible to add an element that will make the current behaviour highly visible though.

berrinam
6th January 2006, 01:33
Maybe it would be better to continue this discussion on the dev thread, so that each of the threads are kept to the purpose they are intended for.

Romario
6th January 2006, 01:45
Feature request: new and better Adaptive quantization patch

Also, SSE2 and SSE3 heavy optimization will be very nice.

jmk
6th January 2006, 02:11
as far as i understand it, optimizations should be done in the x264 code. its probably most effective there. i don't know if any optimizations in megui would really result in faster encoding. but, i might be wrong of course :)

jmk

Richard Berg
6th January 2006, 03:30
Proposal: add a checkbox next to Video's Queue to render out slow/complex AVS scripts before encoding. This would require:
- a new job type that wraps avs2avi
- writing out another AVS file [ AviSource("avs2avi-output.avi") ]
- passing that AVS file to the regular videoencoder logic
- linking the avs2avi job to the job(s) generated by the videoencoder


Proposal: ability to retry an aborted job. This is particularly needed with Mux jobs, because when you click Load, your only choice is to Update the aborted job; no way to Queue another one.

Sharktooth
6th January 2006, 05:17
as far as i understand it, optimizations should be done in the x264 code. its probably most effective there. i don't know if any optimizations in megui would really result in faster encoding. but, i might be wrong of course :)

jmk
right. and even adaptive quant belongs to x264.

berrinam
6th January 2006, 05:23
Proposal: add a checkbox next to Video's Queue to render out slow/complex AVS scripts before encoding. This would require:
- a new job type that wraps avs2avi
- writing out another AVS file [ AviSource("avs2avi-output.avi") ]
- passing that AVS file to the regular videoencoder logic
- linking the avs2avi job to the job(s) generated by the videoencoder
This sort of thing has been requested before, using mencoder's ffvhuff (lossless) encoding. I'm not familiar with avs2avi. Does this simply output uncompressed avis, or what does it do?

Proposal: ability to retry an aborted job. This is particularly needed with Mux jobs, because when you click Load, your only choice is to Update the aborted job; no way to Queue another one.
From what you are saying, I think what you want can be accomplished by double-clicking on the job. This will cycle through the various possible statuses, going from aborted, to postponed or waiting (when it's on waiting, you can run it again)

Richard Berg
6th January 2006, 05:29
This sort of thing has been requested before, using mencoder's ffvhuff (lossless) encoding. I'm not familiar with avs2avi. Does this simply output uncompressed avis, or what does it do?
That's about right. http://www.avs2avi.org

I use ffdshow's vfw encoder to output huffyuy2 or huffyv12 as appropriate. Maybe mencoder would be easier.

From what you are saying, I think what you want can be accomplished by double-clicking on the job. This will cycle through the various possible statuses, going from aborted, to postponed or waiting (when it's on waiting, you can run it again)
Aha! Thanks. This feature should be more discoverable -- a context menu, perhaps?

berrinam
6th January 2006, 05:35
@Richard Berg: I've added this pre-rendering to the todo list. Could you look at what I've said and see if it's correct?

Richard Berg
6th January 2006, 06:06
Looks great, thanks. I'll try to tackle some of the easier to-dos this weekend in order to familiarize myself with the new MeGUI code (seems pretty different from last I looked, ~4 months ago).

willie1
8th January 2006, 02:50
Request: Add a "just mux" feature for the audio similar to what Gordian Knot does. This would be useful for making multiple test clips for changing codec settings but using the same audio for all, or if the audio was created previously in another app. This is minor, but could save some hassle.

Doom9
8th January 2006, 03:01
Add a "just mux" feature for the audio similar to what Gordian Knot does.That already exists.. auto mode is your friend.

willie1
8th January 2006, 04:50
Thanx. I wasn't aware.

The Link
8th January 2006, 18:58
1. I would suggest a send to tray button so you can visually hide MeGUI while it's doing its job.
2. Furthermore I would suggest to make the Status window a child of the main MeGUI window so there's only one item in the taskbar (but that's probably a matter of preference).
3. Something I'd like to see is Ogg Vorbis support as it's the only good free low bitrate codec at the moment (FAAC isn't tuned and afaik generally worse than Vorbis and the Nero AAC codec isn't free. Itunes AAC codec is for free and quite good imho but not very well supported via cli.). The obvious drawback: You can only sanely use it in mkv.

Just some suggestions from my side. I hope I didn't miss some already existing features which would already cover my feature requests. :)

edit: grammar

bob0r
8th January 2006, 20:53
Load Defaults button (not only the button but the function too :p)

Just a simple load defaults button with a pop-up asking you yes/no, because sometimes people click the wrong button and all previous set options will be gone.

Teegedeck
8th January 2006, 20:58
errr... Exporting it to a Mono project? :)

Sharktooth
8th January 2006, 21:15
it requires some adjustments for the *nix platform.

Teegedeck
8th January 2006, 21:25
Yes, and I have no idea how it would be possible for a Mono-application to open AviSynth-scripts via Wine. Just regard it as a desperate cry for a decent encoding GUI on Linux. And I mean 'decent'.

Perhaps it will happen just in time for AviSynth 3...

berrinam
8th January 2006, 22:00
@bob0r: Defaults across the entire GUI? What you want has the same effect as removing the settings.xml file?

The Link
8th January 2006, 22:13
I'd like "reload defaults" buttons in every codec settings preferences or alternatively for every codec/encoder a default preset which is not deletable.

edit: making more sense

Doom9
8th January 2006, 22:24
AviSynth isn't the only problem for making this run on Linux.. there's also a dgdecode dependency in the avisynth script creator. And Linux has no proper multimedia API that's available on a kernel level (so it would be in every distro), has it?
Basically if you need both the AviFile API and DGDecode, and there are other things. For instance environment variables (number of CPUs, path), a Linux BeSweet, etc.

I'd like "reload defaults" buttons in every codec settings preferences.That sounds reasonable and is easy to implement in just a few lines of code.

jmk
9th January 2006, 00:29
move the profile selection drop down list in the config dialog window to the bottom of that window, so that it will be visible and accessible in all tabs.

Sharktooth
9th January 2006, 05:23
@bob0r: Defaults across the entire GUI? What you want has the same effect as removing the settings.xml file?
codec defaults. same thing The Link proposed.

Richard Berg
9th January 2006, 08:37
I've implemented one of the simple requests:
- progress window now has a Hide button
- View -> Progress menu item is now a toggle

Modified files are attached. You'll need to diff against the CVS copies as of about 2 days ago (sorry, I didn't save a copy, and I only have anonymous CVS access).

Doom9
9th January 2006, 09:16
- View -> Progress menu item is now a toggleCan you elaborate on that? We already have an option in the settings that allows you to configure if the progress window automatically comes up when a job is being started (except for an index job, there it makes little sense to have a progress window since dgindex doesn't return any progress reports), and the view - progress menu is context sensitive, so the actual menu option is only active when there's no progress window on screen.

Richard Berg
9th January 2006, 09:32
The View -> Progress menu item now has 3 states:
- disabled
- enabled but not checked (progress window hidden).
- enabled and checked (progress window shown)

Clicking it toggles back & forth between the latter states. Test the code, it's very simple.

quake74
9th January 2006, 10:14
Multiple (more than 2) audio/sub tracks is my first complain with pretty much every gui out there (excluding the old dvd2ogm and dvd::rip). I would often like to rip the original soundtrack, the comments, the track in english or my native language, and maybe french since I'm trying to study it. From what I understand, it's mainly a gui problem since I can include as many tracks I want in mp4 or mkv, right?

For the psp it would be useful to be able to choose the sampling rate for the audio (psp only supports 48000Hz). Automatic running of atomchanger would be very useful as well ;)

Doom9
9th January 2006, 10:38
From what I understand, it's mainly a gui problem since I can include as many tracks I want in mp4 or mkv, right?Yes but I dare presume 2 tracks is sufficient for most people. After all, you are likely to only watch the movie with the commentary track once, so that can be done off the DVD, and that leaves two tracks for you ;) Even though I speak 4 languages fluently, I'd never consider keeping more than two tracks in a backup (which after all is just that.. the original DVD is stored away safely and still in my posession). Generally when taking something on the road, a single track will even suffice.

berrinam
9th January 2006, 13:14
I've updated the list of all feature requests on the first post. If I have missed anything, or you feel I haven't done your request justice, please tell me.

Raithmir
9th January 2006, 21:24
Time stamping in the logs for the start and end of each job please :)

Doom9
9th January 2006, 21:25
Time stamping in the logs for the start and end of each job pleaseYou already have that in the queue, a precise time down to the second. Why would you need anything else?

Raithmir
9th January 2006, 21:45
You already have that in the queue, a precise time down to the second. Why would you need anything else?

Because I've sometimes cleared the queue and then gone back to the logs at a later date. It's logged in the queue tab, but would be useful in the logs too (besweet logs start/end times, so why not MeGUI?)

Raithmir
9th January 2006, 22:04
oh and while I've been testing the AVISynth creator functions... is there any real reason why we couldn't have a tick box for resize (like there is for crop).

Most of the time I just want to crop away black borders but keep original resolution.

berrinam
9th January 2006, 22:49
@Raithmir: Sometimes I've wanted the same thing. However, you can get around this by creating a new avs profile and in the script template, remove the <resize> line. This way, the resizing will never get added to the script.

Raithmir
9th January 2006, 23:04
@Raithmir: Sometimes I've wanted the same thing. However, you can get around this by creating a new avs profile and in the script template, remove the <resize> line. This way, the resizing will never get added to the script.

Thats a good idea. To be honest I've not played around with the profile settings yet. It's no real hardship to just add a "#" before the resize line also ;)

Caroliano
10th January 2006, 01:41
Drag'n Drop suport at least for input avisynth script in the main window. Would be very handy, and save a bit of time.

:thanks:

Doom9
10th January 2006, 08:42
Drag'n Drop suport at least for input avisynth script in the main window. If it supports video, wouldn't audio be the next in line? How would you propose we handle audio (in terms of which selection to be made in the codec dropdown)?

BTW, just so that we are on the same page, I think it's a good idea, it just needs to be thought all the way through before being put up in the todo list..

berrinam
10th January 2006, 11:02
If it supports video, wouldn't audio be the next in line? How would you propose we handle audio (in terms of which selection to be made in the codec dropdown)?Why would MeGUI need to vary the codec selection according to what input is dropped on MeGUI? Wouldn't a Drag'n Drop receiver simply check if the input is valid, then set it as the audio or video input and then do whatever cleaning up is needed?

Doom9
10th January 2006, 13:25
hmm.. I guess I was still thinking of the old audio functionality where you could either plug in audio to be encoded or just to be muxed in the main window.

lexor
10th January 2006, 14:44
I don't know if this is a big "feature request" but can we add 1/2 dvd to the Storage Medium present in bitrate calc? Useful for 1080p (deinterlaced from 1080i) encodes of significant running length.

Morte66
10th January 2006, 16:02
A feature request: Add support for single pass quality based encoding to the AutoEncode feature. At the moment the user has to separately kick off video encode, audio encode and mux to encode this way.

Justification:
(a) I get roughly twice the overall encoding speed this way
(b) workflow is smoother with AutoEncode, and a fallible user is less likely to make an error setting up a batch (e.g. try to mux episode 11 sound with episode 12 video)