Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > MPEG-4 Encoder GUIs

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 15th January 2006, 13:52   #101  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
Quote:
Originally Posted by AgentX
Of course, I wanted to say: "If you already know you have a deinterlaced source, ..."
I think you mean interlaced, not deinterlaced. Deinterlaced = progressive.

Quote:
Hm, this isn't such a bad idea, I think I'll use special profiles.
That's exactly the sort of reason I added AviSynth profiles. It's a pity people need such coaxing to use them.
Quote:
Normally, I use standalone DgIndex to create the .d2v file, so I already know from there if the source is progressive or interlaced.
Yeah, if only it were so simple. Why should I even have implemented source detection? Unfortunately, DGIndex can only report what the MPEG source says, which is not always correct. Especially when dealing with DVB input.
berrinam is offline  
Old 15th January 2006, 14:09   #102  |  Link
PlazzTT
Registered User
 
PlazzTT's Avatar
 
Join Date: Jan 2002
Location: -
Posts: 115
Will Sharktooth's x264 Full package be available soon? With the full version of MeGUI?
PlazzTT is offline  
Old 15th January 2006, 21:08   #103  |  Link
AgentX
Registered User
 
AgentX's Avatar
 
Join Date: Dec 2003
Location: Madrid
Posts: 12
Quote:
Originally Posted by berrinam
I think you mean interlaced, not deinterlaced. Deinterlaced = progressive.
Sip, I shouldn't post here when I'm sleepy. I realized that I wrote nonsense too late, I had already went out.

Quote:
Originally Posted by berrinam
Yeah, if only it were so simple. Why should I even have implemented source detection? Unfortunately, DGIndex can only report what the MPEG source says, which is not always correct. Especially when dealing with DVB input.
Okay, I didn't know that DGIndex uses just the MPEG-2 packet information for detection. I thought it made some more inteligent stuff. Nevertheless, an interlaced source is normally visible. But just in case I will use your source detection then.
AgentX is offline  
Old 16th January 2006, 04:44   #104  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
Before messing with profiles, let me submit my current patch since it's already a big change.

Code:
Feature changes:
- queueContextMenu
  - added Delete button
  - fixed logic so buttons are disabled when no items selected
  - changed order so most common items are toward the top
  - added hotkeys
- audioOutput & videoOutput textboxes are now editable
- drag-n-drop is now disabled unless the Input tab is selected
- error messages related to audio & video job setup are now more helpful/detailed

Refactoring changes:
- new enum CodecType (works just like FileType)
- rewrote verifyVideoSettings & assorted helper methods, called it whenever queueing a video job
- ditto verifyAudioSettings
edit: arg, kills my spacing w/o {code}
Attached Files
File Type: rar output-editable.rar (8.8 KB, 97 views)

Last edited by Richard Berg; 16th January 2006 at 06:20.
Richard Berg is offline  
Old 16th January 2006, 04:57   #105  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
Quote:
Originally Posted by Richard Berg
- drag-n-drop is now disabled unless the Input tab is selected
I don't see why

Quote:
- rewrote verifyVideoSettings & assorted helper methods, made sure it's called whenever queueing a video job
This sounds like it might cause problems with my last change. Could you update it against the newest CVS (0.2.3.2028) when it comes out, to see, please?

EDIT: Changed files are here: http://rapidshare.de/files/11138201/...c.CVS.zip.html

Last edited by berrinam; 16th January 2006 at 05:00.
berrinam is offline  
Old 16th January 2006, 05:04   #106  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
Quote:
I don't see why
Because it's confusing for the user. If you're on the other tabs and you drag a file, nothing appears to happen. The other alternative is to switch to the Input tab (the way I changed Load to do).

Quote:
Could you update it against the newest CVS (0.2.3.2028) when it comes out, to see, please?
I'll try. The anonymous CVS server is down like 80% of the time...I have to get lucky...
Richard Berg is offline  
Old 16th January 2006, 05:11   #107  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
I've attached the changed files in my last post.
berrinam is offline  
Old 16th January 2006, 06:20   #108  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
I've updated the patch.
Richard Berg is offline  
Old 16th January 2006, 08:20   #109  |  Link
Doom9
clueless n00b
 
Join Date: Oct 2001
Location: somewhere over the rainbow
Posts: 10,579
@Richard: no objections to the feature description.. in fact when working on megui yesterday and looking at the context menu I started asking myself why there was no delete.
Quote:
- new enum CodecType (works just like FileType)
Just make sure you propagate this throughout the entire program.
__________________
For the web's most comprehensive collection of DVD backup guides go to www.doom9.org
Doom9 is offline  
Old 16th January 2006, 10:40   #110  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
Quote:
Originally Posted by Richard Berg
The other alternative is to switch to the Input tab (the way I changed Load to do).
I think this approach is better, because otherwise we might get the problem of people saying that drag & drop doesn't work.
berrinam is offline  
Old 16th January 2006, 13:36   #111  |  Link
Doom9
clueless n00b
 
Join Date: Oct 2001
Location: somewhere over the rainbow
Posts: 10,579
Shouldn't the progress window disappear as well when you minimize the app to the tray?
__________________
For the web's most comprehensive collection of DVD backup guides go to www.doom9.org
Doom9 is offline  
Old 16th January 2006, 14:59   #112  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
Quote:
Just make sure you propagate this throughout the entire program.
Already done -- which is why the patch is so big.

Quote:
I think this approach is better, because otherwise we might get the problem of people saying that drag & drop doesn't work.
I don't like this as much...to me when you drag an AVI onto the queue, MeGUI is correct to show the "can't drop here" cursor...but it's very easy to change. Add this.tabControl1.SelectedIndex = 0; to the end of MeGUI_DragDrop and remove && this.tabControl1.SelectedIndex == 0 from MeGUI_DragEnter.

Quote:
Shouldn't the progress window disappear as well when you minimize the app to the tray?
I agree; haven't tested.
Richard Berg is offline  
Old 16th January 2006, 19:50   #113  |  Link
FooFighter007
Registered User
 
Join Date: Aug 2002
Posts: 41
Does a Control of the "Bits/(Pixel*Frame)" like in Gnot make sense with x264?
If so it might help to select the best fitting resolution for the current job.

Regards,

Foo
FooFighter007 is offline  
Old 17th January 2006, 04:22   #114  |  Link
foxyshadis
ангел смерти
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Lost
Posts: 9,558
Since we're in the process of automating multi-pass avisynth scripts now, can I drag up an old request of mine? I don't think modifying avisynth itself would be a good idea anymore, but maybe a plugin?

I don't know enough about the plugin architecture, having mostly coded a few simple ones as a learning experience, but would it be possible to create a plugin (call it pass, or secondpass, or something) that could be signalled by MeGUI that it's doing an encoder or plugin first pass, in which case everything could be kept in one script?

That could get messy with tivtc+dedup+2 avc passes, let alone my pathological 6-pass (mostly render steps), but it would help trying to sync several different scripts or constantly editing one between passes.
foxyshadis is offline  
Old 17th January 2006, 04:47   #115  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
There's no good way to get custom info from Avisynth into MeGUI. We could have MeGUI read the script (as text) directly, perhaps putting directives into comments the way you used to put scripts in HTML comments. Example:
Quote:
Avisource("foo.avi")
Dust() ###MeGUI-swap-1st-pass ###Blur()
Resize(640,480)
Then MeGUI would rewrite the file to swap Blur()<->Dust() during the first pass.

I don't like that method very much. It's ugly, and more important, not very flexible. What if the part you want to change is >1 line? What if you're using clip variables instead of linear processing w/ implicit last?

Better, in my opinion, would be to put the logic into the script.
Quote:
Avisource("foo.avi")
1pass = Call(BlankClip, "detect1pass.cmd", "-2")
1pass == 1 ? Dust() : Blur()
Resize(640,480)
Where 1pass.cmd looks something like
Quote:
if not exist 1pass-semaphore (
echo foo>1pass-semaphore
exit /b 1
) else (
del /f 1pass-semaphore
exit /b 0
)
You could even echo out your own batch file using Call + NicEcho and keep everything in the AVS script. This all looks kinda hackish, granted...if it's too inflexible, I think you could make a legit argument that we should improve the ability to run shell commands in the AVS core.
Richard Berg is offline  
Old 17th January 2006, 06:25   #116  |  Link
foxyshadis
ангел смерти
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Lost
Posts: 9,558
Sprinkling something like 1stpass == true ? ... around the script is what I was trying to get across. I'll try experimenting with the batch file idea, at least for now.
foxyshadis is offline  
Old 17th January 2006, 06:38   #117  |  Link
Richard Berg
developer wannabe
 
Richard Berg's Avatar
 
Join Date: Nov 2001
Location: Brooklyn, NY
Posts: 1,211
Note: I have no idea if Nic's Call() plugin actually returns exit codes to the script environment. (If not, it should, but that's another thread...)
Richard Berg is offline  
Old 17th January 2006, 07:43   #118  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
Quote:
Originally Posted by foxyshadis
Since we're in the process of automating multi-pass avisynth scripts now, can I drag up an old request of mine? I don't think modifying avisynth itself would be a good idea anymore, but maybe a plugin?

I don't know enough about the plugin architecture, having mostly coded a few simple ones as a learning experience, but would it be possible to create a plugin (call it pass, or secondpass, or something) that could be signalled by MeGUI that it's doing an encoder or plugin first pass, in which case everything could be kept in one script?

That could get messy with tivtc+dedup+2 avc passes, let alone my pathological 6-pass (mostly render steps), but it would help trying to sync several different scripts or constantly editing one between passes.
What is the point of all this?

If you are concerned about processing time, then (as someone said on the thread you linked to) the best option is to losslessly encode it first, then use that as a source. MeGUI now even automates this for you. (pre-render script, the option is called).

OTOH, if you want multiple passes like in tivtc or dedup, then you can't synchronise this with the encoder's two passes, because the first pass of tivtc and dedup needs to be done before it is input into the encoder, otherwise there is a framecount discrepancy between the passes. A better option is just to play the file through once, before encoding it. MeGUI also adds support for this in version 0.2.3.2030. This could even be set up for your 6-pass scripts, but it would be a bit cumbersome: select the first pass file, press queue analysis button, select the second pass file, press queue analysis button, etc.

I don't see why it is so important to keep the script in one file. What's wrong with multiple files?
berrinam is offline  
Old 17th January 2006, 09:27   #119  |  Link
Doom9
clueless n00b
 
Join Date: Oct 2001
Location: somewhere over the rainbow
Posts: 10,579
BTW, what's going to happen with the nullable bitrate field in the profiles?
__________________
For the web's most comprehensive collection of DVD backup guides go to www.doom9.org
Doom9 is offline  
Old 17th January 2006, 11:55   #120  |  Link
berrinam
Registered User
 
berrinam's Avatar
 
Join Date: Apr 2005
Posts: 1,740
What about this for AviSynth script creation: rounding up autocropping to the nearest multiple of 16 when the 'retain anamorphic resolution...' checkbox is set, and remove all resizing in this situation. This would fulfill the intent of keeping the original resolution while not sacrificing compressibility.
berrinam is offline  
Closed Thread

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 07:18.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.