PDA

View Full Version : MeGUI development


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

Kurtnoise
28th November 2007, 16:24
Hi,

needs to be run as administrator on vista or it shows a useless confusing error message.

it should really auto acquire admin rights if it needs it, or at least a notice that it needs to be run as admin.
Just a note about that. it can be done easily during the compilation with MSVC#2008 by adding a manifest file...

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC Manifest Options
If you want to change the Windows User Account Control level replace the
requestedExecutionLevel node with one of the following.

<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />

If you want to utilize File and Registry Virtualization for backward
compatibility then delete the requestedExecutionLevel node.
-->
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>


save it with .manifest extension.

Kurtnoise
1st December 2007, 13:52
A patch (http://kurtnoise.free.fr/index.php?dir=MeGUI/&file=framework_handling.patch) for a better Framework handling or this one (http://kurtnoise.free.fr/index.php?dir=MeGUI/&file=framework_handling_v2.patch).

Deckard2019
1st December 2007, 15:00
About this (https://sourceforge.net/tracker/index.php?func=detail&aid=1667076&group_id=156112&atid=798479), do you mean I can already process H264 .m2ts using MeGUI with it ?
I was about to launch encoding process using this : demux using xport, build .dga with DGAVCIndex, create .avs with ... notepad, feed MeGUI with it.
I wonder if it's reliable now ?

As I understand, MeGUI integration will soon occur. Great news !
Thanks a lot.

Sharktooth
1st December 2007, 15:01
the v2 patch is much better.
however instead of using all those if/else if, try with "case", like on the first patch.

Kurtnoise
1st December 2007, 17:13
the v2 patch is much better.
however instead of using all those if/else if, try with "case", like on the first patch.
my bad...one "break" statement was at the wrong place in my 1st patch. That's why it returned an error. I'll fix that.

Sharktooth
3rd December 2007, 14:47
In tags/0_2_x_x
core\details\mux\MuxWindow.Designer.cs(102,28): error CS0117:
'MeGUI.core.gui.TargetSizeSCBox' does not contain a definition for
'CustomSizes'
I think you left out to update something during your last commit.

Kurtnoise
5th December 2007, 15:40
Fixed...:)

Kurtnoise
5th December 2007, 15:42
According to the webpage (http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&displaylang=en), XP or Server 2003 is required...

Anyway, my notice was for Vista users only...;)

Here is the pseudo-code:
if (OS_type == Windows Vista)
{
if (Runtime == 2.0 SP1 || Runtime == 3.0 || Runtime == 3.5)
do nothing;
else {
if (MessageBox.Show("You're running MeGUI on Windows Vista but to avoid several issues, may I ask you to upgrade your .Net Framework ?\n", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
run http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&displaylang=en;
}
}
ok to commit ?



A patch for a better Framework handling or this one.
ok to commit the 1st one ?

Sharktooth
5th December 2007, 15:45
it's ok for me.

Kurtnoise
5th December 2007, 15:46
I think also that the changelog.txt should be changed (as formal way) for the dev builds...I mean don't mix up the 0.3.xx with 0.2.xxx.

Sharktooth
5th December 2007, 15:47
the problem is... how... :)

Kurtnoise
5th December 2007, 15:53
well, all the dev builds come from the svn trunk and are tagged as 0.3.xxx from nowadays, right ?

So, creating a new changelog.txt file with only the 0.3.xxx changes should be fine. :)

Sharktooth
5th December 2007, 15:58
ill see what i can do for the next build...in the meanwhile...
stable:
0.2.6.1041
- (Kurtnoise) Refactoring the dispose functionality. Patch by Eamon.
- (Kurtnoise) [MuxWindow] Help button was at the wrong place.
- (Kurtnoise) Updated the correct MediaInfoWrapper library.
dev:
0.3.0.1002 (includes 0.2.x branch fixes)
- (Kurtnoise) added a manifest file for the UAC level required on Vista.
- (Kurtnoise) [JobQueue] changed public to internal for the JobChangeEvent (to fix the compilation within MSVC2008).
- (Kurtnoise) [MainForm] cosmetics.
- (Kurtnoise) [MainForm] added some MessageBoxIcons.
- (Kurtnoise) Expand/Collapse all for logs.
- (Kurtnoise) silent worker creation if none exists (#1837578).
- (Kurtnoise) More informative logtree names for each jobs.
- (Kurtnoise) [JobQueue] FPS columm aligned to left.

Kurtnoise
5th December 2007, 16:01
yes but just drop down to the file and you'll see changes from 0.2.6.xxx. I think it's confusing...

Sharktooth
5th December 2007, 16:09
uhm... reorganized the changelog.
should be a bit more clear now.

Kurtnoise
5th December 2007, 20:11
mmh...this is not what I thought but whatever. :D


btw, what do you think about this form for the changelog ?

http://img253.imageshack.us/img253/6238/meguichangelog051220072ky3.png

mainly a richTextBox with some highlights for each versions number.


yeah, I'm back to XP now...:D

Sharktooth
5th December 2007, 20:30
uhm.... i think a treeview (like the log) will be better.
every version collapsed except the last one.
oh btw... you know i hate vista...

berrinam
6th December 2007, 03:52
Ok, after some computer failures, I got back to work on my profiles refactor. Here's a new patch which I think is complete (except whatever bugs I've added :P). The main changes are

fixed selected profiles behavior
internal changes in ProfileManager
profileimporter/profileexporter now works (the profileporter was mostly rewritten)
can load old profile collections
removed code for reading very old profiles (from 0.2.4.1004 and below)
some new util functions: templated Delegate types to avoid declaring the delegate types, better XmlSerialization functions, and ByID function
made Profiles and a few ProfileManager internals IIDable, so they can be searched with the ByID function

Get the patch here (http://megui.org/berrinam_patches/profiles_refactor/profiles_refactor_3.patch). I've added a new folder, so you'll have to create that yourself and perhaps also add the file manually. The folder is megui/core/details/0_2_6_x_profileloader/, and the file contained in it is Loader.cs. If you need to add the file manually, you can get it from here (http://megui.org/berrinam_patches/profiles_refactor/Loader.cs).

Kurtnoise
6th December 2007, 10:07
sounds good but as I said earlier, we need to add/tweak something to check also the output file format when we select a profile.

All x264-PD and x264-SA profiles should have only MP4 as output format. I'll check the code to try to add this.


edit: in your patch, Loader.cs index is twice...

berrinam
6th December 2007, 10:18
Not sure why that is. I just let TortoiseSVN make the patch for me.

As far as the x264-PD and x264-SA profiles go, I don't think it is right for profiles to contain information about the output format. As I see it, a video profile contains information about the codec settings, and nothing else. (This is why I removed PAR from codec panels, and why I plan to remove zones from there as well).

Keeping this statement true also makes the profile code simpler. I think we should explore other ways of enforcing MP4-only output, and more generally the problem of hardware output. This is probably the wrong approach, but another way of handling the problem you suggested would be to create a new type of codec/encoder.

Anyway, I think this problem is separate from my patch and can be addressed later.

SpAwN_gUy
6th December 2007, 10:29
my idea about the "hardware" is to add something to meGUI-Options to enforce "the Whole meGUI act for Some hardware".. i guess there are some restrictions to sound also and for subtitles, but not only the output container

berrinam
6th December 2007, 10:50
I'm having a go at adding support for x264 patches to MeGUI. But I can't find all the information for some of parameters. What range of values can --thread-queue take? What range of values can --aq-strength and --aq-sensitivity take?

berrinam
6th December 2007, 10:55
my idea about the "hardware" is to add something to meGUI-Options to enforce "the Whole meGUI act for Some hardware".. i guess there are some restrictions to sound also and for subtitles, but not only the output container

Like "Validate AVC Level"? I see what you mean, although I think Validate AVC Level is currently a bit unreliable.

I guess my concern is just that I don't want hardware support to be done as an afterthought, as that kind of thing has caused troubles time and again for MeGUI.

Kurtnoise
6th December 2007, 13:20
As far as the x264-PD and x264-SA profiles go, I don't think it is right for profiles to contain information about the output format. As I see it, a video profile contains information about the codec settings, and nothing else. (This is why I removed PAR from codec panels, and why I plan to remove zones from there as well).

Keeping this statement true also makes the profile code simpler. I think we should explore other ways of enforcing MP4-only output, and more generally the problem of hardware output. This is probably the wrong approach, but another way of handling the problem you suggested would be to create a new type of codec/encoder.

ok...you're right. Sorry for the disturbance. I'll try to find a better way to do that outside profiles settings.

all in all, your patch looks ok but I need to test it more extensively.

berrinam
6th December 2007, 13:22
Rereading my post, it comes off a bit aggressive. Sorry about that.

Kurtnoise
6th December 2007, 13:24
According to the webpage (http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&displaylang=en), XP or Server 2003 is required...

Anyway, my notice was for Vista users only...;)

Here is the pseudo-code:
if (OS_type == Windows Vista)
{
if (Runtime == 2.0 SP1 || Runtime == 3.0 || Runtime == 3.5)
do nothing;
else {
if (MessageBox.Show("You're running MeGUI on Windows Vista but to avoid several issues, may I ask you to upgrade your .Net Framework ?\n", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
run http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&displaylang=en;
}
}
ok, applied. So from now, MeGUI is "Vista ready" I think. :p At least, using MSVC# 2008 as compiler...

berrinam
6th December 2007, 13:24
Oh, and back on the topic of C# 3.0: are we ready to migrate now?

Kurtnoise
6th December 2007, 13:29
I'm not aware of some issues with it...So, I'd say *yes*.

Sharktooth
6th December 2007, 14:20
where i can get aften SVN builds?

EDIT: Never mind...

mroz
6th December 2007, 14:20
@Berrinam: in post 3523 you might want to edit one word in your quote of SpAwN_gUy - I think that's a rather harsh way to descibe one of your children ;)

Sharktooth
6th December 2007, 14:48
stable:

0.2.6.1042
- (Kurtnoise) better Framework handling.
- (Kurtnoise) added a warning for Vista users when the Framework is not up-to-dated.

dev:
0.3.0.1003 (includes 0.2.6.1042 fixes)
- (Kurtnoise) use the proper command syntax for svn and stable builds concerning Aften encoder

Sharktooth
6th December 2007, 18:27
@Kurtnoise: the .NET 2.0 SP1 is ONLY for 2003/XP... :(

Kurtnoise
6th December 2007, 19:21
yeah...blame Microsoft for that. Honestly that doesn't make sense because the framework 2.0 SP1 is required for the 3.5 which is Vista compatible.

To solve this, we just need to update the link to the framework 3.5.

check
6th December 2007, 22:53
What range of values can --aq-strength and --aq-sensitivity take?
These are both in --longhelp for supported builds.
Strength is a float between 0 and 1.1
Sensitivity is an int between 0 and 21(?)

berrinam
6th December 2007, 23:18
I saw them in the --longhelp. Ok, 22 is clearly the maximum for aq-sensitivity, but how about aq-strength? Just because 1.1 is "strong", higher values could still be allowed. I think I have currently set the maximum to 5.0.

And how about --thread-queue?

Kurtnoise
7th December 2007, 08:50
And how about --thread-queue?
I don't think it's useful because this has been removed from the svn...

berrinam
7th December 2007, 09:30
Ok. I didn't know that.

check
7th December 2007, 10:01
Just because 1.1 is "strong", higher values could still be allowed. I think I have currently set the maximum to 5.0.
If you are going for 'possible' rather than 'sane' (if it does go above 1.1), can you please remove the restriction on maximum GOP size? As far as I know there's no maximum.

berrinam
7th December 2007, 13:29
I don't want MeGUI to restrict what the users can do except unless there's a very good reason to do so (like with upsizing when resizing). However, there is a problem that .NET requires you to set a for those number boxes. So the solution is just setting something that no-one would ever go higher than. I'm not sure what it currently is, but I'll look into it.

berrinam
8th December 2007, 11:45
I've done what you asked for, check.

I've got some concerns about the generated x264 commandlines:
MeGUI generates --filter 1,1 for the deblock filter. But this is what x264 --longhelp says: -f, --deblock <alpha:beta> Loop filter AlphaC0 and Beta parameters [0:0]. So, shouldn't it actually be --deblock 1:1. But why is x264 not saying "unrecognised parameter --filter"?
MeGUI generates --analyse all. But x264 --longhelp says -A, --partitions <string> Partitions to consider ["p8x8,b8x8,i8x8,i4x4"]
- p8x8, p4x4, b8x8, i8x8, i4x4
- none, all
(p4x4 requires p8x8. i8x8 requires --8x8dct.). So shouldn't it be --partitions all

Kurtnoise
8th December 2007, 12:07
But why is x264 not saying "unrecognised parameter --filter" "--analyse"?
because those switches are still valid in the internal command x264 parsing. ;)

laserfan
8th December 2007, 21:59
Might I suggest to the developers that MeGUI be changed to Not default to "Open Preview after AviSynth script selection".

Because this is checked On by default, first-time users who load a very large file e.g. >15Mb find that it takes many minutes for MeGUI to open, causing some to abort thinking MeGUI is broken. :scared:

berrinam
8th December 2007, 23:18
Who writes >15Mb Avisynth scripts?

laserfan
9th December 2007, 00:20
I'm sorry, I meant >15Gb source files, not the .avs itself. MeGUI apparently wants to scan the whole file before previewing it.

berrinam
9th December 2007, 01:18
MeGUI doesn't scan the whole file first. Depending on your avisynth script, avisynth might, although MeGUI won't generate any such scripts. Can you give me an example of a script which takes minutes to load?

berrinam
9th December 2007, 02:01
More information logged by the audio encoder: Index: AviSynthAudioEncoder.cs
===================================================================
--- AviSynthAudioEncoder.cs (revision 431)
+++ AviSynthAudioEncoder.cs (working copy)
@@ -268,11 +268,13 @@
{
try
{
-
+ _log.LogEvent("Encode thread started");
using (AviSynthScriptEnvironment env = new AviSynthScriptEnvironment())
{
+ _log.LogEvent("Avisynth script environment opened");
using (AviSynthClip a = env.ParseScript(_avisynthAudioScript))
{
+ _log.LogEvent("Script loaded");
if (0 == a.ChannelsCount)
throw new ApplicationException("Can't find audio stream");

@@ -289,6 +291,7 @@
int frameBufferTotalSize = MAX_SAMPLES_PER_ONCE * a.ChannelsCount * a.BytesPerSample;
byte[] frameBuffer = new byte[frameBufferTotalSize];
createEncoderProcess(a);
+ _log.LogEvent("Encoder process started");
try
{
using (Stream target = _encoderProcess.StandardInput.BaseStream)
@@ -879,6 +882,8 @@
);
_avisynthAudioScript = script.ToString();

+ _log.LogValue("Avisynth script", _avisynthAudioScript);
+ _log.LogValue("Commandline used", _encoderCommandLine);
}

public void start()

Kurtnoise
9th December 2007, 09:40
that's fine. ;)


btw, could you remind me why avimux_gui has been prefered to divxmux ? I'm lazy to make a search in this huge thread. :)


there are also some bugs which can be closed in the tracker.

berrinam
9th December 2007, 12:52
avimux_gui is the best avi muxer of those we have considered (mencoder, ffmpeg, divxmux) in terms of its features and support for the avi format. The main problem of divxmux is that it only muxes divx video streams; theoroetically, it should work for xvid with a changed FourCC, but that seemed to be faulty. Also, I think it, like mencoder and ffmpeg, was unable to handle multiple audio streams, and was perhaps somewhat limited in terms of ac3 support. avimux_gui simply has none of these problems, as far as I know.

berrinam
9th December 2007, 13:12
Hmmm... I just fixed the drag&drop bugs and then realised you had already done that. But I think your solution just hid (and avoided) the real problem, which is the incorrect line in SaveMode.set. As a result, I don't think we need FileBar_Load any more. So my patch below reverts your fix and fixes the line in SaveMode.set. :)
Index: core/gui/FileBar.cs
===================================================================
--- core/gui/FileBar.cs (revision 436)
+++ core/gui/FileBar.cs (working copy)
@@ -19,13 +19,14 @@
public FileBar()
{
InitializeComponent();
+ DragDropUtil.RegisterSingleFileDragDrop(filename, setFilename, delegate() { return Filter; });
}

private bool saveMode = false;
public bool SaveMode
{
get { return saveMode; }
- set { saveMode = value; filename.AllowDrop = value; }
+ set { saveMode = value; filename.AllowDrop = !value; }
}

public bool ReadOnly
@@ -117,11 +118,6 @@
setFilename(filename.Text);
triggerEvent();
}
-
- private void FileBar_Load(object sender, EventArgs e)
- {
- DragDropUtil.RegisterSingleFileDragDrop(filename, setFilename, delegate() { return Filter; });
- }
}
public class FileBarEventArgs : EventArgs
{
Index: core/gui/FileBar.Designer.cs
===================================================================
--- core/gui/FileBar.Designer.cs (revision 436)
+++ core/gui/FileBar.Designer.cs (working copy)
@@ -62,7 +62,6 @@
this.Controls.Add(this.openButton);
this.Name = "FileBar";
this.Size = new System.Drawing.Size(269, 26);
- this.Load += new System.EventHandler(this.FileBar_Load);
this.ResumeLayout(false);
this.PerformLayout();

berrinam
9th December 2007, 13:38
Here's some code to handle huge delays more friendlily for the user than an error (bug 1846758 (http://sourceforge.net/tracker/index.php?func=detail&aid=1846758&group_id=156112&atid=798476)).

Index: core/details/mux/MuxStreamControl.cs
===================================================================
--- core/details/mux/MuxStreamControl.cs (revision 436)
+++ core/details/mux/MuxStreamControl.cs (working copy)
@@ -93,7 +93,7 @@

private void input_FileSelected(FileBar sender, FileBarEventArgs args)
{
- audioDelay.Value = PrettyFormatting.getDelay(input.Filename) ?? 0;
+ audioDelay.Value = PrettyFormatting.getDelayAndCheck(input.Filename) ?? 0;
raiseEvent();
}
}
Index: core/details/mux/MuxStreamControl.Designer.cs
===================================================================
--- core/details/mux/MuxStreamControl.Designer.cs (revision 436)
+++ core/details/mux/MuxStreamControl.Designer.cs (working copy)
@@ -109,12 +109,12 @@
//
this.audioDelay.Location = new System.Drawing.Point(112, 61);
this.audioDelay.Maximum = new decimal(new int[] {
- 5000,
+ 2147483647,
0,
0,
0});
this.audioDelay.Minimum = new decimal(new int[] {
- 5000,
+ -2147483648,
0,
0,
-2147483648});
Index: core/gui/AudioEncodingTab.cs
===================================================================
--- core/gui/AudioEncodingTab.cs (revision 436)
+++ core/gui/AudioEncodingTab.cs (working copy)
@@ -221,7 +221,7 @@
{
AudioInput = fileName;

- delay.Value = PrettyFormatting.getDelay(fileName) ?? 0;
+ delay.Value = PrettyFormatting.getDelayAndCheck(fileName) ?? 0;

AudioOutput = FileUtil.AddToFileName(PrettyFormatting.ReplaceDelay(fileName, 0),
MainForm.Instance.Settings.AudioExtension);
Index: core/gui/AudioEncodingTab.Designer.cs
===================================================================
--- core/gui/AudioEncodingTab.Designer.cs (revision 436)
+++ core/gui/AudioEncodingTab.Designer.cs (working copy)
@@ -148,12 +148,12 @@
//
this.delay.Location = new System.Drawing.Point(110, 147);
this.delay.Maximum = new decimal(new int[] {
- 10000,
+ 2147483647,
0,
0,
0});
this.delay.Minimum = new decimal(new int[] {
- 10000,
+ -2147483648,
0,
0,
-2147483648});
Index: core/util/PrettyFormatting.cs
===================================================================
--- core/util/PrettyFormatting.cs (revision 436)
+++ core/util/PrettyFormatting.cs (working copy)
@@ -3,6 +3,7 @@
using System.Text;
using System.IO;
using System.Text.RegularExpressions;
+using System.Windows.Forms;

namespace MeGUI.core.util
{
@@ -43,7 +44,30 @@
}

private static readonly Regex delayRegex = new Regex("(?<match>-?[0-9]+)ms");
+
/// <summary>
+ /// Gets the delay from the filename, but warns the user if this delay is larger than
+ /// 10 seconds.
+ /// </summary>
+ /// <param name="filename"></param>
+ /// <returns>The delay, or null if no valid delay was found</returns>
+ public static int? getDelayAndCheck(string filename)
+ {
+ int? delay = getDelay(filename);
+
+ if (delay.HasValue && Math.Abs(delay.Value) > 10000)
+ {
+ if (MessageBox.Show(string.Format("Your input filename suggests the delay is {0}ms ({1}s), " +
+ "which is surprisingly large. Try checking the tool used to create this file to see " +
+ "if it got the delay wrong.\n\nAre you sure this delay is correct?", delay, (delay / 1000)),
+ "Very large delay", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+ delay = null;
+ }
+
+ return delay;
+ }
+
+ /// <summary>
/// gets the delay from an audio filename
/// </summary>
/// <param name="fileName">file name to be analyzed</param>
Index: packages/tools/oneclick/AudioConfigControl.cs
===================================================================
--- packages/tools/oneclick/AudioConfigControl.cs (revision 436)
+++ packages/tools/oneclick/AudioConfigControl.cs (working copy)
@@ -83,7 +83,7 @@

public void openAudioFile(string p)
{
- delay.Value = PrettyFormatting.getDelay(p) ?? 0;
+ delay.Value = PrettyFormatting.getDelayAndCheck(p) ?? 0;
}

public AudioConfigControl()
Index: packages/tools/oneclick/AudioConfigControl.Designer.cs
===================================================================
--- packages/tools/oneclick/AudioConfigControl.Designer.cs (revision 436)
+++ packages/tools/oneclick/AudioConfigControl.Designer.cs (working copy)
@@ -93,12 +93,12 @@
//
this.delay.Location = new System.Drawing.Point(107, 64);
this.delay.Maximum = new decimal(new int[] {
- 10000,
+ 2147483647,
0,
0,
0});
this.delay.Minimum = new decimal(new int[] {
- 10000,
+ -2147483648,
0,
0,
-2147483648});


The new ranges for the delay NumericUpDowns are [int.MinValue -> int.MaxValue].

Kurtnoise
9th December 2007, 13:53
Hmmm... I just fixed the drag&drop bugs and then realised you had already done that. But I think your solution just hid (and avoided) the real problem, which is the incorrect line in SaveMode.set. As a result, I don't think we need FileBar_Load any more. So my patch below reverts your fix and fixes the line in SaveMode.set. :)
oh well...ok. That's fine. :) I had checked several things but not this one.

Here's some code to handle huge delays more friendlily for the user than an error (bug 1846758).
looks ok...I had too a similar patch but yours it's fine. Apply it anytime.

berrinam
9th December 2007, 14:03
Ok, I hope we're not treading on each other's toes with this one too. :)

This patch fixes bug 1842643 (path to avisynth cannot be set manually) (http://sourceforge.net/tracker/index.php?func=detail&aid=1842643&group_id=156112&atid=798476). In addition, the changes to the registry aren't set until "Save" is clicked on the Settings window. If "Cancel" is clicked, the changes aren't saved to the registry.

Index: core/details/MeGUISettings.cs
===================================================================
--- core/details/MeGUISettings.cs (revision 436)
+++ core/details/MeGUISettings.cs (working copy)
@@ -324,11 +324,7 @@
{
get
{
- Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\AviSynth");
- if(key==null)
- return null;
- else
- return (string)key.GetValue("plugindir2_5");
+ return Util.GetRegistryLocalMachineKey(@"SOFTWARE\AviSynth", "plugindir2_5");
}
set
{
@@ -336,8 +332,7 @@
throw new ArgumentException("Path must be absolute");
if(!System.IO.Directory.Exists(value))
throw new ArgumentException("Directory " + value + " does not exists");
- Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\AviSynth", true);
- key.SetValue("plugindir2_5", value);
+ Util.SetRegistryLocalMachineKey(@"SOFTWARE\AviSynth", "plugindir2_5", value);
}
}

Index: core/gui/SettingsForm.cs
===================================================================
--- core/gui/SettingsForm.cs (revision 436)
+++ core/gui/SettingsForm.cs (working copy)
@@ -157,7 +157,6 @@
defaultLanguage2.DataSource = defaultLanguage1.DataSource = keys;
defaultLanguage2.BindingContext = new BindingContext();
defaultLanguage1.BindingContext = new BindingContext();
- this.avisynthPluginsDir.Text = "" + MeGUISettings.AvisynthPluginsPath;
this.meguiUpdateCache.Text = "" + MeGUISettings.MeGUIUpdateCache;
}
/// <summary>
@@ -1740,7 +1739,6 @@
if (openFolderDialog.ShowDialog() == DialogResult.OK)
{
avisynthPluginsDir.Text = openFolderDialog.SelectedPath;
- MeGUISettings.AvisynthPluginsPath = avisynthPluginsDir.Text;
}
}

@@ -2008,6 +2006,8 @@
settings.FFMpegPath = textBox7.Text;
settings.AftenPath = tbAften.Text;
settings.AedSettings = this.autoEncodeDefaults;
+ MeGUISettings.AvisynthPluginsPath = avisynthPluginsDir.Text;
+
return settings;
}
set
@@ -2066,6 +2066,8 @@
textBox7.Text = settings.FFMpegPath;
tbAften.Text = settings.AftenPath;
this.autoEncodeDefaults = settings.AedSettings;
+ this.avisynthPluginsDir.Text = "" + MeGUISettings.AvisynthPluginsPath;
+
}
}
#endregion
Index: core/util/Util.cs
===================================================================
--- core/util/Util.cs (revision 436)
+++ core/util/Util.cs (working copy)
@@ -30,6 +30,23 @@

public class Util
{
+ public static string GetRegistryLocalMachineKey(string folder, string name)
+ {
+ Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(folder);
+ if (key == null)
+ return null;
+ else
+ return (string)key.GetValue(name);
+ }
+
+ public static void SetRegistryLocalMachineKey(string folder, string name, string value)
+ {
+ Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(folder, true);
+ if (key == null)
+ key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(folder);
+ key.SetValue(name, value);
+ }
+
public static void SetSize(Form f, Size s, FormWindowState state)
{
f.WindowState = state;

check
9th December 2007, 14:34
Thanks for the gop change.

Also, I think it, like mencoder and ffmpeg, was unable to handle multiple audio streams, and was perhaps somewhat limited in terms of ac3 support. avimux_gui simply has none of these problems, as far as I know.
Now I want to argue that you do the opposite of before -- in this case limit the user :). I'd much prefer if MeGUI didn't make it possible to make multi track AVIs. The reasons are mostly the same as why h264-in-avi is a bad idea:
1. They don't behave nicely in a windows environment. The only directshow splitter I know that handles dual audio AVI is haali's splitter, and that doesn't play all normal AVIs properly.
2. There is no technical reason to use dual audio AVI over mp4 or mkv. dual audio MKV is both smaller in filesize and has greater support (I know of no player that handles dual audio AVI anyway :p)

laserfan
9th December 2007, 15:28
MeGUI doesn't scan the whole file first. Depending on your avisynth script, avisynth might, although MeGUI won't generate any such scripts. Can you give me an example of a script which takes minutes to load?You're right about this--sorry, I should have mentioned it first but as I said this was my first attempt w/MeGUI so I didn't know any better. :o

DirectShowSource("movie.grf", fps=23.976, framecount=206236, audio=false)

This is an example of a HD DVD movie where the grf includes Haali Splitter and a VC-1 decoder. It works fine whether Preview is checked or not, but if checked it does crank away for the entire 200k frames and so appears "frozen" to an unsuspecting user.

mroz
9th December 2007, 15:45
So is the problem the splitter then? If it's incapable of random seeking, a request for the middle frame, which the preview initially displays, would then involve fetching all previous frames.

I didn't think Haali ever behaved like that, so presumably there's something odd about the video data? Never seen this myself, but then I don't have HD DVD sources.

laserfan
9th December 2007, 18:44
So is the problem the splitter then?You guys aren't understanding me--there is no problem (that I know of). The first time I tried MeGUI it seemed to be hung-up accessing my disk, so I aborted. Then I did some searching and found others had experienced the same problem. Then I tried again and left it alone, and eventually MeGUI opened, with the Preview window in the background. I added 2+2 and decided there must be a Preview on Open checkbox somewhere. Indeed there was.

I just suggested to default to "preview off" since while I was able to determine what was happening, I saw that others gave-up, think MeGUI was broken somehow.

Sharktooth
9th December 2007, 19:24
the problems exists for other programs too. it's avisynth getting busy coz complex scripts for HD stuff...
ppl never learn to not use 10000000 of filters with HD material...

mroz
9th December 2007, 19:47
the problems exists for other programs too. it's avisynth getting busy coz complex scripts for HD stuff...
ppl never learn to not use 10000000 of filters with HD material...

Um, this is your idea of a complex script:

DirectShowSource("movie.grf", fps=23.976, framecount=206236, audio=false)

?

That's the script laserfan quoted.

berrinam
9th December 2007, 21:59
You guys aren't understanding me--there is no problem (that I know of).But there is a problem. A script as simple as the one you posted should not normally take minutes to load: it should load in a few seconds. We were trying to find out why it took so long.

The first time I tried MeGUI it seemed to be hung-up accessing my disk, so I aborted. Then I did some searching and found others had experienced the same problem. Then I tried again and left it alone, and eventually MeGUI opened, with the Preview window in the background. I added 2+2 and decided there must be a Preview on Open checkbox somewhere. Indeed there was.

I just suggested to default to "preview off" since while I was able to determine what was happening, I saw that others gave-up, think MeGUI was broken somehow.
Thanks for bringing this to light. It is also possible to start the previewer from another thread, which will eliminate the hang (so MeGUI remains responsive while opening the avisynth script). This is definitely a good idea for the case of slow avisynth scripts, so I'll do that soon. Once this is done, I'm not sure whether it will be necessary to turn off the previewer by default.

Kurtnoise
9th December 2007, 22:02
This patch fixes bug 1842643 (path to avisynth cannot be set manually) (http://sourceforge.net/tracker/index.php?func=detail&aid=1842643&group_id=156112&atid=798476). In addition, the changes to the registry aren't set until "Save" is clicked on the Settings window. If "Cancel" is clicked, the changes aren't saved to the registry.

...
patch looks ok for me...

Maybe it's time now to create a patch to move avs plugins not in the Avisynth one as we said earlier..:)

berrinam
9th December 2007, 22:24
I've already got some of that in the works. My avisynth profile patch from quite a while ago did that automatically (using the "extra files" feature of the profile porter). I think that way worked quite well, and I will finish that patch after I have committed my profiles-refactor patch (since it makes handling profiles so much nicer).

laserfan
9th December 2007, 22:58
A script as simple as the one you posted should not normally take minutes to load: it should load in a few seconds...Glad my posts were useful then; usually I would let (little) stuff like this drop, but doom9 is an unusually disciplined board so I thought I would point it out. :)

berrinam
10th December 2007, 10:57
Ok, after some computer failures, I got back to work on my profiles refactor. Here's a new patch which I think is complete (except whatever bugs I've added :P). The main changes are ...

Get the patch here (http://megui.org/berrinam_patches/profiles_refactor/profiles_refactor_3.patch). I've added a new folder, so you'll have to create that yourself and perhaps also add the file manually. The folder is megui/core/details/0_2_6_x_profileloader/, and the file contained in it is Loader.cs. If you need to add the file manually, you can get it from here (http://megui.org/berrinam_patches/profiles_refactor/Loader.cs).

Shall I commit this now?

Kurtnoise
10th December 2007, 11:25
sure, go ahead.


We will see later if there are some bugs with it...:D

/me kidding

I haven't had bugs with it personally.

Sharktooth
10th December 2007, 13:57
maybe he was asking coz zones are missing

Kurtnoise
10th December 2007, 14:48
Sorry, for this off-topic but I missed to reply...

I'd much prefer if MeGUI didn't make it possible to make multi track AVIs. The reasons are mostly the same as why h264-in-avi is a bad idea
not at all...I don't see the point between multi audio tracks in AVI container and AVC stream.

1. They don't behave nicely in a windows environment.
since when ?

The only directshow splitter I know that handles dual audio AVI is haali's splitter, and that doesn't play all normal AVIs properly.
you forgot the one from Guliverkli project and Morgan Stream switcher.

2. There is no technical reason to use dual audio AVI over mp4 or mkv.
there is...the lack support of mp4 and mkv SAPs with multi audio tracks + the free choice to choose whatever we want.

I know of no player that handles dual audio AVI anyway :p)
Tested players comparison
You look for a player that has at least the following features:
CONT-1D AVI with MP3 multi-audio test (MPEG4 ASP + Multiple MP3 2.0 48KHz 96Kbps CBR)
CONT-1E AVI with AC3 multi-audio test (MPEG4 ASP + Multiple AC3 5.1 Eng)

358 results are matching your requirements
http://divxtest.surdvd.com/form/divxtest2_list.php?lang=eng

JarrettH
10th December 2007, 23:06
Does megui look for things like tivtc and colormatrix in the avisynth folder? just wondering because they have been updated and i usually replace them myself (in the avisynth folder)

berrinam
11th December 2007, 00:45
MeGUI has a very simple version handling system: it assumes the user does absolutely nothing to any of the files, so that the current version is the version that MeGUI last installed. There is no support for notifying MeGUI of the changes you have made.

If you don't want MeGUI to overwrite your files, then go to the update window, and set "Ignore updates" for all the files you changed.

SpAwN_gUy
11th December 2007, 16:22
@Berrinam: in post 3523 you might want to edit one word in your quote of SpAwN_gUy - I think that's a rather harsh way to descibe one of your children ;)Eh?

-------
'kay..
i'm waiting for those "nice profiles handling".. to reoganise my code... (and i'm writing some agentGUI (continued).. and maybe some Installer for an agent... and controller(who knows..)..)

and.. BTW.. has anyone seen the "x264farm Profile GUI" (i dont know the proper description, sorry).. the one with two huge EditBoxes... with first and second pass settings?

we've talked about that with berrinam.. and i've posted build in x264farm thread.. but.. no one suggested..

We (and I) really don't know.. how (or to what) to change those boxes..
(my next step in devs will be.. "saving x264Settings itself, but not only the strings.." .. 'cause for now AR is not passed to x264... only to the farm and then is assumed to be lost..)

mroz
12th December 2007, 00:34
Berrinam quoted your original version of "The Whole Megui", before you corrected yours. Both have the typo fixed now.

berrinam
13th December 2007, 07:10
I'm going on holiday. I'll be back in a month. :)

Sharktooth
19th December 2007, 05:08
@kurtnoise: i saw you added VS2008 project files to 0.2.x branch, but im not sure VS2008 can compile the megui sources as they are.
IIRC some changes were needed in trunk to make it happy...

Kurtnoise
19th December 2007, 07:46
should be fine now. So, don't forget to update your svn branch. :)

btw, I use MSVC# 2008 Express Edition...didn't tested with MSVC 2008.



edit: #1842385 & #1842643 can be closed in the bugtracker.

Kurtnoise
19th December 2007, 12:10
Here is a patch to use EnsureVBRMP3Sync() with DSS only:

Index: trunk/megui/AviSynthAudioEncoder.cs
===================================================================
--- trunk/megui/AviSynthAudioEncoder.cs (revision 447)
+++ trunk/megui/AviSynthAudioEncoder.cs (working copy)
@@ -553,11 +553,11 @@
}
}
if (directShow)
+ {
script.AppendFormat("DirectShowSource(\"{0}\"){1}", audioJob.Input, Environment.NewLine);
+ script.AppendFormat("EnsureVBRMP3Sync(){0}", Environment.NewLine);
+ }

- script.AppendFormat("EnsureVBRMP3Sync(){0}", Environment.NewLine);
-
-
if (audioJob.Delay != 0)
script.AppendFormat("DelayAudio({0}.0/1000.0){1}", audioJob.Delay, Environment.NewLine);


Here is a patch to copy only the function used instead of the 5 ones:
Index: trunk/megui/AviSynthAudioEncoder.cs
===================================================================
--- trunk/megui/AviSynthAudioEncoder.cs (revision 447)
+++ trunk/megui/AviSynthAudioEncoder.cs (working copy)
@@ -782,61 +782,73 @@
}

script.AppendFormat("ConvertAudioTo16bit(){0}", Environment.NewLine);
+ script.AppendLine(@"return last");

-
- script.AppendLine(
+ // copy the appropriate function at the end of the script
+ switch (audioJob.Settings.DownmixMode)
+ {
+ case ChannelMode.KeepOriginal:
+ break;
+ case ChannelMode.ConvertToMono:
+ break;
+ case ChannelMode.DPLDownmix:
+ script.AppendLine(@"
+function x_dpl" + id + @"(clip a)
+ {
+ fl = GetChannel(a, 1)
+ fr = GetChannel(a, 2)
+ c = GetChannel(a, 3)
+ sl = GetChannel(a, 5)
+ sr = GetChannel(a, 6)
+ ssr = MixAudio(sl, sr, 0.2222, 0.2222)
+ ssl = Amplify(ssr, -1.0)
+ fl_c = MixAudio(fl, c, 0.3254, 0.2301)
+ fr_c = MixAudio(fr, c, 0.3254, 0.2301)
+ l = MixAudio(ssl, fl_c, 1.0, 1.0)
+ r = MixAudio(ssr, fr_c, 1.0, 1.0)
+ return MergeChannels(l, r)
+ }");
+ break;
+ case ChannelMode.DPLIIDownmix:
+ script.AppendLine(
@"
-
-return last
-
-function x_dpl" + id + @"(clip a)
-{
- fl = GetChannel(a, 1)
- fr = GetChannel(a, 2)
- c = GetChannel(a, 3)
- sl = GetChannel(a, 5)
- sr = GetChannel(a, 6)
- ssr = MixAudio(sl, sr, 0.2222, 0.2222)
- ssl = Amplify(ssr, -1.0)
- fl_c = MixAudio(fl, c, 0.3254, 0.2301)
- fr_c = MixAudio(fr, c, 0.3254, 0.2301)
- l = MixAudio(ssl, fl_c, 1.0, 1.0)
- r = MixAudio(ssr, fr_c, 1.0, 1.0)
- return MergeChannels(l, r)
-}
-
function x_dpl2" + id + @"(clip a)
-{
- fl = GetChannel(a, 1)
- fr = GetChannel(a, 2)
- c = GetChannel(a, 3)
- sl = GetChannel(a, 5)
- sr = GetChannel(a, 6)
- ssl = MixAudio(sl, sr, 0.2818, 0.1627).Amplify(-1.0)
- fl_c = MixAudio(fl, c, 0.3254, 0.2301)
- ssr = MixAudio(sl, sr, 0.1627, 0.2818)
- fr_c = MixAudio(fr, c, 0.3254, 0.2301)
- l = MixAudio(ssl, fl_c, 1.0, 1.0)
- r = MixAudio(ssr, fr_c, 1.0, 1.0)
- return MergeChannels(l, r)
-}
-
+ {
+ fl = GetChannel(a, 1)
+ fr = GetChannel(a, 2)
+ c = GetChannel(a, 3)
+ sl = GetChannel(a, 5)
+ sr = GetChannel(a, 6)
+ ssl = MixAudio(sl, sr, 0.2818, 0.1627).Amplify(-1.0)
+ fl_c = MixAudio(fl, c, 0.3254, 0.2301)
+ ssr = MixAudio(sl, sr, 0.1627, 0.2818)
+ fr_c = MixAudio(fr, c, 0.3254, 0.2301)
+ l = MixAudio(ssl, fl_c, 1.0, 1.0)
+ r = MixAudio(ssr, fr_c, 1.0, 1.0)
+ return MergeChannels(l, r)
+ }");
+ break;
+ case ChannelMode.StereoDownmix:
+ script.AppendLine(@"
function x_stereo" + id + @"(clip a)
-{
- fl = GetChannel(a, 1)
- fr = GetChannel(a, 2)
- c = GetChannel(a, 3)
- lfe = GetChannel(a, 4)
- sl = GetChannel(a, 5)
- sr = GetChannel(a, 6)
- l_sl = MixAudio(fl, sl, 0.2929, 0.2929)
- c_lfe = MixAudio(lfe, c, 0.2071, 0.2071)
- r_sr = MixAudio(fr, sr, 0.2929, 0.2929)
- l = MixAudio(l_sl, c_lfe, 1.0, 1.0)
- r = MixAudio(r_sr, c_lfe, 1.0, 1.0)
- return MergeChannels(l, r)
-}
-
+ {
+ fl = GetChannel(a, 1)
+ fr = GetChannel(a, 2)
+ c = GetChannel(a, 3)
+ lfe = GetChannel(a, 4)
+ sl = GetChannel(a, 5)
+ sr = GetChannel(a, 6)
+ l_sl = MixAudio(fl, sl, 0.2929, 0.2929)
+ c_lfe = MixAudio(lfe, c, 0.2071, 0.2071)
+ r_sr = MixAudio(fr, sr, 0.2929, 0.2929)
+ l = MixAudio(l_sl, c_lfe, 1.0, 1.0)
+ r = MixAudio(r_sr, c_lfe, 1.0, 1.0)
+ return MergeChannels(l, r)
+ }");
+ break;
+ case ChannelMode.Upmix:
+ script.AppendLine(
+@"
function x_upmix" + id + @"(clip a)
{
m = ConvertToMono(a)
@@ -845,41 +857,46 @@
c = SuperEQ(m,""" + tmp + @"center.feq"")
lfe = SuperEQ(m,""" + tmp + @"lfe.feq"")
return MergeChannels( f.getleftchannel, f.getrightchannel , c, lfe, s.getleftchannel, s.getrightchannel)
-}
-
+}");
+ break;
+ case ChannelMode.UpmixUsingSoxEq:
+ script.AppendLine(
+@"
function x_upmixR" + id + @"(clip Stereo)
{
- Front = mixaudio(Stereo.soxfilter(""filter 0-600""),mixaudio(Stereo.soxfilter(""filter 600-1200""),Stereo.soxfilter(""filter 1200-7000""),0.45,0.25),0.50,1)
- Back = mixaudio(Stereo.soxfilter(""filter 0-600""),mixaudio(Stereo.soxfilter(""filter 600-1200""),Stereo.soxfilter(""filter 1200-7000""),0.35,0.15),0.40,1)
- fl = GetLeftChannel(Front)
- fr = GetRightChannel(Front)
- cc = ConvertToMono(stereo).SoxFilter(""filter 625-24000"")
- lfe = ConvertToMono(stereo).SoxFilter(""lowpass 100"",""vol -0.5"")
- sl = GetLeftChannel(Back)
- sr = GetRightChannel(Back)
- sl = DelayAudio(sl,0.02)
- sr = DelayAudio(sr,0.02)
+ Front = mixaudio(Stereo.soxfilter(""filter 0-600""),mixaudio(Stereo.soxfilter(""filter 600-1200""),Stereo.soxfilter(""filter 1200-7000""),0.45,0.25),0.50,1)
+ Back = mixaudio(Stereo.soxfilter(""filter 0-600""),mixaudio(Stereo.soxfilter(""filter 600-1200""),Stereo.soxfilter(""filter 1200-7000""),0.35,0.15),0.40,1)
+ fl = GetLeftChannel(Front)
+ fr = GetRightChannel(Front)
+ cc = ConvertToMono(stereo).SoxFilter(""filter 625-24000"")
+ lfe = ConvertToMono(stereo).SoxFilter(""lowpass 100"",""vol -0.5"")
+ sl = GetLeftChannel(Back)
+ sr = GetRightChannel(Back)
+ sl = DelayAudio(sl,0.02)
+ sr = DelayAudio(sr,0.02)
return MergeChannels(fl,fr,cc,lfe,sl,sr)
-}
-
+}");
+ break;
+ case ChannelMode.UpmixWithCenterChannelDialog:
+ script.AppendLine(
+@"
function x_upmixC" + id + @"(clip stereo)
{
- left = stereo.GetLeftChannel()
- right = stereo.GetRightChannel()
- fl = mixaudio(left.soxfilter(""filter 0-24000""),right.soxfilter(""filter 0-24000""),0.6,-0.5)
- fr = mixaudio(right.soxfilter(""filter 0-24000""),left.soxfilter(""filter 0-24000""),0.6,-0.5)
- cc = ConvertToMono(stereo).SoxFilter(""filter 625-24000"")
- lfe = ConvertToMono(stereo).SoxFilter(""lowpass 100"",""vol -0.5"")
- sl = mixaudio(left.soxfilter(""filter 0-24000""),right.soxfilter(""filter 0-24000""),0.5,-0.4)
- sr = mixaudio(right.soxfilter(""filter 0-24000""),left.soxfilter(""filter 0-24000""),0.5,-0.4)
- sl = DelayAudio(sl,0.02)
- sr = DelayAudio(sr,0.02)
+ left = stereo.GetLeftChannel()
+ right = stereo.GetRightChannel()
+ fl = mixaudio(left.soxfilter(""filter 0-24000""),right.soxfilter(""filter 0-24000""),0.6,-0.5)
+ fr = mixaudio(right.soxfilter(""filter 0-24000""),left.soxfilter(""filter 0-24000""),0.6,-0.5)
+ cc = ConvertToMono(stereo).SoxFilter(""filter 625-24000"")
+ lfe = ConvertToMono(stereo).SoxFilter(""lowpass 100"",""vol -0.5"")
+ sl = mixaudio(left.soxfilter(""filter 0-24000""),right.soxfilter(""filter 0-24000""),0.5,-0.4)
+ sr = mixaudio(right.soxfilter(""filter 0-24000""),left.soxfilter(""filter 0-24000""),0.5,-0.4)
+ sl = DelayAudio(sl,0.02)
+ sr = DelayAudio(sr,0.02)
return MergeChannels(fl,fr,cc,lfe,sl,sr)
-}
-
+}");
+ break;
+ }

-"
- );
_avisynthAudioScript = script.ToString();

_log.LogValue("Avisynth script", _avisynthAudioScript);


the main goal of these patches is to improve the logfile reading.

Sharktooth
19th December 2007, 15:53
should be fine now. So, don't forget to update your svn branch. :)

btw, I use MSVC# 2008 Express Edition...didn't tested with MSVC 2008.



edit: #1842385 & #1842643 can be closed in the bugtracker.
on my way.

darkKlor
26th December 2007, 20:12
should be fine now. So, don't forget to update your svn branch. :)

btw, I use MSVC# 2008 Express Edition...didn't tested with MSVC 2008.



edit: #1842385 & #1842643 can be closed in the bugtracker.

i'll just confirm for you that it compiles in MSVC 2008, VSTS to be precise. there was no reason why it wouldn't anyway, the compiler is identical

edit: mind u, i will add that AvisynthWrapper.dll and MediaInfo.dll don't get copied to the output directory when you compile... i'm not sure if that's by design?

cogman
27th December 2007, 22:41
Hope this goes here, but I was just doing a triple pass encode (Yay!) and decided that that a pre-render might speed things up a bit. So here is what I was wondering, Would it be possible to do a pass while saving the rendered video for the next pass to give that extra few minutes of speed? How hard would that be to implement as I think it could be a nice speed increase for the multipass people. (that or Im doing something wrong :))

Just a suggestion, like I said, don't know if it belongs here or in the AVC forum. Keep up the good work guys!

Kurtnoise
28th December 2007, 14:57
edit: mind u, i will add that AvisynthWrapper.dll and MediaInfo.dll don't get copied to the output directory when you compile... i'm not sure if that's by design?
I don't think it's by design...:p



@Cogman: I don't think it's doable...but I'm not sure.

Kurtnoise
28th December 2007, 14:58
the main goal of these patches is to improve the logfile reading.
If noone object, I'll commit those patches this weekend.

Sharktooth
28th December 2007, 17:51
ok for me.

Doom9
29th December 2007, 15:13
@cogman: it's not possible. prerender jobs are done by ffmpeg, and your other jobs (you mentioned 3 pass) are done by x264.exe. It's not possible to have one decoder feed multiple encoders concurrently. What you'd need (and it would be a encoder specific solution only) would be for x264 to write out the results of the first pass to a video file (that part is possible), but then there's the problem part: a regular first pass is done at considerably lower quality.. so you cannot use the result of that pass as source for subsequent passes.. instead you'd need a lossless pass and leave out the bits that make a first pass less computationally intensive (subme, partitions, etc.), then you'd need x264 to accept avc input files (that would complicate matters since x264 doesn't support avc input afaik), and since avc is a lot more cpu consuming to decode, it would slow down subsequent passes (that's the reason why the prerendering job uses a lossless codec that takes very little in terms of cpu to decode.. we want to spend as little cpu cycles as possible during the actual encoding passes) - so in the end you'd likely end up gaining nothing at all.

You might have to ask people who work on decoders for the actual details, but I think conceptually, a decoder that can serve multiple encoders, while possible, would be a real PITA.. either you'd need synchronization between the various encoders to each requests the same frame at the same time, or, the decoder would have to keep multiple virtual sessions with their state so it can continually serve the proper frame (as you might know, in today's video codecs frames depend on each other so you can't just decode frame X, you would need to have some previous frames decoded).

check
29th December 2007, 15:54
it's possible currently with xvid, but only in a hackish way. There was an avisynth plugin that would tee off the video input and create a first pass stats file.

squid_80
29th December 2007, 17:35
It's a piece of cake to do it within an avisynth script. See http://forum.doom9.org/showthread.php?t=132406
To sum up: The first time the script is processed the output is encoded into a lossless avi. The next (and subsequent) time the script is processed the lossless avi is automatically used as input.

Now if we just had a lossless codec that could decompress at a speed close to mpeg2...

mroz
29th December 2007, 23:55
squid_80: Aiui that isn't what cogman was after. He wants the prerender step to occur at the same time as the first pass.

I don't see why the output from the avs file can't be teed into both a lossless encoder & the codec for a first pass, though I don't know how you'd do that under Windows. However I can't see any worthwhile advantage to doing that over running a distinct prerender step.

squid_80
30th December 2007, 05:40
squid_80: Aiui that isn't what cogman was after. He wants the prerender step to occur at the same time as the first pass.
That's exactly how it works. Read the linked thread completely.
(When I said "the first time the script is processed" I was referring to the first pass.)

Kurtnoise
30th December 2007, 10:54
10x for the hint...added to the todo list. :)

Raere
30th December 2007, 19:19
Now if we just had a lossless codec that could decompress at a speed close to mpeg2...

HuffYUV isn't fast enough for you?

squid_80
30th December 2007, 21:47
Not for plain decoding, no. Decoding huffyuv = ~80fps. Decoding mpeg2 = ~210fps.

check
7th January 2008, 10:24
Development versions are only used by 4% of MeGUI users (rated by hits to the two upgrade.xml files). I think it would be nice to increase this number so there are more bugtesters.
You could easily do this by making the stable/development checkbox easier to find.

Sharktooth
7th January 2008, 17:15
it was my intention to move the stable/dev selection in the auto-update window.

mroz
13th January 2008, 14:06
A minor suggestion for the AviSynth Script Creator.

For an anamorphic encode, currently the suggested resolution for resizing defaults (i think) to the largest that will fit within the source resolution, whilst maintaining the ratio of x-pixel-count-after-cropping:y-pixel-count-after-cropping.

Personally, if I'm doing an anamorphic encode I want as few transformations as possible, in order to minimise degradation. Therefore I'd prefer it if the default suggested resolution was simply the resolution of the source after cropping is applied.

This gives the same result if only width or height is cropped, but avoids up scaling when both values are cropped.

Opinions?

Mutant_Fruit
4th February 2008, 03:41
I threw up a quick patch onto the issue tracker in sourceforge. I'm not sure if that's checked regularly or not, so i'm just posting a link here to it:

http://sourceforge.net/tracker/index.php?func=detail&aid=1886000&group_id=156112&atid=798478

Let me know if those kinds of patches are ok or not before i waste time refactoring things which won't be accepted ;)

Sharktooth
4th February 2008, 03:51
patches are always well accepted.
i cant actually monitor the tracker regularly. also i have a new job and they dont want me to mess with OSS... but i will be back as soon as i manage to have a new contract.

rebkell
4th February 2008, 18:49
I haven't read all the posts, forgive me if it's already been discussed, but I would like for Avisynth Creator to default to the d2v or source file name when saving it, it's the only part of the process where I actually have to type in a name, otherwise I can click through the whole process, with the exception of supplying the avs file name.

Carpo
4th February 2008, 19:29
patches are always well accepted.
i cant actually monitor the tracker regularly. also i have a new job and they dont want me to mess with OSS... but i will be back as soon as i manage to have a new contract.

since when can a comp tell you what to do outside of work, if you want to work on OSS after work hours you should be able to

check
5th February 2008, 05:21
Ever since you are allowed to sign a common law contract.

Sharktooth
5th February 2008, 16:37
since when can a comp tell you what to do outside of work, if you want to work on OSS after work hours you should be able to
they can.

Sharktooth
5th February 2008, 19:49
0.2.6.1044
- (Kurtnoise) updated MediaInfo library & his wrapper.
- (Kurtnoise) [neroConfigurationPanel] added vBitrate_ValueChanged() event for ABR & CBR checking.
- (Kurtnoise) display only the function used in the avs script for audio encodings instead of the 5 ones.
- (Kurtnoise) use EnsureVBRMP3Sync() with DirectShowSource only.
- (Kurtnoise) [JobQueue] changed public to internal for the JobChangeEvent (to fix the compilation within MSVC# 2008).
- (Kurtnoise) [AviSynthWindow] fixed width & height for Crop checkbox when "overcrop to achieve mod16" is selected (#1852845).
- (Kurtnoise) [AviSynthAudioEncoder] fixed bug #1850574 for DTS files sources.

unstable version builds are frozen until the profiles refactoring gets completed.

Mutant_Fruit
6th February 2008, 00:54
Another few patchs :) Hopefully they won't take long to review.

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

Kurtnoise
6th February 2008, 13:23
I applied few of them...I've no time for the moment for extra reviews. Maybe this weekend.

chros
7th February 2008, 20:56
Bugs:
- anamorphic mode and overcrop 16 in avisynth creator: megui should give always the same SAR values (I don't know how the SAR values are calculated from this DAR) with different cropping settings (now it's almost always different)
- you should update DGIndex to 1.5 RC2, because the current b10 has the colorimetry "bug" (all dvds are treated as BT.709, it uses the "1" matrix instead of "5")

requests:
- can you make the open dialog is "file droppable" in avisynth creator and in d2v creator (like on the main form) ?
- can you make a checkbox to apply or not apply DRC with AC3 and DTS sources on the main form (NIC sources) (and other sources, where it's appropriate) ? Now, megiu always apply DRC with the DRC=1 parameter ...

Thanks

Sharktooth
8th February 2008, 04:41
feature requests and bug reports should be posted on the appropriate trackers on the MeGUI project page on sourceforge.
thanks.

chros
8th February 2008, 10:45
feature requests and bug reports should be posted on the appropriate trackers on the MeGUI project page on sourceforge.
OK. Submitted ...

Mutant_Fruit
11th February 2008, 13:01
I applied few of them...I've no time for the moment for extra reviews. Maybe this weekend.
Just wondering what the outlook is for the patches on the issue tracker.

Also, to give a heads up on what i'm working on now: There are issues in mono's implementation of SettingsBase and/or ApplicationSettingsBase which prevent MeGUI from starting up. I'm working on fixing that.

There are also issues with the serializer which prevents mono from opening settings which were serialized on .NET as opposed to with mono. I'm creating a testcase for that to submit to mono.

Kurtnoise
11th February 2008, 21:17
Before reviewing X-plateform patches, I'm starting with patches which fix bugs...



@Sharktooth: could be great to update the bugs/patches trackers on SF...you know that I can't do it myself. ;)

Sharktooth
12th February 2008, 14:27
eh... im trying to find the time...

EDIT: i updated your permissions on MeGUI trackers.

Mutant_Fruit
13th February 2008, 01:40
And we have a winner :)

I'm just getting a few more patches ready for MeGUI, once all those are in you'll be cross platform. As for how you'll actually encode on linux, well, that's another issue altogether. I don't know too much about media on linux, but it should be possible to hook into gstreamer to do the heavy lifting.


http://img112.imageshack.us/img112/5045/meguilinuxme3.th.png (http://img112.imageshack.us/my.php?image=meguilinuxme3.png)

mroz
13th February 2008, 03:14
And we have a winner :)

I'm just getting a few more patches ready for MeGUI, once all those are in you'll be cross platform. As for how you'll actually encode on linux, well, that's another issue altogether. I don't know too much about media on linux, but it should be possible to hook into gstreamer to do the heavy lifting.


http://img112.imageshack.us/img112/5045/meguilinuxme3.th.png (http://img112.imageshack.us/my.php?image=meguilinuxme3.png)

Um, isn't MeGUI so heavily reliant on AviSynth that removing this dependance would effectively require a rewrite?

As to Avisynth under linux, aiui v2 isn't stable under Wine & v3 is not only pre alpha, but pretty much stalled too.

Or am I missing something?

Avisynth is still one of the big reasons I use Windows rather than linux.

Mutant_Fruit
13th February 2008, 03:44
As to Avisynth under linux, aiui v2 isn't stable under Wine & v3 is not only pre alpha, but pretty much stalled too.
I thought AviSynth 2.5x under wine worked fine? Maybe not the latest 2.5x, but there are versions which do run...

EDIT: Quick google: http://bugs.winehq.org/show_bug.cgi?id=1707 Result: AviSynth is known to work under Wine.

mroz
13th February 2008, 04:03
Good news if true. I've not tried it - only read on several occasions that while it 'works', it isn't stable.

This thread is almost equally old: http://forum.doom9.org/showthread.php?t=81793&page=2

It implies 2.5.2 worked then. I don't know if there's been any progress with more recent versions since.

However going back to 2.5.2 isn't an option for me. I rely on MT & I think that's only 2.5.7 atm.

...Hm, more recently there's: http://forum.doom9.org/showthread.php?p=746967#post746967 with 2.56 mostly working.

But throughout there are descriptions of various aspects not working properly (two being subtitling & anything involving implicit clip variables). I can really do without a further source of bugs that need working around; I usually manage to generate enough problems on my own without further help ;)

Adub
13th February 2008, 05:05
I have heard rumors that 2.5.7 is working with wine, but I can't test it myself. Just yet, atleast. I may do a fresh install this weekend.

Gusar
13th February 2008, 12:30
I've been doing a lot of encoding with Avisynth in wine with no problems whatsoever. Avisynth versions 2.5.7 and 2.5.8 Alpha 2 with wine versions 0.9.42 and onward. No subtitling, but I did use Mrestore and unDEFTmatcher which are quite complicated scripts. And if those work, probably everything works.

Sharktooth
13th February 2008, 15:06
@Mutant_Fruit: great job bro:)

mroz
13th February 2008, 15:14
I know it's lame of me to ask rather than test it myself, but I don't have a recent linux install atm. Any chance one of you could try a script which uses MT & SetMTMode()? Also if possible MVTools? If neither of those break it, that'd be an amazing sign & make it a workable alternative. Ooh, a headless quad box for dedicated encoding, that would be nice; linux is so much easier to automate tasks under. Sorry - just the first thoughts that went through my head. It's mostly empty space in there, so they're hard to stop before they drop out the other side.

Mutant_Fruit
13th February 2008, 16:01
However going back to 2.5.2 isn't an option for me. I rely on MT & I think that's only 2.5.7 atm.

Well, if the choice is between:
A) Nothing and,
B) Something but without MT

I think the choice is obvious ;) Sure we'll see how it goes anyway. I'm not quite sure how everything will hook in with the linux counterparts yet. AutoUpdate will have to be altered to cope, launching commandline apps may have to be altered. I don't really know ;)

mroz
13th February 2008, 18:00
It's certainly a great achievement, don't get me wrong. I'm just being selfish & thinking purely about my own applications. Personally I couldn't live without MT for my slow scripts & they're the kind I'd want to hand off to a headless linux box.

Either way though it's a good sign for future cross platform development of MeGUI :cool:

Sharktooth
13th February 2008, 18:01
if you're going to use linux bins for commandline tools it will be a PITA...
as long as you use wine, paths and stuff will be ok in linux...

Kurtnoise
13th February 2008, 20:39
i updated your permissions on MeGUI trackers.
I don't think so...or I'm blind.

When I click on "Admin" link, I get this error message : "You do not have admin status on any trackers for this project"...


@Mutant_Fruit: could you post also the MonoDevelop File project in the patches tracker ? thanks...:)

Mutant_Fruit
13th February 2008, 21:52
could you post also the MonoDevelop File project in the patches tracker ?

MonoDevelop can load .sln files, so there's no need for separate solution files (luckily). There are one or two small issues with the .sln files with the references, but all you have to do is remove the existing reference then add it back in again and everything's ok. I believe it's a case sensitivity issue, nothing important though. I'll put i a fix for that whenever i bother seeing what exactly the issue is ;)

if you're going to use linux bins for commandline tools it will be a PITA...
as long as you use wine, paths and stuff will be ok in linux...
What exactly would the issue be with linux bins? Assuming the commandline options are the same, you should just have to change the 'path' referenced in the MeGUI settings to point to the linux bin. Then it should work fine... right?

I've already submitted a patch to MeGUI to use Path.Combine() for combining all paths, so there shouldn't be an issue there.

EDIT: Bear in mind i know nothing about encoding in linux ;)

Sharktooth
13th February 2008, 21:59
I don't think so...or I'm blind.

When I click on "Admin" link, I get this error message : "You do not have admin status on any trackers for this project"...

log off and re-log back on.

What exactly would the issue be with linux bins?
The issue is not all tools are available as linux native binaries (DGIndex for example...)

Mutant_Fruit
13th February 2008, 22:11
Kurtnoise:

The patch to fix the calculator was applied incorrectly ;)

Line 212 in calculator.cs should be:

this.nbFrames.Maximum = new decimal(new int[] {
10000000,
10000000,
10000000,
0});


For applying patches on windows, this should do the job:
http://gnuwin32.sourceforge.net/downlinks/patch-bin-zip.php

Mutant_Fruit
13th February 2008, 22:13
The issue is not all tools are available as linux native binaries (DGIndex for example...)

Ah, gotcha. But for tools which have native linux versions, wouldn't it be better if we used the native version as opposed to the wine version?

Sharktooth
14th February 2008, 13:48
not necessarily. wine is not an emulator... it's more like a wrapper. also having separate binaries on the auto-update server could be problematic.

Bigmango
14th February 2008, 22:56
Hi,

I seem to get the same bug someone got in this thread:
http://forum.doom9.org/showthread.php?p=1055817&highlight=megui+tahoma#post1055817

Megui has always been running fine, but sine I have installed the SP1 for vista I get a fatal error window when starting megui.

The fatal error is about the font Tahoma not supporting the style "regular", followed by a stack trace System.Drawing.Font.CreateNativeFont() ..... etc.... in Megui.MainForm

So, I can't start megui anymore...:confused:


EDIT: ok, I found the problem. For some reason the tahoma.ttf has disapeared from my fonts folder. Copying the font file back into the folder fixed the problem.

Mutant_Fruit
17th February 2008, 22:49
This is just a subtle nudge about those patches on the issue tracker ;)

Mutant_Fruit
22nd February 2008, 15:20
http://sourceforge.net/tracker/index.php?func=detail&aid=1892357&group_id=156112&atid=798478
http://sourceforge.net/tracker/index.php?func=detail&aid=1892350&group_id=156112&atid=798478
http://sourceforge.net/tracker/index.php?func=detail&aid=1888263&group_id=156112&atid=798478

If i can at least get those three into SVN I could continue the effort of changing the 1 or 2 remaining areas of code that affect MeGUI usability on non-windows platforms...

I hope i'm not being too annoying at this stage ;)

Sharktooth
22nd February 2008, 16:19
do you want SVN access?
seriously, i cant dedicate any time to megui dev right now. however, if you want i can add you as a project developer with full SVN access.

Mutant_Fruit
22nd February 2008, 20:32
Sure, that'd be fine with me. The changes can always be reverted if someone disagrees with em, tis the beauty of SVN, though i doubt anyone will.

Sharktooth
23rd February 2008, 04:39
well, we should discuss a couple of things then.
now it's almost 5AM and i really need to sleep.

Mutant_Fruit
23rd February 2008, 13:28
I'll PM you my email address then, unless you want to discuss stuff here...

EDIT: You seem to be out of PM space ;) alan.mcgovern@gmail.com will do it.

Sharktooth
5th March 2008, 13:39
sorry, i missed your reply.
ok, let's discuss it here, maybe there are others interested.
megui repository is divided into several tags and branches.
the tags directory contains the megui stable version.
while the trunk contains the current development version.
branches dir contains parallel development projects (like megui x264farm version).
1st and most important thing is every fix must be ported to both the stable and dev versions. new features only in trunk (dev), except, changes in the codecs or other 3rd party software commandlines or API.
also we usually discuss breaking changes and new features.
any question?

EDIT: btw, i added you...

bob0r
6th March 2008, 08:32
@Sharktooth:

You can use this .exe for megui update (rename to x264.exe :p):
http://forum.doom9.org/showthread.php?p=1108916#post1108916

In the future it will go on request or monthly updates or something (AQ, git(svn) or not, will always be part of the .exe)

Sharktooth
6th March 2008, 13:57
already up :)

bob0r
7th March 2008, 09:51
Fixed x264.exe 748 online:
http://forum.doom9.org/showthread.php?p=1109544#post1109544

Kurtnoise
9th March 2008, 14:52
The patch to fix the calculator was applied incorrectly ;)
IIRC, the last patch for this has been posted after the closing. Anyway, it's fixed now.


@Sharktooth: could be great to update some packages (mkvtoolnix, ffmpeg, mencoder, mp4box, DGIndex (https://sourceforge.net/tracker/index.php?func=detail&aid=1889482&group_id=156112&atid=798476))...I'm updating MediaInfo library and his wrapper.

Sharktooth
9th March 2008, 16:03
DGIndex needs fixing in the megui code.
The build in auto-update is the latest working build that the actual code supports.
however tomorrow ill update some packages.

Kurtnoise
9th March 2008, 17:00
DGIndex needs fixing in the megui code.
oO really ? I need to check this because I've made a quick test with the RC3 and it works like a charm. :)

Mutant_Fruit
10th March 2008, 00:18
@SharkTooth: Thanks for that. I'm heading over to france in a few hours. I'll be back late on thursday, so i'll probably ping ye some time on friday or over the weekend if i have any questions/problems.

Thanks.

Sharktooth
10th March 2008, 14:00
@M_F: you're welcome.

@Kurtnoise: IIRC, something changed on dgindex about audio tracks selection.
EDIT: look here -> https://forum.doom9.org/showthread.php?p=1063355#post1063355

Kurtnoise
10th March 2008, 19:44
mmh...you're right. I just tested d2v file creation. I'll have a look asap.

Sharktooth
11th March 2008, 03:55
Berrinam is still MIA?

Kurtnoise
13th March 2008, 13:48
Hi,

Should I rebuild the old x264 config (to have zones, extra commands, etc...) for the dev branch or we wait the berrinam's back ?

Kurtnoise
13th March 2008, 13:49
Berrinam is still MIA?
falling in love maybe...:D

Sharktooth
13th March 2008, 13:53
Hi,

Should I rebuild the old x264 config (to have zones, extra commands, etc...) for the dev branch or we wait the berrinam's back ?
lets wait few other days. if he's still MIA we can either:
1- Revert to the old profiles code
2- Complete the profiles refactor adding the missing zones and custom CLI options fox x264
3- Go ahead without zones and add custom CLI options only.

Kurtnoise
13th March 2008, 14:04
ok...shouln't be too complicated anyway.


btw, last night I checked the new DGindex stuff for audio streams extraction and it seems to be more complicated than I thought. We need to run a special command first to create a logfile to have each tracks IDs, then read those datas from the file and put them in the current DGindex command...so, great. :-/

I'll see what can I do for this part....

Sharktooth
13th March 2008, 14:07
eh, i had a look at it some time ago and i gave up since i had not enough time to get it working.

buzzqw
13th March 2008, 14:26
@Kurtonise13

yea, confirm; i use the same approach on automkv
First check if stream is mpeg2 (mediainfo) if yes, lauch dgindex in info mode, parse the log and add the audio tracks to list
If video is mpeg4, run dgavcdec demuxing all audio tracks and indexing the file, then add audio to list

BHH

Kurtnoise
14th March 2008, 14:06
btw, last night I checked the new DGindex stuff for audio streams extraction and it seems to be more complicated than I thought. We need to run a special command first to create a logfile to have each tracks IDs, then read those datas from the file and put them in the current DGindex command...so, great. :-/

I'll see what can I do for this part....
There is also an alternative: using the track IDs supply by the DVDDecrypter stream infos file. :) Several parts in the current code use this. But an issue remains if we use this way : when users don't have a such file. So, the right trick seems to use the logfile created by DGindex. What do you think ?

Sharktooth
14th March 2008, 17:26
DVD Decrypter is dead and in some countries even illegal.
Sadly, we should not rely on it anymore but that means rewriting some code...
Buzzqw method is the right way to go (yeah italians do it better:p) but as i said, it needs some time and will to rewrite some parts of megui.

stax76
14th March 2008, 18:00
I extract all streams and rename the files replacing the index with language code and name extracted from IFO.

buzzqw
14th March 2008, 20:32
yes.. if have an ifo.. but with a mpeg stream, not belonging to dvd.. it's hard to tell language
on automkv i use vstrip to determine audio id/languages (on ifo) and then allow dgindex to demux only tracks user selected

BHH

Mutant_Fruit
23rd March 2008, 01:56
This is the current constructor. This throws a null ref exception in Mono because of a a missing null-check which prevents MeGUI from loading:

class JobQueueSettings : ApplicationSettingsBase
{
public JobQueueSettings(IComponent c, string k)
:base(c, k)
{}
}


If i use an alternate base constructor, everything loads up fine

class JobQueueSettings : ApplicationSettingsBase
{
public JobQueueSettings(IComponent c, string k)
:base(k)
{}
}

My understanding of the whole ApplicationSettingsBase stuff isn't good enough to know if that's a safe change or not. If that's a safe change, am i good to commit that? That'll allow MeGUI to run on Mono.

bob0r
23rd March 2008, 06:28
Megui x264 config: RC and ME > Macroblock Options

When you select Adaptive DCT (--8x8dct), --i8x8 should be enabled also, this is a bug. Please fix it :)

Also i8x8 is on by default default: --partitions "p8x8,b8x8,i8x8,i4x4"

Edit:
Also please update --analyse to --partitions. Thanks

Kurtnoise
24th March 2008, 08:37
This is the current constructor. This throws a null ref exception in Mono because of a a missing null-check which prevents MeGUI from loading:

class JobQueueSettings : ApplicationSettingsBase
{
public JobQueueSettings(IComponent c, string k)
:base(c, k)
{}
}


If i use an alternate base constructor, everything loads up fine

class JobQueueSettings : ApplicationSettingsBase
{
public JobQueueSettings(IComponent c, string k)
:base(k)
{}
}

It's fine for me if it doesn't break anything else...

Kurtnoise
24th March 2008, 08:45
Megui x264 config: RC and ME > Macroblock Options

When you select Adaptive DCT (--8x8dct), --i8x8 should be enabled also, this is a bug. Please fix it :)
ok...

Edit:
Also please update --analyse to --partitions. Thanks
both are correct...

Mutant_Fruit
24th March 2008, 16:40
It's fine for me if it doesn't break anything else...
From what i can tell, it's ok to make this change, so i'm going to go ahead and commit this. Let me know if any issues pop up that i've missed. The fix is in revision 479, so things should Just Work (TM) on Linux now. Encoding and all that doesn't work, that needs to be set up, but MeGUI starts up.

bob0r
26th March 2008, 01:53
ok...


both are correct...

Yes, but x264 --help shows --partitions, why not make it match the x264 git code, just logical.

Thanks :)

Kurtnoise
26th March 2008, 10:49
why ? lazyness probably..;)

Anyway, if you check the current x264 code (formely common.c), you can see that it's still there fortunately...

bob0r
26th March 2008, 12:21
why ? lazyness probably..;)

Anyway, if you check the current x264 code (formely common.c), you can see that it's still there fortunately...

YES i know that, pengvado left it there because he is such a nice guy :)

I just say: It would be better if you renamed it just to match Current x264 settings when you type x264 --help.
Clarity > Sanity!


P.S.
If you fixed the i8x8 issue, please update the stable version on the updater.... Okay Sahrktooth?
Sharktooth come on irc tonight 00:00-04:00 or tomorrow please, got something to run by you :)

Sharktooth
26th March 2008, 16:35
ill see what i can do

Kurtnoise
26th March 2008, 21:49
@bob0r: it's done...

bob0r
27th March 2008, 01:51
@bob0r: it's done...

Muchas gracias!

Sharktooth
27th March 2008, 15:02
0.2.6.1046 is up on the autoupdate and on sourceforge.
this should be the last 0.2.x release until something new comes out...

bob0r
31st March 2008, 07:28
@Sharktooth

Can you please update MeGUI with the proper DVD target sizes:

373MB 1/12 DVD
559MB 1/8 DVD
746MB 1/6 DVD
1119MB 1/4 DVD
1493MB 1/3 DVD
2239MB 1/2 DVD

The new x264 tv rules 2008 will also include these.

Edit:
Also add the AQ GIT x264 build to megui asap :D
http://forum.doom9.org/showthread.php?p=1119815#post1119815

Tacio
31st March 2008, 19:31
and what about 0.3.0.1004? any chance for update? :)

Sharktooth
1st April 2008, 03:25
https://forum.doom9.org/showthread.php?p=1119781#post1119781

~bT~
1st April 2008, 05:07
^ so no more updates Sharktooth? :(

poisondeathray
1st April 2008, 05:13
^ so no more updates Sharktooth? :(

Please say it isn't so :(

I just wanted to say many people appreciate your work Sharktooth, and the efforts of the whole development team.

73ChargerFan
1st April 2008, 06:29
Let me also extend my deepest thanks to Sharktooth and everyone else behind MeGUI. I've been struggling with learning to encode in my spare time for a year and a half, and I couldn't have gotten anywhere without MeGUI. Command line operations and tools just aren't my thing.

So, thank you.

bob0r
1st April 2008, 07:49
Hell we do need your great work.... keep it going Shark!!

Please update megui profile and x264.exe, we all need to be AQified! :D

IRC me for good feelings :p

mroz
2nd April 2008, 00:31
Oh bugger.

Not much I can add. Each of the devs will be missed if they choose to leave. They've all done great work. There are /many/ happy Megui users who never post or make their appreciation known in other ways.

The devs could choose to ignore overly critical or irrational users, but it's not always easy & one might well feel that one shouldn't have to.

I would hope that such reasons wouldn't be the principal cause of anyone leaving, as that would be a sad waste, but that's down to each dev.

Doom9
2nd April 2008, 20:35
You know, back in the day when I was running the megui show, there were a couple of times where I was pretty darned close to just throwing the towel because I was so sick and tired of people constantly bitching about something I invested large part of my free time of over one year. Imagine working for a charity and instead of being grateful, the people you help constantly give you grief. At some point you've just had it.

Try to see it from a different perspective: if you're reasonably proud of your product, if somebody comes along and screams bug, without doing anything even remotely related to proper verification, basically they call your work defective even though it isn't. That's not a compliment you're looking for. The least bit of courtesy you should show every freeware developer is proper research before calling something defective. Unless you are sure something is broken, don't call it broken. Similarly, if the answer is no, leave it at that, even if you do not understand the reasons. Your time would be better spent learning to code and make the change yourself if you find it worthwhile (and being a community project changes are still subject to approval before being committed into the mainline code.. that's how it works for open source projects in general) - rarely should you insist if you are really certain that the person on the other end just didn't understand your idea (often, images can help in such a case.. words can be misconstrued a lot more easily). Similarly, if people take away your time with trivial things.. it is just a waste of your time and you could do more useful things in the meantime. Accumulate just a few minutes of wasted time each day.. it eats away at you.

P.S. Every so often I also encounter people that treat me in a way where I feel it would be better if I just closed down the site and moved on to something different. You get used to the obvious insults, but every now and then somebody really finds that hole in your body armor and really thrusts the blade in - and it takes a lot to come back from that. Just as in real life, some things really get to you - the other party might not even realize their mistake since we don't have facial expression and body language online. The reaction might be too strong - but in the end we're all human and each and everybody reacts differently.. haven't you ever said or done something in the heat of the moment that you wouldn't have done if you had spent an hour cooling off (doing sports, smashing something until you can no more, etc.)?

bob0r
3rd April 2008, 11:53
Well whatever the future may hold, i love megui, and apparently so do thousands of other users.

0.01% LOUD complaining people
99.99% silent happy users

MeGUI + x264 is an absolute killer combination for proper video encoding!!!

@sharktooth
Thanks for adding x264 808M (ghost edition :D) to megui!!
See you soon cowboy..... FFFFINISH HIM!

Kurtnoise
4th April 2008, 15:23
well, I'm still there...coz I would like to implement and update several things this weekend.

rack04
4th April 2008, 15:52
well, I'm still there...coz I would like to implement and update several things this weekend.

Hip Hip Hurray! Thanks for your continued effort in developing this great program.

~bT~
4th April 2008, 15:57
@ Kurtnoise13

thank you sir!!!

trex
4th April 2008, 16:06
@ Kurtnoise13

I have been the more silent forum member here so far but I want to let you know that MeGUI is my favorite encoding UI.
I would love to see it further developped in the future.

:)

Best, trex

Mutant_Fruit
4th April 2008, 16:07
Just a quick update as to the status of the Mono port.

At the moment I'm tied up with no free time to spend on MeGUI. Monsoon, the GUI for the bittorrent library I develop has recently been accepted (http://monotorrent.blogspot.com/2008/04/there-was-meeting-yesterday-for.html) to the Suse linux distribution. I have two weeks before feature freeze, and 4-6 weeks before commit-freeze.

So i probably won't be doing too much of anything else between now and then. I've a lot to be working on ;)

As to the recent debackle that the MeGUI devs had, i think this link may be helpful. I watched it a few days ago and it's definitely changed my outlook on how to deal with bugreports/contributors to opensource projects:

http://video.google.nl/videoplay?docid=-4216011961522818645

Theliel
4th April 2008, 20:49
My English isn't good enough for explain the gratitude and respect that (i'm sure) the most of us have with Shark and Kurtnoise.

It's true that sometimes all of us can be very... arrogant? or we write incoherent post or... but all your work are unquestionable and very important for all of video coding World, and the same words for others members like our friend Loren and others, that make all of this possible, in all grades

mroz
5th April 2008, 05:50
@Kurtnoise13: Great to know you're still active :)

@Mutant_Fruit: Seriously informative vid from the SVN guys - I've just watched the whole thing, despite meaning only to take a brief look. Most of the projects whose development I track could benefit from applying those ideas.

Sharktooth
5th April 2008, 14:39
Mutant_fruit: that's why we asked to use the megui trackers on SF. so we can have more control and a "centralized view".
ill ask the mods to close all the topics regarding megui except this one.

~bT~
5th April 2008, 14:58
^ closing all topics wouldnt be right. there will be 20 new threads created each day for minor megui issues..

Kurtnoise
5th April 2008, 16:59
beta testers needed to test the new AQ part (http://www.mediafire.com/?1xd3mh6rxen)...Zones has been reintroduced but doesn't work yet.

@devs: I switched the B-Frames part to the Main tab to introduce AQ in the Advanced one. Is it ok ? what do you think about that ?

bob0r
5th April 2008, 17:24
Where would you like reports of cosmetical fixes and stuff like --filter = --deblock and --analyse = --paritions in the future?

Cosmetical fixes like:

x264 config > RC and ME > Quant options:
Mixed Reference frames
Mixed Reference Frames
f > F

x264 config > RC and ME > Misc:
Encoder interlaced
Encoder Interlaced
i > I

.... and many more small none consistency examples in the Advanced tab :)

Want me to name them all? :)

so all the less important stuff....

Kurtnoise
5th April 2008, 18:36
Where would you like reports of cosmetical fixes and stuff like --filter = --deblock and --analyse = --paritions in the future?

Cosmetical fixes like:

x264 config > RC and ME > Quant options:
Mixed Reference frames
Mixed Reference Frames
f > F

x264 config > RC and ME > Misc:
Encoder interlaced
Encoder Interlaced
i > I

.... and many more small none consistency examples in the Advanced tab :)

Want me to name them all? :)

so all the less important stuff....
sure...http://sourceforge.net/tracker/?group_id=156112&atid=798476

tebasuna51
6th April 2008, 04:11
@dev's

I suggest replace the NicAudio.dll by NicAudio.dll v2.0 (http://www.codeplex.com/NicAudio).

The NicAc3Source function is improved to solve some bugs detected:
- changes in 'dsurmod' (http://forum.doom9.org/showthread.php?p=1071652#post1071652)by mroz
- problems with some 'acmod' values (http://forum.doom9.org/showthread.php?p=976506#post976506) by Raven2x using MeGui.
- and mroz Dual mono MeGui bug (http://sourceforge.net/tracker/index.php?func=detail&aid=1865246&group_id=156112&atid=798476)

Some changes in AviSynthAudioEncoder.cs are needed:
case ".mpa":
case ".mpg":
case ".mp2":
// script.AppendFormat("NicMPASource(\"{0}\"){1}", audioJob.Input, Environment.NewLine);
// break;
case ".mp3":
script.AppendFormat("NicMPG123Source(\"{0}\"){1}", audioJob.Input, Environment.NewLine);
break;
The NicMPASource function don't exist in v2.0 because is replaced with NicMPG123Source with support for VBR (also for mp2).
NicMPG123Source updated to new version (http://forum.doom9.org/showthread.php?p=1102957#post1102957) (mpg123-lib of the LAME project)

And I suggest use also RaWavSource (included in NicAudio v2.0) for wav (WAVE_FORMAT_EXTENSIBLE header supported) and also other uncompressed formats always supporting files > 4GB.
See the Kurtnoise MeGui Feature request (http://sourceforge.net/tracker/index.php?func=detail&aid=1830524&group_id=156112&atid=798479):
case ".wav":
case ".w64":
case ".aif":
case ".au":
case ".caf":
case ".bwf":
script.AppendFormat("RaWavSource(\"{0}\", 2){1}", audioJob.Input, Environment.NewLine);
break;

Finally the Bass libraries can avoid the problem of use DirectShow filters to decode some common formats like aac, ogg, flac, wma, ...
Most users have DirectShow configured to stereo output (and other settings for the audio equipment attached to the PC), not aproppriate for transcoding tasks.
The new version 2.4 and some changes in BassAudio.dll (AviSynth interface) seems guarantee correct decoding for:
case ".ogg": // (1) = BassAudio.dll 2.4, Bass.dll 2.4 required
case ".mp1": // (1)
case ".aac": // (1) + bass_aac.dll 2.4
case ".m4a": // (1) + bass_aac.dll 2.4
case ".mp4": // (1) + bass_aac.dll 2.4
case ".wma": // (1) + bass_wma.dll 2.4
case ".flac": // (1) + bass_flac.dll 2.4
// case ".alac": // (1) + bass_alac.dll 2.4
// case ".wv": // (1) + bass_wv.dll 2.4
// case ".ofr": // (1) + bass_ofr.dll 2.4 + OptimFROG.dll
// case ".ape": // (1) + bass_ape.dll 2.4
// case ".tta": // (1) + bass_tta.dll 2.4
// case ".cda": // (1) + bass_cda.dll 2.4
// case ".mpc": // (1) + bass_mpc.dll 2.4
// case ".spx": // (1) + bass_spx.dll 2.4
script.AppendFormat("BassAudioSource(\"{0}\"){1}", audioJob.Input, Environment.NewLine);
break;
The commented lines are options untested and, maybe, unnecesaries to MeGui.
BassAudio.dll 2.4 can be obtained from this post (http://forum.doom9.org/showthread.php?p=1112359#post1112359) and can be distributted with MeGui (Author Dimzon, modified by me), Bass.dll and the others can be free downloaded, for non-commercial use, from http://www.un4seen.com/bass.html

Kurtnoise
6th April 2008, 08:38
@dev's

I suggest replace the NicAudio.dll by NicAudio.dll v2.0 (http://www.codeplex.com/NicAudio).
you read in my mind...;) it's my plan for today.


Finally the Bass libraries can avoid the problem of use DirectShow filters to decode some common formats like aac, ogg, flac, wma, ...
Most users have DirectShow configured to stereo output (and other settings for the audio equipment attached to the PC), not aproppriate for transcoding tasks.
maybe...but personally, I'm more interested by the FFmpegSource filter. :)

tebasuna51
6th April 2008, 11:22
maybe...but personally, I'm more interested by the FFmpegSource filter. :)

Of course, many people are interested in ffmpeg project, but is usable actually for audio decode?

From ffmpegsource help:
"Note that the audio cache will always be created when opening files with audio and that it will be huge since it stores all audio as raw signed 16/24/32 bit pcm, unsigned 8 bit pcm or as float, using flac to compress it is also possible to reduce the size by half."

If we need a 3.67 MB FFmpegSource.dll to decode an aac to a huge uncompressed wav maybe is better use faad before. Work with files > 4GB?

BassAudio, Bass, Bass_aac, Bass_flac, Bass_wma dll's are 0.34 MB and don't need write huge files in disk.

Maybe in the future we can use ffmpeg to decode/encode everything (also EAC3, MLP, TrueHD, ...) but now I recommend use BassAudio for BeHappy. :rolleyes:

Kurtnoise
6th April 2008, 11:30
Agreed...just hoping that this part will be improved in the future.

coz some new stuff from FFmpeg (aac decoder, dts encoder, eac3 decoder, etc...) is going to be introduced...

Atak_Snajpera
6th April 2008, 23:30
I suggest replace the NicAudio.dll by NicAudio.dll v2.0.

Do not use it (2.0) for MP3 and MP2 decoding. I had corrupted sound after conversion. BassAudio works very well :)

tebasuna51
7th April 2008, 01:46
Do not use it (2.0) for MP3 and MP2 decoding. I had corrupted sound after conversion. BassAudio works very well :)

Please use this thread (http://forum.doom9.org/showthread.php?t=135876) or http://www.codeplex.com/NicAudio to report NicAudio 2.0 bugs.

Maybe you can upload some samples with the problem. I can't see differences with my samples.

check
7th April 2008, 15:20
Gosh, look what you miss when you're gone for a few weeks :)

Anway, I thought I'd give an update here on how popular the MeGUI autoupdate cache is. If you want these quarterly updates out of the dev thread let me know.
General Summary

This report contains overall statistics.

Figures in parentheses refer to the 7-day period ending 07-Apr-2008 18:00.

Successful requests: 1,445,741 (115,081)
Average successful requests per day: 14,591 (16,440)
Successful requests for pages: 380,049 (30,967)
Average successful requests for pages per day: 3,835 (4,423)
Failed requests: 10,124 (2,872)
Redirected requests: 193 (4)
Distinct files requested: 380,136 (31,060)
Distinct hosts served: 106,080 (11,591)
Corrupt logfile lines: 42
Unwanted logfile entries: 1,709,881
Data transferred: 533.99 gigabytes (42.49 gigabytes)
Average data transferred per day: 5.39 gigabytes (6.07 gigabytes)

tebasuna51
9th April 2008, 04:33
Do not use it (2.0) for MP3 and MP2 decoding. I had corrupted sound after conversion. BassAudio works very well :)

The bug in the new version of mpg123-lib don't affect to Megui/BeHappy but yes to Bepipe.

The new MPASource.dll from WarpEnterprises (http://forum.doom9.org/showthread.php?p=1123600#post1123600) is also affected.

A bugfix release of NicAudio.dll (v2.0.1) are available.

Sharktooth
9th April 2008, 13:53
beta testers needed to test the new AQ part (http://www.mediafire.com/?1xd3mh6rxen)...Zones has been reintroduced but doesn't work yet.

@devs: I switched the B-Frames part to the Main tab to introduce AQ in the Advanced one. Is it ok ? what do you think about that ?
i thought a different design:
http://www.webalice.it/f.corriga/x264/x264config.png
AQ options can be placed in the down-left corner in the empty space.
That will also avoid to rewrite the b-frames controls code... ;)
Oh, btw, in the picture above it should be "Quantizers ratio" (not quantization ratio) :(

Kurtnoise
9th April 2008, 21:14
well...it's ok for me but (yeah, there is a but ;))


Honestly, it depends on what we want to do : just an update to have AQ or improve this part completely...I think that the UI for video encoders, at least, must be completely redesigned. If you don't mind I'll put something online this weekend about that but the discussion is open of course. :)

Sharktooth
9th April 2008, 22:56
i see ppl discussing about the profiles and much less about the settings.
fact is ppl dont like to mess with settings since most of them dont know what those mean, plus the golden programmer rule: if it aint broke, dont fix it
however if you feel to make changes, there's no problem on my side but if you do it, ensure it works properly before committing any changes or ppl (as you saw) will moan like bitches.
a new 0.3.x build is needed too coz a shitload of stuff was added/fixed/changed but never tested, so i will wait your changes before making a new one.

Kurtnoise
10th April 2008, 17:59
all new stuff that I added in the dev branch has been tested properly and it works fine...;)


About the changes in the UI : i'll post some builds online (or patches...as you want) before to commit something. don't worry.

bob0r
10th April 2008, 23:54
Hmm it seems i forgot to press Submit after Preview, so here goes again:

@Sharktooth

Can you please update new x264 816 modified:
http://forum.doom9.org/showthread.php?p=1124122#post1124122

--threads auto now auto-enables --thread-input, so especially usefull for windows (avs) megui users....

(75 to 95fps SD video)
(9 fps to 15fps HD video)

Sharktooth
11th April 2008, 04:42
megui already does that when threads = auto or threads > 1
however i'll update it as soon as i find a minute :)

Kurtnoise
11th April 2008, 14:02
--threads auto now auto-enables --thread-input, so especially usefull for windows (avs) megui users....
what does it mean ? we need to change the command line ?

Sharktooth
11th April 2008, 14:50
no. it's not necessary.

bob0r
12th April 2008, 13:07
@Sharktooth

x264.818.modified.exe
http://forum.doom9.org/showthread.php?p=1124804#post1124804

r817: r810 borked hpel_filter_sse2 on unaligned buffers

Please update megui to r818 as soon as possible.

I update the modified builds when i see its needed or wanted, but i will report here when i see its really necessary to update megui, to prevent many broken encodes, or speed/quality misses :)

Sharktooth
12th April 2008, 16:01
thanx. already done :)

hollywood10s
15th April 2008, 07:12
When using Megui's auto update is this the version that is being installed (x264.modified) when x264 gets updated or are they two different versions? Thanks for the help.

Sharktooth
15th April 2008, 14:14
it's this.

bob0r
15th April 2008, 17:26
@Sharktooth

x264 819 modified, same as 818, only extra fixes for AMD users.
Please update asap :)

http://forum.doom9.org/showthread.php?p=1125930#post1125930

bob0r
22nd April 2008, 13:40
@Sharktooth:

x264 826 modified:
http://forum.doom9.org/showthread.php?p=1127870#post1127870

Quality and Speed updates.
- Fixed AQ with flat blocks.

Kurtnoise
22nd April 2008, 17:40
bob0r, could you stop to flood this thread with each x264 updates...it's boring.

bob0r
23rd April 2008, 00:07
bob0r, could you stop to flood this thread with each x264 updates...it's boring.

Ok, tho they are for MEGUI....

Uhm.... sharktooth no irc.... no doom9 messages....

Sharktooth: Can you provide me some email i can send you updates for then?

OOOOOOOOOOOOOOOOR Kurtnoise13 can you make a doom9 thread where people can report software updates for megui to update? :D

buzzqw
23rd April 2008, 10:25
feel free to post your update to AutoMKV thread!

very appreciated!

BHH

Kurtnoise
23rd April 2008, 11:25
Ok, tho they are for MEGUI....
well...I'm quite sure Sharktooth read all x264 threads related to the updates. So, no need to have them there. Plus, I don't think that you can perceive some real differences between the current build and the previous one.

OOOOOOOOOOOOOOOOR Kurtnoise13 can you make a doom9 thread where people can report software updates for megui to update? :D
I've a better idea. Grab the upgrade.xml file from here (http://megui.org/auto/), edit it to have only the x264 package, put it on your site and you can supply an alternative server to the MeGUI users to have the lastest x264 update more quickly. What do you think about that ?

Sharktooth
23rd April 2008, 14:57
well...I'm quite sure Sharktooth read all x264 threads related to the updates. So, no need to have them there. Plus, I don't think that you can perceive some real differences between the current build and the previous one.


I've a better idea. Grab the upgrade.xml file from here (http://megui.org/auto/), edit it to have only the x264 package, put it on your site and you can supply an alternative server to the MeGUI users to have the lastest x264 update more quickly. What do you think about that ?
yes, i usually read all the x264 related threads. however ill be away for a while. ill try to check everything, but the alternate x264 only server idea could be good.

Pyth0n
4th May 2008, 22:14
I'm using Windows Vista x64, megui, avisynth and x264 to convert a 1280x544 video to 1280x720 by adding borders.

The problema is that the first pass is not running right according to Dark Shikari, a x264 developer.
I'm running megui as administrator but still not getting any different results. One curious thing is that sometimes I get the video correctly after a lot of tries on a sample the first pass happens.

Can anybody help me with that?

Going to try and run x264 directly without using megui. But I ned the batch queue from megui to do that with other videos.

http://forum.doom9.org/showthread.php?p=1133990

Kurtnoise
4th May 2008, 22:46
nothing to do with megui development. Plus, I'm not sure that your problem is caused by megui itself. So...

Kurtnoise
4th May 2008, 22:50
About the changes in the UI : i'll post some builds online (or patches...as you want) before to commit something.
sorry for the delay...I'm quite busy in my real life but I'll try to post something during this week.

Sharktooth
9th May 2008, 15:16
critical things left to do before releasing the first candidate of version 0.3.x (in order of importance):
1 - Add the missing options in x264 config (AQ, custom CLI, etc - zones are not crucial though)
2 - Support for newer DGIndex
3 - Fix the adaptive muxer (#1945737 (http://sourceforge.net/tracker/index.php?func=detail&aid=1945737&group_id=156112&atid=798476))

After those steps are completed we can release a new binary for testing and bugfixing may return the priority until the final release.
Future plans:
- "hire" some new devs to help the project go on.
- organize the developement assigning tasks to devs.
- defining the next versions goals.
- keep compatibility with mono for a future multiplatform release.
- setup a paypal account for donations/fundraiser. funds will be divided 50/50 between doom9.org AND the devs (meritocracy rules... the more you do, the more you get).

Kurtnoise
10th May 2008, 16:30
#1 has just been committed...

Romario
10th May 2008, 17:01
Kurtnoise, I can't find link for newest MeGUI beta unstable build, can you, please, provide me a link?

Thanks.

Kurtnoise
10th May 2008, 18:14
http://www.mediafire.com/?zwxwdzni1ll

Kurtnoise
12th May 2008, 20:56
critical things left to do before releasing the first candidate of version 0.3.x (in order of importance):
1 - Add the missing options in x264 config (AQ, custom CLI, etc - zones are not crucial though)
2 - Support for newer DGIndex
3 - Fix the adaptive muxer (#1945737 (http://sourceforge.net/tracker/index.php?func=detail&aid=1945737&group_id=156112&atid=798476))


I think the #3 must be fixed before the #2...I'm looking into it.

bob0r
12th May 2008, 22:09
Ah a new candidate coming, tomorrow or the day after ill submit my report of all graphical bugs with spelling and x264 settings naming..... That is if the sun doesn't keep me AFK :D

Octo-puss
23rd May 2008, 13:53
Out of curiosity: when can we expect new version? Please don't reply with "when it's done" :D

Kurtnoise
23rd May 2008, 15:29
depends on what you want to have in the incoming release...;)

~bT~
23rd May 2008, 15:42
^ hmmm.. are u really taking requests :D

i want to be able to lock settings in bitrate calc. things like container, codec, filesize depending on the profile selected.

incorporate DGAVCIndex?

Octo-puss
23rd May 2008, 20:38
depends on what you want to have in the incoming release...;)

I have less than zero idea, honestly. I am just an average dumb user who managed to get to understand MeGUI enough to encode a movie :)

JarrettH
25th May 2008, 22:59
Humm I had a good idea a while ago:helpful:

If you could automate the mux process a bit? Because you need to point the muxxer to the audio and video files both need to be existing. I'd like to point it to a directory where the video file will appear or some dummy file so I can have the process happen right after the video is created.
Though it could be trivial since it only takes a matter of minutes to join the files.:confused:

Adub
26th May 2008, 03:34
This is a feature request, please post all feature requests on the sourceforge page. And have you tried the automated encoding mode? It pretty much does exactly what you want.

Sharktooth
15th June 2008, 16:52
0.2.6.1047
- (kurtnoise) updated MediaInfo library and his wrapper to the latest release (0.7.7.2).
- (kurtnoise) [AudioEncodingTab] added a try/catch statement for better error handling for end-users concerning delays values too high/low detected in filenames (#1965905).
- (kurtnoise) [x264Encoder] fixed a comma use associated with Const. Quantizer (#1975472).
- (kurtnoise) [AvisynthAudioEncoder] fixed an error in the upmix function.
- (kurtnoise) [VideoPlayer] video preview always on top from now...
- (kurtnoise) added an icon for the ToolTip.
- (kurtnoise) [AudioEncoder] added support for NicAudio v2 (needed to fix some bugs) >> http://www.codeplex.com/NicAudio
- (kurtnoise) added several languages in the nsis script.

0.3.0.1005 (includes the fixes and additions up to ver. 0.2.6.1047)
- (kurtnoise) updated MediaInfo library and his wrapper to the latest release (0.7.7.2).
- (kurtnoise) several x264 options weren't updated.
- (kurtnoise) added support for OpenDMLSource(..) for AVI files >= 2GB and forced "audio=false" for the avs script creation within AVISource(.)
- (kurtnoise) [ProgressWindow] allowed resize form (#1968515).
- (kurtnoise) [JobWorkerWindow] help button was biased.
- (kurtnoise) added EVO files support for the Main and Avisynth Forms.
- (kurtnoise) [UpdateWindows] help button was biased.
- (kurtnoise) allowed minimize/maximize the video preview form.
- (kurtnoise) removed TooltipIcon and TooltipTitle.
- (kurtnoise) [MainForm] changed the back color (transparent to control).
- (kurtnoise) [VideoConfigurationPanel] added a title for the tooltip.
- (Kurtnoise) updated several tooltips for the x264 compressor.
- (kurtnoise) added ProfileConfigurationWindow.resx
- (kurtnoise) [ProfileConfigurationWindow] use Presets now instead of Profiles to avoid confusions.
- (kurtnoise) CheckOnClick = True for the ProfileExporter, ProfileImporter and ProfilePorter ListBoxes.
- (kurtnoise) [VobSubber] CheckOnClick = True for the Subtitles ListBox.
- (kurtnoise) [x264ConfigurationPanel] updated some missing tooltips.
- (kurtnoise) added a x264 picture in the main tab.
- (kurtnoise) updated the x264 Settings (AQ, Custom commandline) with several changes.
- (kurtnoise) [DGIndexer] using hide state instead of minimize.
- (kurtnoise) [ProfileImporter] added an option to check all/none items from the list (available via a right click).
- (sharktooth) Updated VS 2008 project files to include the new InputBox replacement files
- (kurtnoise) fixed .NET bootstrapping for MSVC2005 project file. Patch by Sean McGovern.
- (Mutant Fruit) Fix for mono compatibility to avoid a bug in ApplicationSettingsBase constructor
- (Mutant Fruit) Put try/catches around registry access to avoid issues on non-windows systems
- (Mutant Fruit) Two fixes for the new InputBox
- (Mutant Fruit) Created a replacement for the VisualBasic InputBox class and removed references to the VisualBasic dll
- (Mutant Fruit) Applied patch for #1887531
- (Mutant Fruit) Committed patch for #1886000
- (sharktooth) [d2vcreator] Default to "Demux All Audio Tracks"
- (kurtnoise) Transformed OSInfo & Shutdown classes cross-platform. Patch by mutant_fruit.
- (kurtnoise) fixed hardcoded windows style paths. Patch by mutant_fruit.
- (kurtnoise) [D2VCreator] remove Windows API for better X-platform using.
- (kurtnoise) Fixed bug in GenericSettings implementation & implemented GetHashCode correctly. patches by Mutant_Fruit (#1887494 + #1887508)
- (kurtnoise) [AVSCutter] altered the behaviour of the Clear, Update and Remove buttons. Patch by darkklor (#1858629)
- (kurtnoise) [mediaInfoWrapper] fixed some tabs.
- (kurtnoise) [JobQueue] re-enabled Key Down event.
- (berrinam) Profile refactor. Excerpts:
- All video settings must now be contained within a profile.
- There is a default profile called *scratchpad* for every type of setting.
- Zones have been removed from video profiles, soon to be added back to the main window.
- Removed code for reading very old profiles (from 0.2.4.1004 and below)
- (berrinam) (internal) Added Tuple.Create to allow implicit Generics instantiation.
before any bug report is made, 0.3.0.1005 is UNSTABLE. x264 config throws an exception. i noticed it just after i published the files, so , yes, we're aware of it and yes, we'll fix it in the next version.

Romario
15th June 2008, 21:21
again without download link for Megui 0.3.0 ?

Sharktooth
16th June 2008, 03:18
yep, coz it's UNSTABLE.

Kurtnoise
16th June 2008, 07:54
@Sharktooth: which compiler did you use to build 0.3.0.1005 release ? Could you try this one (http://kurtnoise.free.fr/index.php?dir=MeGUI/&file=MeGUI-0.3.0.1005%2B.zip) ?

I think that Visual Studio 2008 (Express or Entreprise Edition) should be used to compile this version now (to include Vista stuff, etc...)

Sharktooth
16th June 2008, 13:58
i used csc. i can build it with VS too but using the compile.bat allows me to automate some things.
however, ill be back to you in a minute.

EDIT: your binaries work. i updated the core package with the vs compiled binary.

Knuffi
16th June 2008, 14:08
I updated MeGUI 3.0 and am now in an endless loop: Seems that the new version on the servers calls itself 3.0.1004 instead of 3.0.1005 as it should ... can you fix that please?

Sharktooth
16th June 2008, 14:14
try the reinstall option in the update window. i just updated the core package

Knuffi
16th June 2008, 14:23
Force reinstall on which components? Core is ALWAYS available to update.

Sharktooth
16th June 2008, 14:35
close megui, clear the update_cache folder located in the megui folder. then restart megui and let it update.
if it's still version 1004, try rebooting. something wrong is going on. the update worked flawlessly here.
if you dont find a way to update it, there should be permission problems. however HERE (http://megui.org/auto/core_0_3_0_1005a.zip) you can download the new core package and manually extract it over your local megui folder.

Sharktooth
16th June 2008, 14:53
@kurtnoise: AQ settings are not working. if you want i have some free time and i can give a look at it later. however, without looking at the code, i think it's missing the required stuff in the commandline generator.

stax76
16th June 2008, 15:05
Don't you use MSBuild?

"C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" "D:\Projekte\StaxRip\StaxRip.vbproj" /t:Rebuild /p:Configuration=Release"

Sharktooth
16th June 2008, 15:14
does it support building .net 2.0 bins ?

tre31
16th June 2008, 15:33
The preview video window is set too "Always on top" as its window property making it pretty much useless as you have too move it out of the screen too see the script creator behind it. Tiny error (obviously you forgot too set the window properties) but it does affect usability.

Sharktooth
16th June 2008, 15:55
fixed AQ in r524

The preview video window is set too "Always on top" as its window property making it pretty much useless as you have too move it out of the screen too see the script creator behind it. Tiny error (obviously you forgot too set the window properties) but it does affect usability.
not a bug. it's in the changelog.

stax76
16th June 2008, 15:56
VS is uses MS build so I guess so.

Sharktooth
16th June 2008, 15:59
ill change the compile script replacing csc with msbuild.
thanks :)

edit: done in r525

tre31
16th June 2008, 16:32
not a bug. it's in the changelog.

Well, seems like a strange change too implement, try opening HD video with it, hell even SD video, you have too move the preview window out of the way too even have access too any functionality at all, and that includes the main window, sorry but I fail too see how this 'is a feature not a bug'.

What I'm basically saying is - from a end-user (yes that's me) perspective, its no good - sorry.

Sharktooth
16th June 2008, 16:40
0.3.0.1006
- (sharktooth) Fixed x264 AQ settings
Test build: http://www.webalice.it/f.corriga/megui/megui-0_3_0_1006.exe
Consider it as a pre-RC. it should be sufficiently stable though.

to-do:
- dgindex 1.5+ support
- fix adaptive muxer
- zones options in x264config

Sharktooth
16th June 2008, 16:41
Well, seems like a strange change too implement, try opening HD video with it, hell even SD video, you have too move the preview window out of the way too even have access too any functionality at all, and that includes the main window, sorry but I fail too see how this 'is a feature not a bug'.

What I'm basically saying is - from a end-user (yes that's me) perspective, its no good - sorry.
what about a minimize button on the preview?

Underground78
16th June 2008, 20:42
I think there is a problem with "M.E Algorithm" and "Subpixel Refinement" : the command line is not updated ... I'm a beginner but I have a look the code to try to fix this, I've added this two lines inspired by the others options and it seems to work ... Maybe it's not the good solution but don't be too hard with me ... :o

Index: x264ConfigurationPanel.Designer.cs
===================================================================
--- x264ConfigurationPanel.Designer.cs (revision 526)
+++ x264ConfigurationPanel.Designer.cs (working copy)
@@ -639,6 +639,7 @@
this.x264SubpelRefinement.Name = "x264SubpelRefinement";
this.x264SubpelRefinement.Size = new System.Drawing.Size(154, 21);
this.x264SubpelRefinement.TabIndex = 8;
+ this.x264SubpelRefinement.SelectedIndexChanged += new System.EventHandler(this.updateEvent);
//
// x264SubpelRefinementLabel
//
@@ -701,6 +702,7 @@
this.x264METype.Name = "x264METype";
this.x264METype.Size = new System.Drawing.Size(109, 21);
this.x264METype.TabIndex = 6;
+ this.x264METype.SelectedIndexChanged += new System.EventHandler(this.updateEvent);
//
// x264MERange
//

Kurtnoise
16th June 2008, 20:42
@Sharktooth: thanks for the fix...I hadn't tested extensively the AQ part I'm honest.

0.3.0.1006
- (sharktooth) Fixed x264 AQ settings
Test build: http://www.webalice.it/f.corriga/megui/megui-0_3_0_1006.exe
Consider it as a pre-RC. it should be sufficiently stable though.
About NSIS installer : may I suggest to add this (http://nsis.sourceforge.net/UAC_plug-in) ? :p


to-do:
- dgindex 1.5+ support
- fix adaptive muxer
- zones options in x264config
I started to implement something for DGindex stuff...It's included in my build but I'm not happy with it. The 2 comboboxes need to be selected and all audio track IDs are grabbed from the DVDDecrypter file info not from the DGindex logfile for the moment. I hope at the end of the week to have something more interesting and bug free. :)

About adaptive muxer : frankly, I've no idea why we have this...:-/

About zones: well...lazyness.

Kurtnoise
16th June 2008, 20:52
Maybe it's not the good solution but don't be too hard with me ...
it's correct. I'll add this.

stax76
16th June 2008, 21:08
I wonder if it makes much sense to rely on the DVD Decrypter info file as it's only created in IFO mode and that is not possible with many copy protections, if I'm not mistaken. :)