Hi. I want to try speeding things up by using MeGUI 'workers' but can't get my head around it and nor can I find a good tutorial.
My first question is: how many scripts do I need? Say I have a movie that I'm going to edit into 3 scenes, I'd have a script like this which I'd run 3 times (changing the hashes):
LoadPlugin("E:\MeGUI\tools\lsmash\LSMASHSource.dll ")
a=LSMASHVideoSource("F:\....mp4")
b=LSMASHAudioSource("F:\....mp4")
audiodub(a,b)
trim(240,5600)
#trim(6000,16000)
#trim(18000,25487)
With workers, could I just remove the hashes? Or would I make 2 extra copies of the script, give them new names and include just one 'trim' in each?
Now the main question, how to get a second worker going. Do you begin one job as normal and then add the other – if so, how exactly? Or is there another method?
Any assistance GREATLY appreciated.
+ Reply to Thread
Results 1 to 11 of 11
-
-
MeGUI doesn't have any features to help with such splicing. So you need three separate scripts. I'd do a (in this case) fourth one just for the audio. Add all jobs to the queue, create 3 workers and then start. When they are finished do the muxing/appending manually using e.g. mkvtoolnix. (P.S.: if you are using x264 add --stitchable parameter)
Note: this only makes sense if CPU utilization is low when doing a single encode. -
Thanks, sneaker. Not sure about how to put the audio for 3 clips into a single script so skipped that. I just want to do 2 at a time, anyway. Also struggled with 'create workers' but discovered a simple step - once both scripts are in the queue, there's a context menu called 'send to worker..'
I've just done my first dual encode - thanks again. -
You don't need to use the "send to worker" option. You can of course, but if you create a second worker from the Worker menu (without sending jobs to workers) when you click start they'll run in the order they appear in the main job queue as the normally would, only two at a time instead of one at a time. If you create a third worker, it'll be three at a time etc.
I'm pretty sure there's at least one exception, and only a single audio encoding job will run at a time (something to do with it causing audible glitches at some stage) but if there's multiple audio jobs in the main queue and one is running the second worker will just skip to the next video encoding job.... that sort of thing. I think the worker configuration is being revamped for a future version so eventually you'll be able to control other types of jobs such as indexing, which generally you wouldn't want to run simultaneously either.
Also..... if you highlight several jobs in the queue and right click and select "run in temporary worker", they'll run one at a time in the temporary worker while the main worker (ie Worker 1) runs the rest as it normally would. You can run jobs in more than one temporary worker too, and they run their jobs and nothing else, whereas if you create a second worker, every time you click start in the main job queue two jobs will run simultaneously until you delete the second worker (assuming neither are already running jobs). There's a few different ways to go about it.
As sneaker said, assuming you want to append the encodes later, definitely check "stitchable" in the x264 encoder configuration, especially if you have x264 configured to write it's output directly to an MKV, otherwise trying to append the encoded video laters can be a recipe for disappointment, although if you are appending the encodes, you could just append them in the script and run it as a single encode.Last edited by hello_hello; 25th Aug 2017 at 05:43.
-
Hi hello_hello. It all seems to be a tad complex so hopefully a future revamp will simplify this process. I've got a new media player coming my way soon so I'm now using H265 in readiness for it. My 'send to worker..' system appears to suit me fine - the audio gets done first and then 2 'status' screens appear for the video encoding. Enjoy your day.
-
-
It's not too complicated.
"Send to temporary worker" works in much the same way as "send to worker", only temporary workers are created automatically and commit suicide when they're done.
"Send to worker" is for the "standard" workers. They're created and deleted manually. If you're running two encodes simultaneously in standard workers you must've created a second worker yourself at some stage, and the right click "send to worker" menu will list more than one (probably as Worker 1 and Worker 2 etc).
"Standard workers" hang around until you delete them, and they all run the jobs in the main Queue. If you have two standard workers and they're both idle, when you click the start button at the bottom of the Queue tab, two jobs should start (if there's two in the queue). If you delete the second worker, clicking start will run one single job at a time.Last edited by hello_hello; 25th Aug 2017 at 17:32.
-
If I created a second worker myself, it was unwittingly! Here's what I do for 2 simultaneous encodes:
create 2 scripts, A & B
launch MeGUI, open script A, hit AutoEncode, choose destination & filename, send to queue
open script B (in same 'copy' of MeGUI - I'm guessing that's where 2nd worker is being created)
hit Autocode etc etc
go to queue where 6 jobs wait (in 2 groups of 3 when you click on job 1 and 4)
right-click gives me the option of sending to worker 1 or worker 2. I send a job to each.
It all works fine as far as I can tell. Are there benefits to be had in doing it some other way?
If there's a revamp being done, perhaps the solution is simply to allow more than one instance of MeGUI to run (as you can do with avidemux). -
If you didn't right click and "send to worker" but simply clicked the start button at the bottom of the queue window, for the example you just gave the result would be the same (I'm pretty sure).
If you already have two active workers, two jobs will automatically run simultaneously when you click start, and I think if they're in groups as you've described (I rarely use auto-encode), one group would run in one worker and the second group in the other.
The main difference would be if you had many jobs in the queue of different lengths. Lets assume half are video encoding jobs and the other half audio encoding jobs (all individual jobs for this example). You right click and send all the video jobs to worker one and the audio jobs to worker two. The second worker will finish encoding all the audio jobs fairly quickly and the first worker will keep running through it's video encoding jobs, but only one at a time.
On the other hand, if you just clicked "start" the jobs in the main queue would run two at a time until they're done. You wouldn't need to ensure (in respect to encoding time) you evenly distributed the jobs between workers when using "send to". Just clicking "start" effectively does that.
Nothing wrong with doing it your way, it's just different ways of going about it.
I briefly had a look at a revamped worker setup a while back (test build). I think the main difference was being able to configure the types of jobs that'll run simultaneously and limit how many can run at once, regardless of the number of workers. As an example, you could prevent multiple indexing jobs from running together because they're disc intensive, whereas currently there's nothing to prevent two workers from running indexing jobs at the same time. That sort of thing. -
Your first sentence is spot on. Thanks, saves me some mousework. I have to assume that having two active workers is a program default as I've never set it up that way...
-
If two workers was the program default, every time you'd clicked start at the bottom of the job queue, you would have run two jobs simultaneously (assuming there were several jobs in the queue). If that wasn't happening, a second worker must have been created, or magic happened.
Looks like the Worker revamp is still on it's way.
https://forum.doom9.org/showthread.php?p=1816508#post1816508
I can't remember exactly how different it is, because it's been a while since I played with the new Worker setup (at the time Zathor had only just started changing things and they've only been applied to his test builds).
Similar Threads
-
I found MEGUI X265 HEVC in MEGUI.ORG !!!!
By Stears555 in forum Video ConversionReplies: 11Last Post: 2nd Apr 2016, 14:00 -
MeGUI under Linux
By leghorn in forum LinuxReplies: 0Last Post: 6th Jan 2014, 15:46 -
De-interlacing and MeGUI
By hello_hello in forum Video ConversionReplies: 27Last Post: 26th Mar 2013, 15:26 -
Megui help with encoding
By Tri P in forum Newbie / General discussionsReplies: 1Last Post: 17th Feb 2013, 13:10 -
Need help to use megui
By Kaavalan in forum DVD RippingReplies: 2Last Post: 2nd Dec 2012, 06:38