View Full Version : VapourSynth Portable FATPACK - 64Bit, Editor, Plugins, Scripts, Apps & endless FUN!
redbtn
13th February 2019, 20:33
Maybe bug with Yuuno Editor? c:\users\anato not my profile.
https://d.radikal.ru/d01/1902/d5/f7403428f081t.jpg (https://d.radikal.ru/d01/1902/d5/f7403428f081.png)
2018-06-21 - Add VS-Editor encoding templates (Press F8)
What does it mean? Where can I find them? Edit -> Snippets and Templates is empty.
ChaosKing
14th February 2019, 01:16
Will check yuuno
Add VS-Editor encoding templates (Press F8)
I meant Presets :D
Iron_Mike
6th March 2019, 08:32
@ChaosKing
thank you for this pack, avoids having to hunt down all these plugins and scripts !
A few notes...
(1) I see a release from 2019-02-xx on page 1, but no download... is this still work-in-progress ?
(2) u may wanna include instructions of all needed dependencies...
a few of your included .exe throw this error...
---------------------------
vsedit.exe - System Error
---------------------------
The program can't start because opencv_core320.dll is missing from your computer. Try reinstalling the program to fix this problem.
---------------------------
OK
---------------------------
the app (e.g. VS Edit) ultimately opens, but it seems to be looking for an OpenCV install...
(3) using your portable version, which appears to be like a Py venv, the vapoursynth module is not being recognized by a standard IDE (IntelliJ|Pycharm) even if your included python.exe is being used as the interpreter, so code hinting will throw import error (for the vapoursynth module) - although code executes just fine... code hinting and imports work in the included VS Edit
as a workaround, one can simply copy the Python 3.7 install dir, copy/paste the VS portable version into it, then copy all your plugins over... this will work as a portable version as well (and can be used as a venv) and the IDE will recognize the vapoursynth module, and code hinting will work... u could consider doing that as your release (just a note, not a request)...
Thanks for the share.
ChaosKing
6th March 2019, 09:48
@ChaosKing
thank you for this pack, avoids having to hunt down all these plugins and scripts !
A few notes...
(1) I see a release from 2019-02-xx on page 1, but no download... is this still work-in-progress ?
(2) u may wanna include instructions of all needed dependencies...
a few of your included .exe throw this error...
the app (e.g. VS Edit) ultimately opens, but it seems to be looking for an OpenCV install...
(3) using your portable version, which appears to be like a Py venv, the vapoursynth module is not being recognized by a standard IDE (IntelliJ|Pycharm) even if your included python.exe is being used as the interpreter, so code hinting will throw import error (for the vapoursynth module) - although code executes just fine... code hinting and imports work in the included VS Edit
as a workaround, one can simply copy the Python 3.7 install dir, copy/paste the VS portable version into it, then copy all your plugins over... this will work as a portable version as well (and can be used as a venv) and the IDE will recognize the vapoursynth module, and code hinting will work... u could consider doing that as your release (just a note, not a request)...
Thanks for the share.
(1) yes it is not released yet. (maybe this weekend)
(2) What's is the OS you're using? I already added some runtimes. Never had this error.
(3) The goal is to make VS work and not to provide a complete python "installation". I think the reason why code hinting doesn't work is because the default "libs" are in a zip file so it can't read/find them. That also means that the embedded zip version is much smaller. I also tried to zip the other python modules, but not every module supports it and testing every module is too much work :D
I will compare the full and embedded version and see if it's worth to switch.
Iron_Mike
7th March 2019, 01:05
(1) yes it is not released yet. (maybe this weekend)
(2) What's is the OS you're using? I already added some runtimes. Never had this error.
(3) The goal is to make VS work and not to provide a complete python "installation". I think the reason why code hinting doesn't work is because the default "libs" are in a zip file so it can't read/find them. That also means that the embedded zip version is much smaller. I also tried to zip the other python modules, but not every module supports it and testing every module is too much work :D
I will compare the full and embedded version and see if it's worth to switch.
(1) thanks, I'll stay tuned
(2) on the machine I quickly tested it was Win 8.1 x64 - I googled and found a few other people had similar errors in the past... reason (I assume) why most of you don't see this error, is because you have a version of OpenCV on your system path
(3) yeah, don't sweat it... I just mentioned it for people that wanna incorporate some VS functionality into larger code bases.... and you won't code these projects in VS Edit... difference between full Python and your version was like 20MB unzipped... considering the thing is over 400MB already, it does not make a difference, but the code hinting/evaluation feature is very useful for larger scripts :D
Thanks.
Wolfberry
7th March 2019, 05:35
@ChaosKing You might want to update mvtools here (https://github.com/dubhater/vapoursynth-mvtools/issues/36#issuecomment-462856029) as zorrozork reported some bugs and fixed by dubhater.
@Iron_Mike The only dll that needs OpenCV run-time library is BilateralGPU
Dependencies can be found at 1st post or here.
https://mega.nz/#!3ygkwKIA!Oa1vAO9FK..._IMddHZeSEcAeA
https://mega.nz/#!ejAUSCjD!x-s9Aqr95...9JEroASOJY0bt8
https://mega.nz/#!vqYi3SSL!4k11VV6d4...HYpriJzQlS2DRs
ChaosKing
7th March 2019, 08:51
ahh yes the mvtools fix, totally forgot about this. Just need to test the speed of this build because it could be a slower debug build (the dll is twice as big).
EDIT
Seems not to be slower.
ChaosKing
11th March 2019, 16:17
New release. Now hosted on github: https://github.com/theChaosCoder/vapoursynth-portable-FATPACK/releases
- Added numpy
- No yuuno this time. It didn't install this time and I need to test it more.
- VFW install script, so that Virtualdub can open vpy files. (see extras folder)
EDIT
r19 vsconfig format has changed, replace it with the new one https://github.com/theChaosCoder/vapoursynth-portable-FATPACK/releases/download/r1/vsedit.config
bjoker
28th May 2019, 13:03
Hi,
Is there such FATPACK for Linux (Ubuntu to be specific) please? Thanks!
ChaosKing
28th May 2019, 13:30
I'm not aware of any. There was a ubuntu PPA but it is gone now http://www.vapoursynth.com/doc/installation.html#linux-installation-from-packages
EDIT
His github repo is here https://github.com/darealshinji/vapoursynth-plugins
bjoker
28th May 2019, 14:10
Thanks ChaosKing.
I compiled/installed all these plugins. But how could I link these plugins to Vapoursynth that I compiled/built?
regards,
bjoker
28th May 2019, 15:13
I solved it by
root@ubuntu19:~# cat Mymovie.vpy
import os
import sys
ScriptPath = '/root/VS/Scripts'
#LoadPlugin(path='/usr/local/lib/pkgconfig/ffms2.pc')
sys.path.append(os.path.abspath(ScriptPath))
import vapoursynth as vs
core = vs.get_core()
core.std.LoadPlugin(path='/usr/local/lib/vapoursynth/libffms2.so')
clip = core.ffms2.Source(r"/root/eega-1min.mkv", cachefile = r"/root/eega-1min.mkv.ffindex")
clip.set_output()
root@ubuntu19:~#
ChaosKing
28th May 2019, 15:52
Is /usr/local/lib/vapoursynth in your path variable?
bjoker
28th May 2019, 17:58
Yes...
root@ubuntu19:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/bin:/usr/local/lib/vapoursynth:/usr/local/bin:/usr/local/lib/vapoursynth
root@ubuntu19:~# echo $LD_LIBRARY_PATH
/usr/local/lib/vapoursynth:/usr/local/lib:/usr/local/lib:/usr/local/lib/vapoursynth:/usr/local/lib:/usr/local/lib:
root@ubuntu19:~#
qyot27
28th May 2019, 19:29
sudo ldconfig
Also, plugin autoloading:
http://www.vapoursynth.com/doc/autoloading.html#linux
If you're using a PPA build of VapourSynth, the plugin autoload directory is not going to be /usr/local/lib/vapoursynth; meaning you'd have to redo the build of FFMS2 and point it to the current install prefix, or else just simply override the SystemPluginDir directory using the config file instructions above.
bjoker
28th May 2019, 20:09
Thanks Quot27, I used that autoloading solution but there was no .config directory at all in my ~ however I created that config file but it didn't help.
I'm not using PPA build but compiled/built using source.
I posted about my current problem here = https://forum.doom9.org/showthread.php?p=1875564#post1875564
My build configuration here = https://forum.doom9.org/showthread.php?p=1875497#post1875497
Dreamject
9th June 2019, 15:36
You can add simple integration to system using batch like
@ECHO OFF
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\VapourSynth /v CorePlugins64 /t REG_SZ /d "%~dp0vapoursynth64\coreplugins" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\VapourSynth /v Plugins64 /t REG_SZ /d "%~dp0vapoursynth64\plugins" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v Version /t REG_SZ /d "R45" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v Path /t REG_SZ /d %~dp0 /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v CorePlugins /t REG_SZ /d "%~dp0vapoursynth64\coreplugins" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v Plugins /t REG_SZ /d "%~dp0vapoursynth64\plugins" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v VapourSynthDLL /t REG_SZ /d "%~dp0vapoursynth.dll" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v VSScriptDLL /t REG_SZ /d "%~dp0vsscript.dll" /f
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v PythonPath /t REG_SZ /d %~dp0 /f
rmdir plugins
rmdir coreplugins
del vsrepo.py
pause
mklink /H vsrepo.py vsrepo\vsrepo.py
mklink /J plugins vapoursynth64\plugins
mklink /J coreplugins vapoursynth64\coreplugins
pause
As I remember mostly you need only one key, its
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\VapourSynth /v PythonPath /t REG_SZ /d %~dp0 /f
Another keys/commands just for compatibility
Also you can create links/symlinks for soft instead cmd links
zorr
6th October 2019, 20:55
Is FATPACK still supported? The latest release (on Github) was released in March 2019.
It seems many plugins need API R3.6 which the latest FATPACK doesn't support.
Is there going to be further releases or should I just install the latest Vapoursynth and plugins using the official installer and VSRepoGUI?
ChaosKing
6th October 2019, 21:00
I will update it soon. If you want to be always up to date, the installer + vsrepo would be the preferred way ;-)
Cary Knoop
6th October 2019, 22:14
I will update it soon.
I just wanted to mention that your work is very much appreciated. I do not think anyone expects up to the minute updates, indeed as you write in that case use the VSRepoGUI, but I hope you will continue to update the fatpack at regular intervals!
After all, we don't want the cat to be upset, now don't we? :)
https://i.imgur.com/ljoZ8Uw.jpg
ChaosKing
9th October 2019, 11:38
New build is up. See first page.
Yuuno is not compatible with python-embedded anymore.
Some new Plugins are added, VSRepoGUI was added and the rest updated.
I hope this pleases Supervisor cat 😸
Cary Knoop
9th October 2019, 15:03
I hope this pleases Supervisor cat 😸
Purr........... :)
ChaosKing
2nd November 2019, 10:00
New release with VS R48 is up, enjoy.
ChaosKing
14th May 2020, 08:28
Finally a new release with VS R50 & Python 3.8 https://github.com/theChaosCoder/vapoursynth-portable-FATPACK/releases/tag/r4
ChaosKing
14th May 2020, 08:34
I would like automate this stuff a bit more with github actions. Is there a way to store plugin binaries on github, but without having to commit them? Like a seperate storage space?
Or should I be evil and just commit everything?
ChaosKing
6th September 2020, 20:44
New release.
Will add vseditor2 probably in the next release.
tatsu2050
5th October 2020, 16:36
Just wanted to say... muchas thankas for this collection!
Etroxamin
23rd September 2021, 11:21
hey, thanks a lot for this pack :)
yesterday, I started to get into VS and would like to try out a few things, but would also like to use some fiters which i used in avisynth.
Tried this filter:
ContinuityFixer https://github.com/MonoS/VS-ContinuityFixer
getting the error: There is no function named ContinuityFixer
that's the script line:
clip = core.edgefixer.ContinuityFixer(clip, left=3, top=3, right=3, bottom=3, radius=3)
"core.edgefixer" seems to work, it's blue, but ContinuityFixer stays black, i also tried to find it in the fatpack folder, but there is no file named like this, i would guess it's simply missing, but on the git there is only continuity.cpp - but no .cpp files in the fatpack at all, i guess it would need to be converted?
help would be very appreciated, this is a very useful filter ... thanks in advance :)
ChaosKing
23rd September 2021, 12:35
Yeah it seems it is not included. Will add it with the upcomming R55 api4 fackpack release.
For know you can download it on the release page https://github.com/MonoS/VS-ContinuityFixer/releases/tag/V6
Etroxamin
23rd September 2021, 13:04
Yeah it seems it is not included. Will add it with the upcomming R55 api4 fackpack release.
For know you can download it on the release page https://github.com/MonoS/VS-ContinuityFixer/releases/tag/V6
thanks a lot for your quick reply, now it works :)
ChaosKing
24th September 2021, 09:38
I think this is the updated Edgefixer version https://github.com/sekrit-twc/EdgeFixer
Julek
24th September 2021, 13:05
The new one has a different result, but you can't use both at the same time because of name conflicts, so to be able to use both you can use this one instead of the old one: https://gitlab.com/Ututu/VS-ContinuityFixer
Etroxamin
24th September 2021, 13:44
hey again :)
before I open a new thread, it might be suitable to ask here. Thanks to the easy to use fatpack, i got most filters to work, yet i have not much knowledge about VS scritping and can't really find a way to apply filters to a range of frames.
I tried to follow this guide: https://silentaperture.gitlab.io/mdbook-guide/filtering/filtering.html
in this example:
src = core.ffms2.Source("video.mkv")
deband = source.neo_f3kdb.Deband(src)
replaced = core.remap.Rfs(src, deband, mappings="[100 200] [500 750]")
it looks quite easy, unfortunately, vs editor is already complaining about the 2nd line,
giving me this error: Python exception: name 'source' is not defined.
to make it short, all i tried wasn't working, or didn't give a result where the filter is limited to certain frames.
Maybe someone could share a script or simply add what's needed to limit a filter to a range of frames.
here's my very simple scritp for deband:
import vapoursynth as vs
core = vs.core
src = core.ffms2.Source("video.mkv")
src = core.neo_f3kdb.Deband(src)
src.set_output()
so, what should be added to limit the debanding filter to e.g. frames 100-110?
thanks in advance for any help.
ChaosKing
24th September 2021, 14:10
This should work I guess (not tested)
import vapoursynth as vs
core = vs.core
src = core.ffms2.Source("video.mkv")
deband = core.neo_f3kdb.Deband(src)
src= core.remap.Rfs(src, deband, mappings="[100 200] [500 750]")
src.set_output()
With deband = core.neo_f3kdb.Deband(src).text.Text("DEBAND") You can easily check which frames exactly the filter is applied to with Text().
it looks quite easy, unfortunately, vs editor is already complaining about the 2nd line,
giving me this error: Python exception: name 'source' is not defined.
Because source was not defined before, only src were.
correct would be
deband = core.neo_f3kdb.Deband(src)
OR
deband = src.neo_f3kdb.Deband()
Etroxamin
24th September 2021, 15:08
This should work I guess (not tested)
import vapoursynth as vs
core = vs.core
src = core.ffms2.Source("video.mkv")
deband = core.neo_f3kdb.Deband(src)
src = core.remap.Rfs(src, deband, mappings="[100 200] [500 750]")
src.set_output()
yup, this works.
Another approach was suggested:
import vapoursynth as vs
core = vs.core
src = core.ffms2.Source("video.mkv")
deband = core.neo_f3kdb.Deband(src)
replaced = core.remap.Rfs(src, deband, mappings="[63300 63400]")
replaced.set_output()
this will also work, but can't say yet which might be better for multiple scene based filters, guess i have to test a bit more to find out.
thanks again, very appreciated :)
Etroxamin
24th September 2021, 20:04
finesharp.py https://gist.github.com/4re/8676fd350d4b5b223ab9
seems not to be included in the fatpack (but its on the list), maybe you could add this in the next release. I will check more from the pack over time, and report here if anything is missing, perhaps most just get the file/script and don't repot here for missing stuff.
Edit:
CAS https://github.com/HomeOfVapourSynthEvolution/VapourSynth-CAS
is included in the pack, but not on the list, might be worth to mention there, it's a quite useful sharpener, especially when combined with masks ....
Etroxamin
28th September 2021, 14:24
ok, after spending some time with scripting, i would like to to do some test encodes.
the editor has a in-build encoder, i tried this, and it worked 1 time.
But now i get this error:
x264 [error]: could not open output file `\x264_10bit_video.mkv'
i haven't changed the encode parameters:
--demuxer y4m --preset medium --crf 16 --output-depth 10 -o "{sd}\x264_10bit_video.mkv" -
Well, for my tests i would perhaps also need to specify a lot more parameters. To get down to 10 bit i use this:
src = core.resize.Bicubic(src, format=vs.YUV420P10, matrix_s='709', dither_type='none')
errors about missing/wrong color information were shown, when i tried this, so i tried a simple video without any filters first, as said, that worked 1 time. Now nothing works ...
could need some help i guess, thanks in advance.
ChaosKing
28th September 2021, 17:20
If the script preview works then so should the encode function. Make sure Header is set to Y4M. By default it is set so "no header", it's a bug in vsedit.
Switching profiles to a different one and then back re-sets the header also to the correct value.
Etroxamin
28th September 2021, 19:49
If the script preview works then so should the encode function. Make sure Header is set to Y4M. By default it is set so "no header", it's a bug in vsedit.
Switching profiles to a different one and then back re-sets the header also to the correct value.
thanks for your answer ChoasKing,
i tried to switch to Y4M header, also tried to reload everything, etc. and as said it worked, but also were complaining about colors, however, i just tried it with x265, as it would be my choice anyway and now it works flawlessly, don't know why x264 doesn't want to work anymore, but might not be important anyway.
I will just stick with x265 for now, overall i'd say i can offer better quality anyway, even if it sometimes can screw up some minor details, which x264 did quite well, but an overall better quality is perhaps the more important thing :)
Etroxamin
29th September 2021, 22:24
ok, i made some test encodes, looking good so far, but i encountered a huge problem:
in a larger test video, i got video jitter in one scene, very noticeable and have no idea what can cause this, the error is not reproduceable, and didnt happen in the first test, as well in another test to see if it happens again with the exactly same script.
EDIT:
seems like this error was caused by ffms2, problem was fixed with older release
ChaosKing
29th September 2021, 23:23
This warning shouldn't cause any problems normally. Maybe your source filter is not 100% frame accurate.
If you can wait a bit (probably till the weekend) then I will release a new package based on R56. Then it should not print this waning anymore Script exceeded memory limit...
Etroxamin
30th September 2021, 11:36
This warning shouldn't cause any problems normally. Maybe your source filter is not 100% frame accurate.
If you can wait a bit (probably till the weekend) then I will release a new package based on R56. Then it should not print this waning anymore Script exceeded memory limit...
The warning may not really be a problem, i guess, just thought that it eventually could be a reason.
I use the ffms2 source filter that is bundled with the fatpack with this (standard ?) script:
src = core.ffms2.Source("Video.mkv")
however, is there a way to check for accuracy?
Eventually it would also be an idea to use a pure video file, i currently use a complete remux and it's stored on an external hdd, maybe i should copy it to my ssd as well.
an updated pack may could help too and sure i have time to wait, it's just testing anyway, btw. started another test and a similar error was noticeable, in the same scene, but a few frames later and less stuttering, however if i only test the scene itself, it never happens (tried it a couple of times). This is also not very far into encoding process, less than a minute, really strange ...
I will test this again tonight, with pure video and stored on my ssd (system enviroment), might be worht a try. Btw i already did the same test, but with ttempsmooth and the error didn't occured. Seems to be pure coincidence if it happens or not.
Etroxamin
30th September 2021, 22:26
I already tried to encode the part a 3rd time and got the same stutter in the same scene, but eventually i found the reason why this is happening and would also explain why it is happening only with my larger test encode.
for the test i do 10000 frames, after the 3rd time this happened i tried to compare different ffms2 versions, starting with the older one which have installed around 2019 on my old pc, the result was different by 1 frame, the newer version however seems to have lost 1 frame compared to the older one, and after trying to find out where this happens, i noticed this seems to happen within the range of my 10000 frames test encode. It's actually not happening in the scene, but when there happens an error like this, it might not be easy to find out where it exactly happens.
I will do another test encode and see if the stuttering happens again.
Btw, i also noticed the newer version is a lot faster than the old one, only takes 40-50 seconds (at least on my NVMe), while the older version needs about 4-5 minutes, on a hdd, this is not very noticeable.
Might be that the better speed enhancement looks like a good step forward developing FFMS2, but may can cause problems for certain videos. I will post again if this will be confirmed by my next test encode.
ChaosKing
30th September 2021, 22:35
however, is there a way to check for accuracy?
Where should be a bat file _seek_test_(drop files on me blah).bat in the root folder.
Etroxamin
1st October 2021, 11:11
Where should be a bat file _seek_test_(drop files on me blah).bat in the root folder.
ok, thanks for the hint :)
did that with the file i had problems with, mode 1, as well as mode 6 and of course with the ffms2 version that caused the problem. But the result is a little bit sobering, seek test method 1, as well as 2 showed no issues.
I also finished my new test encode and as i already expected, there were no problems with the older ffms2.
The video track has been demuxed with eac3to latest version and remuxed with the latest version of MKVToolNix, guess there shouldn't be any problem. The BD is relative old ~2008 release, it has 2 ref frames limit, which isn't very common, it also lacks of certain meta info, like color matrix entrys. Might be source specefic, or maybe not.
Eventually other users have discovered similar problems with other sources as well, perhaps worth to have a look at, currently i dont feel like i want to test this a lot tbh, but maybe others.
Etroxamin
2nd October 2021, 01:15
hey, just a short question:
is it possible to use --zonefile command?
tried it with --zonefile zones.txt, the encoder isn't complaining about it, but it for sure does have no effect.
text file is in the same folder as the encoder.exe and looks like this:
0 crf 10
5000 crf 15
10000 crf 20
on the x265 info page, its wirtten, --zonfile is only for cli.
but i also tried
--zones 0,5000,q=20
which doesnt have any effect as well.
would be nice to be able to zone with crf of course ...
PS: I only did tests with frame samples, not a whole video, not sure if that can cause problems.
ChaosKing
2nd October 2021, 08:14
There are no restrictions. It's just a normal x265 binary (you could try to update the binary to a newer version).
ChaosKing
16th October 2021, 19:18
New release https://github.com/theChaosCoder/vapoursynth-portable-FATPACK/releases/tag/r6
Zarxrax
8th January 2024, 18:01
Is there any chance for an update to this pack? I found it very useful, but the last release is a couple years old by now.
ChaosKing
9th January 2024, 12:59
I'm a bit busy these days. Maybe with the next Vapoursynth release => R66.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.