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 > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 13th August 2019, 15:00   #1301  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,167
Quote:
Originally Posted by rjansen1 View Post
@Bernardd: tried replacing Gammac with your script and found that it gives good results on some scenes, but then again worse results on others. Also it doesn't seem to work multithreaded. Is that correct?

I guess there's no magic bullit and in the end it's a matter of selecting the method that works good for 80% of the movie and fix the other bits using different methods. From what I read that's what you guys do as well

Cheers,
Remco
1. It definitely works multi-threaded, with VD+.

2. There is no automated solution to either gamma or color correction. I always create two versions of my "restored" footage, one with GamMac (or equivalent tool) and one without, and I then cut between them on my NLE timeline to create the final version.
johnmeyer is offline   Reply With Quote
Old 13th August 2019, 15:41   #1302  |  Link
rjansen1
Remco Jansen
 
Join Date: Aug 2019
Location: Netherlands
Posts: 11
Quote:
Originally Posted by johnmeyer View Post
1. It definitely works multi-threaded, with VD+.
Ok, then I'm doing something wrong. I replaced Gammac with Bernardd's script and found the overall script failing on Prefetch(2).

I'm using Avisynth+ x64, what's VD+?

Cheers,
Remco
rjansen1 is offline   Reply With Quote
Old 13th August 2019, 17:26   #1303  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,167
Quote:
Originally Posted by rjansen1 View Post
Ok, then I'm doing something wrong. I replaced Gammac with Bernardd's script and found the overall script failing on Prefetch(2).

I'm using Avisynth+ x64, what's VD+?

Cheers,
Remco
My bad. I wrote that in a hurry and didn't check. VD would be VirtualDub, but I really meant to say AVISynth+.

I'm using AVISynth+ version 0.1 r2508, 32-bit, running under WinXP Pro 32-bit.
johnmeyer is offline   Reply With Quote
Old 13th August 2019, 21:13   #1304  |  Link
rjansen1
Remco Jansen
 
Join Date: Aug 2019
Location: Netherlands
Posts: 11
No problemo. I'll tinker with it some more over the next couple of days and try to figure it out.

Thanks,
Remco
rjansen1 is offline   Reply With Quote
Old 17th August 2019, 10:25   #1305  |  Link
rjansen1
Remco Jansen
 
Join Date: Aug 2019
Location: Netherlands
Posts: 11
@Bernardd @Johnmeyer

I can't seem to get Bernardd's script to run multithreaded. Did a little testscript:

Code:
AviSource("Testclip.avi")

SetFilterMTMode("DEFAULT_MT_MODE", 2)

Import("C:\VideoTools\AvisynthRepository\AVSPLUS_x64\plugins\RGBAdapt_Awb_Process function.avs")

ConvertToRGB32()
AWB_Func()
converttoYV12()

Prefetch(threads=2)
Without the Prefetch line the script runs fine, with Prefetch it gives me an error on that line saying "I don't know what 'Fmt' means". I'm using Avisynth+ x64.

As far as I can tell 'Fmt' is a variable used somewhere within Bernardd's script. I've tried different ways of importing the script, even importing "RGBAdapt_Awb_Process script call.avs" since it seems to hold a bunch of variables. But so far I haven't been able to figure out how to get it to use MT.

Any tips are welcome therefore

Cheers,
Remco
rjansen1 is offline   Reply With Quote
Old 17th August 2019, 16:24   #1306  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,167
I've not used AVISynth+64. I only use the 32-bit version. Many of the plugins are 32-bit and I simply don't know how they behave in a 64-bit environment.

There is no reason whatsoever to use the 64-bit version. If you want to switch between several versions of AVISynth, this is such a common need that Groucho built a simple utility that lets you select which version you want to use. You just run this when you need the 32-bit version, do your work, and then when you need the 64-bit version, you switch back.
johnmeyer is offline   Reply With Quote
Old 17th August 2019, 17:36   #1307  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 1,235
Quote:
Originally Posted by johnmeyer View Post
I've not used AVISynth+64. I only use the 32-bit version. Many of the plugins are 32-bit and I simply don't know how they behave in a 64-bit environment.

There is no reason whatsoever to use the 64-bit version. If you want to switch between several versions of AVISynth, this is such a common need that Groucho built a simple utility that lets you select which version you want to use. You just run this when you need the 32-bit version, do your work, and then when you need the 64-bit version, you switch back.
you can have both 32 and 64 in the same time, switch between them depends on the program/tool/encoder you use

edit: also you can run both in same time in mpp (mp_pipeline)
__________________
My Avisynth Stuff

Last edited by real.finder; 17th August 2019 at 17:38.
real.finder is offline   Reply With Quote
Old 17th August 2019, 17:47   #1308  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 1,235
Quote:
Originally Posted by rjansen1 View Post
@Bernardd @Johnmeyer

I can't seem to get Bernardd's script to run multithreaded. Did a little testscript:

Code:
AviSource("Testclip.avi")

SetFilterMTMode("DEFAULT_MT_MODE", 2)

Import("C:\VideoTools\AvisynthRepository\AVSPLUS_x64\plugins\RGBAdapt_Awb_Process function.avs")

ConvertToRGB32()
AWB_Func()
converttoYV12()

Prefetch(threads=2)
Without the Prefetch line the script runs fine, with Prefetch it gives me an error on that line saying "I don't know what 'Fmt' means". I'm using Avisynth+ x64.

As far as I can tell 'Fmt' is a variable used somewhere within Bernardd's script. I've tried different ways of importing the script, even importing "RGBAdapt_Awb_Process script call.avs" since it seems to hold a bunch of variables. But so far I haven't been able to figure out how to get it to use MT.

Any tips are welcome therefore

Cheers,
Remco
it's known problem with runtime and mt (Prefetch) that didn't fixed for long time (maybe it will be ever)
__________________
My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 18th August 2019, 11:33   #1309  |  Link
rjansen1
Remco Jansen
 
Join Date: Aug 2019
Location: Netherlands
Posts: 11
Quote:
Originally Posted by johnmeyer View Post
I've not used AVISynth+64. I only use the 32-bit version. Many of the plugins are 32-bit and I simply don't know how they behave in a 64-bit environment.

There is no reason whatsoever to use the 64-bit version. If you want to switch between several versions of AVISynth, this is such a common need that Groucho built a simple utility that lets you select which version you want to use. You just run this when you need the 32-bit version, do your work, and then when you need the 64-bit version, you switch back.
I'm using Groucho's installer already. Have tried running my testscript on 32-bits AVS+ in Vdub2-32 but get the same "don't know what 'Fmt' means" error.

Could (any of) you maybe post a simple example of how you use Bernardd's script in a multithreaded setup? And tbh... if I can't get it to run multithreaded that's no biggy. That one render will just take a little longer.

Cheers,
Remco
rjansen1 is offline   Reply With Quote
Old 18th August 2019, 12:04   #1310  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 6,963
Quote:
Could (any of) you
See Real.Finder last line,
Quote:
it's known problem with runtime and mt (Prefetch) that didn't fixed for long time (maybe it will be ever)
I never use MT, its just not worth the hassle (so it takes a bit longer - who cares - Maybe can do multiple encodes at once instead of MT).
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???
StainlessS is offline   Reply With Quote
Old 18th August 2019, 12:25   #1311  |  Link
rjansen1
Remco Jansen
 
Join Date: Aug 2019
Location: Netherlands
Posts: 11
Quote:
Originally Posted by StainlessS View Post
See Real.Finder last line,
Yeah, I read that. Just seemed to read John saying he had it working multithreaded, so I wondered how.

But you're right; it's not an issue.

Thanks,
Remco
rjansen1 is offline   Reply With Quote
Old 18th August 2019, 14:32   #1312  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 6,963
Quote:
Maybe can do multiple encodes at once instead of MT
MakeMultiPartScripts & FFMS_MakeMultiPartScripts:- http://forum.doom9.org/showthread.ph...ltiPartScripts

Code:
# FFMS_MakeMultiPartScripts.avsi

Function FFMS_MakeMultiPartScript(String FnList,String "OutPath",Int "Parts") {
/*
    FFMS_MakeMultiPartScripts v0.04  :::  Requires RT_Stats, Avs+ OR GScript.

    FFMS_MakeMultiPartScript(String FnList,String "OutPath"="",Int "Parts"=4)
        FnList,   No default. Multi-line string of avs filenames(1 or more).
                  Source scripts to split must use FFMS2 source filter.
                  Source scripts clip length must be at least (20 * Parts) frames else error abort.
                  This function sets a Global FFMS_MakeMultiPartScript_Glb variable, can be detected in source
                    avs scripts so as to determine if called by this function (for whatever reason).
        OutPath,  Default "", Same Directory as source file directory. Path (must exist) where output scripts written.
                  Where OutPath = default "", and multiple input files with different directories given in FnList, OutPath will use input file directory
                  for each input file (even when different directories, will not be different paths where fileSelector client script used).
                  Use "." for current directory.
        Parts,    Default 4. Number of parts that source script is split into.
*/
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 18th August 2019 at 14:34.
StainlessS is offline   Reply With Quote
Old 21st August 2019, 03:03   #1313  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,167
Quote:
Originally Posted by rjansen1 View Post
Yeah, I read that. Just seemed to read John saying he had it working multithreaded, so I wondered how.
I looked into this, and I have a mystery for all the AVISynth developers and gurus.

Here it is:

My film script runs multi-threaded without any problem if I set the "play_speed" to 24 fps. However (and here is where it gets weird) if I set it to 23.976, it won't run multi-threaded and simply hangs on loading.

Well, I thought, it must be an integer/float issue. So, I tried 24.0 fps instead of 24.

Worked fine.

I then tried 24 * 1 / 1

Worked fine.

I then tried 24 * 1.0 / 1.0

Nope, that hung. So did 24.0 * 1 / 1

And, as I stated above, simply entering 23.976 also made the script hang.

The play_speed variable only gets used one time in the script, and that is as the main variable to AssumeFPS. That's it. Somehow that causes MT to fail and AVISynth to hang.

I am using AVISynth+ 0.1 r2508 32-bit under XP 32-bit.

[edit]I decided to simply remove the assumefps() statement since I am already feeding the script 23.976 sound film. Once I removed that, the film speed was now 23.976 and the script ran multi-threaded without a problem.

AVISynth sure is a mystery at times. [end edit]

Last edited by johnmeyer; 21st August 2019 at 04:04. Reason: added last paragraph
johnmeyer is offline   Reply With Quote
Old 21st August 2019, 05:01   #1314  |  Link
Reel.Deel
Registered User
 
Join Date: Mar 2012
Location: Texas
Posts: 1,108
Quote:
Originally Posted by johnmeyer View Post
I am using AVISynth+ 0.1 r2508 32-bit under XP 32-bit.
I am not sure if it will fix the problem, but why not update to the latest AviSynth+ (r2772)? r2508 is over 2 years old and there has been lots of bugfixes since then.
Reel.Deel is offline   Reply With Quote
Reply

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 15:07.


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