Lỗi please make sure its a vavid avisynth

I have been using MeGUI for a few months now. I initially used it with windows vista and recently upgraded to windows 7, 64 bit and am using MeGui 64 bit. Now I seem to encounter a few problems with it. I could perform the following tasks with vista but all these fail to execute well windows 7. Here is a list of what I tried on Vista:

1. Opening an mkv-container with only one vc-1 video stream in it.

2. Tried opening the mkv-file in MPC_x64 and it plays without any issues.

3. Able to create and render a graph GraphEdit.

4. Tried loading the graph in VirtualDub and it renders well.

These steps ensured that the source file itself was not corrupted. Now I tried to accomplish the same on windows 7 and open the mkv file with the AVS Script Creator and get the following error message:

What should be done to fix this problem? Please help. Thanks in advance.

Image:

Lỗi please make sure its a vavid avisynth

Error:

The file DirectShowSource(“E:Demuxed0221.track_4113.mkv”, audio+false,fps=23.976,convertfps=true) cannot be opened.

Please make sure it’s a valid AviSynth Script and AviSynth Installation by opening the file in your favorite media player.

If that works, try opening the video in VirtualDub(Mod) as well. If the former works and the later doesn’t, installYV12 codec. Error message for your reference: An attempt was made to load a program with the incorrect format (exeption from HRESULT : 0x8007000B)

Lỗi please make sure its a vavid avisynth

Lỗi please make sure its a vavid avisynth

If you upgraded your operating system from Microsoft Windows Vista to Microsoft Windows 7 x64, maybe you did not reinstall your application after the upgrade. This is necessary because reinstalling the program is like activating it on the new operating system. The program will not work if you immediately run it after the operating system upgrade because its original installation was meant for the old operating system.

To fix it, uninstall MeGUI then click Start, All Programs, Accessories, System Tools, and select Disk Cleanup. Select drive C and click OK. Check “Temporary files” and click OK. Wait until it is finished and restart your computer. Install MeGUI and try playing the MKV file again. See if it works. MeGUI is available in x86 version but I think it will still run on Windows 7 x64 under 32-bit compatibility mode.

If you are using the old version, download the latest version from MeGUI Download. If you encounter a different error, try running it as administrator. Right-click on the program’s icon or shortcut on your desktop and select Properties. Go to Compatibility tab and check “Run this program as an administrator” under Privilege Level and click OK. Run the program again and see if it works.

So, a while back I used this guide: http://www.spirton.com/convert-videos-to-60fps/ to start using to MeGUI to upscale various content to 60FPS. As someone who's on the go a lot but doesn't have a data plan, having pre-converted 60FPS videos is rather nice.

For a long time, it worked well, and all was good. But recently after installing an SSD(no other changes) and doing a Windows reset, I can't get it to work. So here's my specific problem...

I've never been able to get MeGUI to update as recommended in the guide, and with my recent troubles that's been no different. This problem I always fixed with a certain batch of files(found at https://sourceforge.net/projects/megui/), but this time it hasn't worked. I've looked up a few suggested fixes for the errors I get, but each one just lead to another error.

I can't recall all the errors I've gotten or the changes made to trigger them, so for now I've cleaned out MeGUI and restarted the process down to when the first error occurs. Seems the best point to start at.

I have the script entered into the system, adjusted for my computer(Cores set to 6 and GPU set to True), as it was before, but when I load the file I wish to upscale, and click Save, I get"

"The File D:\Video\Upscales\filename.AVS Cannot be opened. Please make sure that it is a valid Avisynth script and that Avisynth is properly installed Error message for your reference: Can't read the video stream."

This would seem to point to an issue with the codecs installed on my system, but I can find no issue to explain it. If I tell it to try and queue the job anyway, I get another error:

"Your Avisynth clip has the following problem Error in Avisynth script: ScriptError: There is no function named 'SetMTMode.' (D:\Video\Upscales\filename.avs, line 3) Continue anyway?"

Saying yes queues the file, but unsurprisingly it errors out(and does not give a popup for WHAT error) when you try to start it.

So what should I do first?

Thank you in advance for any and all help provided.

  • > Just install the correct version for correct system (32 or 64 bits).
    Look here: http://forum.doom9.org/showthread.php?t=174614

Claudio

Lỗi please make sure its a vavid avisynth

Member


For people who install MeGUI, but no additional system-wide AviSynth version, MeGUI contains a portable fallback version of AviSynth+ (notice the "plus"). This does not use "SetMTMode" like in SEt's AviSynth MT, though.

If you have installed AviSynth, MeGUI should use that version which is installed in your Windows system (except you always prefer its internal copy). If that is not SEt's AviSynth MT either, then "SetMTMode" isn't available either.

In any case, always post a complete log file of an MeGUI session, from a time after you closed MeGUI (so the log is properly closed and complete). So we can check your MeGUI version, the used AviSynth version, the whole AviSynth script, etc.

Being unable to update MeGUI to the most recent development version requires an investigation as well.

Lỗi please make sure its a vavid avisynth

Member

-

Originally Posted by LigH.de

For people who install MeGUI, but no additional system-wide AviSynth version, MeGUI contains a portable fallback version of AviSynth+ (notice the "plus"). This does not use "SetMTMode" like in SEt's AviSynth MT, though.

If you have installed AviSynth, MeGUI should use that version which is installed in your Windows system (except you always prefer its internal copy). If that is not SEt's AviSynth MT either, then "SetMTMode" isn't available either.

In any case, always post a complete log file of an MeGUI session, from a time after you closed MeGUI (so the log is properly closed and complete). So we can check your MeGUI version, the used AviSynth version, the whole AviSynth script, etc.

Being unable to update MeGUI to the most recent development version requires an investigation as well.

I have installed Avisynth separately, as recommended in the process on the page I linked.

I knew there was something I wasn't thinking of when posting this sofar as providing information, though; The log file. That would be kind of important and I feel like an idiot for forgetting. But I've attached one for you to look at now - I just ran through the process that's been stumping me to generate a fresh log to make sure I didn't post the wrong one.

  • Lỗi please make sure its a vavid avisynth

    Member

    - Originally Posted by Cauptain

This thread is one of the ones I stumbled across while trying to research the problem previously. The information contained within did not fix my problem - it merely changed what the error referred to.

Lỗi please make sure its a vavid avisynth

Member


You need a multithreaded build of AviSynth to use SetMtMode(). The regular AviSynth is not multithreaded. I'm not sure if this is the latest build:

http://forum.doom9.org/showthread.php?t=148782

Or you can just remove the SetMtMode() line(s) from your script. It will run slower though.

Lỗi please make sure its a vavid avisynth

Member

-

Originally Posted by jagabo

You need a multithreaded build of AviSynth to use SetMtMode(). The regular AviSynth is not multithreaded. I'm not sure if this is the latest build:

http://forum.doom9.org/showthread.php?t=148782

Or you can just remove the SetMtMode() line(s) from your script. It will run slower though.

Both of those were steps I tried before which failed - the multithread Avisynth gives the same error as before, removing SetMTMode generates a new error;

"Your Avisynth clip has the following problem: Error in Avisynth script: Cannot load a 32-bit DLL in 64-bit Avisynth: 'C:/Program Files (x86)/MeGUI/tools/avisynth_plugin/svpflow1.dll'"

This error is particularly confusing to me as while trying to troubleshoot previously, I've gotten it even if I made sure there was a 2-bit Avisynth isntalled.

Attached the resulting log files from both updating the Avisynth, and removing the SetMTMode lines. (log files are named appropriately)

I also need to point out that while we're focusing on the SetMTMode issue, the FIRST error I've been getting seems to have been completely ignored.

  • Lỗi please make sure its a vavid avisynth

    Member

    - If you get an error about things not working in a 64-bit AviSynth, then the script was called by a 64-bit application.

Code:

-[Warning] AviSynth --[Information] File Version: 2.6.0.5 [Information] Date: 20-02-2015 [Information] Name: Avisynth 2.6 [Warning] Status: Installed AviSynth build cannot be used. Switching to the portable build.

---[Information] AviSynth portable

[Information] File Version: 0.1 [Information] Date: 29-06-2017 [Information] Name: AviSynth+ 0.1 (r2508, MT, x86_64) [Information] Version: AviSynth+ 0.1 (r2508, MT, x86_64) [Information] AviSynth+: true [Information] MT: true [Information] Status: active

MeGUI doesn't want to use the AviSynth version you installed; it prefers its portable AviSynth+ version. And then it prefers its 64-bit version.

You may be able to run your script manually, calling the encoder with e.g. avs4x26x to use a 64-bit encoder via a 32-bit "bridge". But loading it in MeGUI may not work until you find a version of SVPFlow compatible with AviSynth+ 64-bit...

The more custom your scripts are, the less likely they can be supported by converter GUIs which must rely on a specific set of components.

Lỗi please make sure its a vavid avisynth

Member


Unfortunately I know absolutely nothing about running Avisynth scripts manually. This is one area where I'm a complete and utter moron.

The strange thing is that the SVPFlow dlls are supposed to be both 32 and 64 bit compatible from what I understand.

Lỗi please make sure its a vavid avisynth

Member

-

Okay, so, I got it to work. Something must've gone wrong with the SVPFlow installation that caused the DLLs to be recognized incorrectly - I reinstalled SVP and copied the DLLs to the appropriate location, and it worked.

However, I still have to remove the SetMT lines to make it work. From what little I understand of multithreading, this means I'll have slower conversions. So while everything WORKS, it'd be nice if we could figure out how to fix the SetMT problem. There's got to be SOMETHING, it's just a question of whether or not we can find it.

I doubt it will help, but I've attached the log from the attempt with the MT mode lines still in the script just to cover all bases.

  • Lỗi please make sure its a vavid avisynth

    Member

    -

    Whoops, I forgot to actually ADD the log before submitting. My bad. Here you go.

    Lỗi please make sure its a vavid avisynth

    Member


    Lỗi please make sure its a vavid avisynth

    Member

    - Originally Posted by jagabo

Following that information results in the same error as before, just with SetFilterMTMode instead of SetMTMode.

  • Lỗi please make sure its a vavid avisynth

    Member

    - Originally Posted by FormulaFox

Originally Posted by jagabo

Following that information results in the same error as before, just with SetFilterMTMode instead of SetMTMode.

Sorry, forgot to post log file again.

Lỗi please make sure its a vavid avisynth

Member


It should be

Code:

SetFilterMTMode("DEFAULT_MT_MODE", 2)

When I use I get the same error message as you

You need to add Prefetch(some number) at the end as well . Try 4 first . Use avsmeter to test which settings are the fastest with lowest cpu usage

Lỗi please make sure its a vavid avisynth

Member

-

Originally Posted by poisondeathray

It should be

Code:

SetFilterMTMode("DEFAULT_MT_MODE", 2)

When I use

I get the same error message as you

You need to add Prefetch(some number) at the end as well . Try 4 first

The previous log included a test where I add Prefetch(2) to the end of the script - first try I'd forgotten it. Result was the same both times.

Making the adjustment recommended results in the same error. Log attached.

  • Lỗi please make sure its a vavid avisynth

    Member

    - Hold up, I think I got it. Running a full test now.

Lỗi please make sure its a vavid avisynth

Member


All right, thanks to that last post I got everything running now.

The final issue was that instead of altering the FIRST SetMTMode line to Avisynth+'s preferred form, you DELETE that from the script. Completely. This does not work in the original form of the script, of course; The second SetMTMode input must be altered to the Avisynth+ version.

I'll be making a little note of this stuff to put into my backup files for future reference. Thank you all for your assistance - my test files are coming out nicely. Any optimization recommendations for number of threads would be nice(avsmeter just confused me until my brain oozed out my ears...), but 4 seems to be balanced fairly well(CPU not getting terribly hot, and files are processing fairly quickly) so I'm not TOO worried about it.