Log in

View Full Version : VSDB - A VapourSynth Database


Pages : [1] 2

ChaosKing
1st September 2018, 08:44
*BETA- work in progress*


I'm creating a database for vapoursynth to make our lives easier. The main issue with VS is that there is no complete list of what's ported and what's not.
I know there's http://www.vapoursynth.com/doc/pluginlist.html but it's not good enough.

Did You know that there are at least 9 dehalo functions ported to VS?
Well with VSDB you can now find out easily :D

It also acts as a web gui for VSRepo (https://forum.doom9.org/showthread.php?t=175590) (ideally all plugins will be available via vsrepo someday)


The main "problems" what I have now is this:
- categorize all plugins (need help!). I used the categories from vsrepo and http://www.vapoursynth.com/doc/pluginlist.html for now, but it's a bit limited (or most would go into "others"). I added a Collection category for scripts like havsfunc or muvsfunc. A less extreme version of http://avisynth.nl/index.php/External_filters would be nice, suggestions?

Current categories:

Anti-aliasing
Collection
Color/Levels manipulation
Dehaloing
Deinterlacing
Denoising
Dot Crawl and Rainbows
Inverse Telecine
Line Darkening
Other
Resizing and Format Conversion
Scripts
Sharpening
Source/Output
Subtitles
unknown


- All functions inside a "Collection" are shown as a separate item in the table. They are just copies of a "Collection entry" with name, description and category replaced (for now). I don't know how to represent them better. Should I remove the other columns for them (Version, Links) since they are redundant now?


What features would you like? What data or relations are important? Maybe I'm missing something.

Update

New url is: http://vsdb.top (.top domain was cheap lol)
If you want to add or edit a plugin go to http://vsdb.top/dashboard
login/pw vsdbhelper@vsdb.top and vsdbhelper as the pw

Github: https://github.com/theChaosCoder/vsdb
Json export https://github.com/theChaosCoder/vsdb-json

Todo:
- Add some statistics
- auto fetch new vsrepo updates
- some styles are still old
- export to json files on github (as a backup and to keep track of what changed)

fAy01
1st September 2018, 16:01
That's nice. Thank you. Could you possibly add release date for each plugin/script/etc as well?

Myrsloik
1st September 2018, 17:00
That's nice. Thank you. Could you possibly add release date for each plugin/script/etc as well?

That's not stored in the VSRepo package files yet. I'm going to add it the in next few days.

fAy01
1st September 2018, 19:00
That's not stored in the VSRepo package files yet. I'm going to add it the in next few days.

:thanks:

ChaosKing
1st September 2018, 23:20
Alpha2
Check out the dropdown infos.

lansing
2nd September 2018, 00:28
Are the plugin listing read from a database or files or just hardcoded?

I don't like the auto stretching table width when maximize, makes it hard to read with a big block of empty space in between.

Also in the pagination, it doesn't go back to the top when I click on next page.

ChaosKing
2nd September 2018, 01:01
I have a mysql db, but in this case it's harcoded (generated by my script). I'm using https://datatables.net

poisondeathray
2nd September 2018, 17:52
Maybe add another category dealing with color/levels manipulation - so things like tweak(adjust.py) , gradcurve, smoothlevels, maybe even timecube, etc... (I'm sure there are many more) could probably be organized under that category.

Myrsloik
2nd September 2018, 18:52
Maybe add another category dealing with color/levels manipulation - so things like tweak(adjust.py) , gradcurve, smoothlevels, maybe even timecube, etc... (I'm sure there are many more) could probably be organized under that category.

I'll add that category to VSRepo too. Makes sense.

fAy01
2nd September 2018, 22:52
Would you consider listing color formats supported by the plugins/scripts/etc in your database? Similar to avs: http://avisynth.nl/index.php/External_filters
It is very helpful for working with different color formats.

ChaosKing
3rd September 2018, 01:02
Is this relevant in VS? Different formats usually *just* works in VS (ok, plugins often without rgb support).
I would include such information if someone will provide it or knows an easy way to get it programmatically.

I think bitsPerSample(8bit, 16, 32) is a more interessting value then colorFamily. (at least for me)

ChaosKing
3rd September 2018, 22:36
I added a bit depth column with values like: 8 int, 8-16 int / 32 float

And I got an idea. I should be able to get all supported bit depth and color space values by just a simple try and catch block. Will try it tomorrow.

For example LSFmod (with float support) from hnwvsfunc (For example LSFmod (with float support) from hnwvsfunc throws an exception with 16 bit float bcs it is using std.Minimum and it only supports clips with 8..16 bits integer per sample or float.)throws an exception with 16 bit float bcs it is using std.Minimum and it only supports clips with 8..16 bits integer per sample or float.

//Edit
@Myrsloik I think the docs are not up to date or am I reading this wrong?
http://www.vapoursynth.com/doc/functions/minimum_maximum.html#std.Minimum
Clip to process. It must have integer sample type, and bit depth between 8 and 16. If there are any frames with float samples or bit depth greater than 16, an error will be returned.
But this works...
clip = mvf.Depth(clip, 32, sample=1)
clip = hnwvsfunc.LSFmod(clip)

Wolfberry
4th September 2018, 03:47
//Edit
@Myrsloik I think the docs are not up to date or am I reading this wrong?
http://www.vapoursynth.com/doc/functions/minimum_maximum.html#std.Minimum


@ChaosKing I am aware of the documentation is outdated, so I made a pull request 2 weeks ago and it's merged.

The doc on vapoursynth.com is created using Sphinx, and it should be updated once R45 is out.

And very few filter support half precision, so when talking about float support I mean single precision (32-bit float)

ChaosKing
4th September 2018, 12:39
ahh ok thx for the info

My automation attempt kinda works for simple plugins, others have different parameter dependencies and my automation fails. I guess it's better to do this by hand even it this take some time (helpers are very welcome!)
I also added a colorspace column now.
//Edit
How should the color space formats be represented. YV12 vs YUV420 ? or just YUV, GRAY, RGB

The next step would be a web backed so people can edit the stuff.

fAy01
4th September 2018, 15:49
ahh ok thx for the info

My automation attempt kinda works for simple plugins, others have different parameter dependencies and my automation fails. I guess it's better to do this by hand even it this take some time (helpers are very welcome!)
I also added a colorspace column now.
//Edit
How should the color space formats be represented. YV12 vs YUV420 ? or just YUV, GRAY, RGB

The next step would be a web backed so people can edit the stuff.

YUV420 <-- this.

ChaosKing
4th September 2018, 18:07
So basically we take this list then http://www.vapoursynth.com/doc/pythonreference.html#format-constants
What about YCbCr and YCgCo, is there also a YCgCo420, YCgCo422, YCgCo444 etc representation?

ChaosKing
4th September 2018, 19:19
So currently this is how it would look like:
nnedi3
color space: GRAY, YUV4XX, RGB
bit depth: 8-16 int
SangNom
color space: GRAY, YUV4XX, RGB
bit depth: 8-16 int / 32 float

or is this better
nnedi3
supported formats: GRAY8, GRAY10, GRAY12, GRAY16, YUV420P8, YUV422P8, YUV444P8, ... YUV444P16, RGB24, ... RGB48
SangNom
supported formats: GRAY8, GRAY10, GRAY12, GRAY16, YUV420P8, YUV422P8, ... YUV444P8, ... YUV444P16, YUV444PS32, RGB24, ... RGB48, RGBS

or
nnedi3
supported formats: GRAY8-16, YUV4XXP8-16, RGB24-48
SangNom
supported formats: GRAY8-16, GRAYS, YUV4XXP8-16, YUV4XXPS32, RGB24-48, RGBS

fAy01
5th September 2018, 18:39
nnedi3
supported formats: GRAY8, GRAY10, GRAY12, GRAY16, YUV420P8, YUV422P8, YUV444P8, ... YUV444P16, RGB24, ... RGB48
SangNom
supported formats: GRAY8, GRAY10, GRAY12, GRAY16, YUV420P8, YUV422P8, ... YUV444P8, ... YUV444P16, YUV444PS32, RGB24, ... RGB48, RGBS


This one.

What about YCbCr and YCgCo, is there also a YCgCo420, YCgCo422, YCgCo444 etc representation? <-- unsure.

ChaosKing
5th September 2018, 18:48
Really? Wasn't expecting that since the lists will be very long like this.

I wanted to list ALL formats but were too lazy hence the ... But maybe GRAY8-GRAY16 will be better?

Myrsloik
5th September 2018, 18:54
This one.

What about YCbCr and YCgCo, is there also a YCgCo420, YCgCo422, YCgCo444 etc representation? <-- unsure.

That's insane. Many filters have support for 4*10*5*5 = 1000 formats.

The maximum number is 4*25*5*5 = 2500. Blankclip, crop and addborders support that. Even if you ignore subsampling you still end up with 40+ regularly.

ChaosKing
5th September 2018, 19:00
@Myrsloik Which one do you prefer? Or is there maybe another "better" representation?
I still like the first one for its compactness and readability.

color space: GRAY, YUV4XX, RGB
bit depth: 8-16 int / 32 float

Myrsloik
5th September 2018, 19:02
@Myrsloik Which one do you prefer? Or is there maybe another "better" representation?
I still like the first one for its compactness and readability.

color space: GRAY, YUV4XX, RGB
bit depth: 8-16 int / 32 float

That's the most reasonable representation. Just call it YUV and nothing else. Probably mention subsampling too if there are specific requirements.

ChaosKing
5th September 2018, 19:12
Just call it YUV and nothing else. Probably mention subsampling too if there are specific requirements.

I saw some avs ports that only supports YV12, so I would then make it specific with YUV420 otherwise YUV = YUV4XX

unix
6th September 2018, 11:38
Why Xsharpen not available?
"VSRrepo is NOT available! "

ChaosKing
6th September 2018, 12:36
Pushed Alpha3, added color space & bit depth for 90% of the plugins and hnwvsfunc, made some formatting/fixes.
@unix Because it is not in vsrepo (yet). I will push my script collection incl. xsharpen later

Wolfberry
6th September 2018, 12:40
Here is Xsharpen (https://forum.doom9.org/showthread.php?p=1803044) by Myrsloik
It is not available simply because there's no definition created.
ChaosKing will probably integrate those lost functions into lostfunc someday

Edit: posted too late

unix
6th September 2018, 15:20
Thank you ChaosKing & Wolfberry

Myrsloik
6th September 2018, 16:59
Here is Xsharpen (https://forum.doom9.org/showthread.php?p=1803044) by Myrsloik
It is not available simply because there's no definition created.
ChaosKing will probably integrate those lost functions into lostfunc someday

Edit: posted too late

I'll create a proper repository it. Completely forgot I ported it...

Edit: the home is here (https://github.com/myrsloik/WarpSharpSupport)

Will create a proper release and package for it in a bit.

ChaosKing
25th September 2018, 14:13
Big update. VSDB has a new home http://vsdb.top and source is here (https://github.com/theChaosCoder/vsdb) . I created a backend in laravel so people can contribute more easily.
There are still some things I want to implement. See todo on the first page.

tuanden0
25th September 2018, 15:23
I think there is some mistake at ffms 2000
The link on your database is: https://forum.doom9.org/showthread.php?t=174469 and the new release is test8 (3rd March 2018) but the link download is here: https://github.com/FFMS/ffms2/releases that not updated to new release

ChaosKing
25th September 2018, 15:29
thx, I added the github link as well
The release comes from vsrepo https://github.com/vapoursynth/vsrepo/blob/master/local/ffms2.json
test8 is not considered stable, that's why it is not listed.

edit: keeping track of all beta/alpha/custom versions would be too much work. But an "unstable/bleeding edge" version could be added to vsrepo in my optinion...

tuanden0
25th September 2018, 15:47
@ChaosKing I love your work, keep it up :thanks:

ChaosKing
25th September 2018, 16:23
Oh and this works too http://vsdb.top/plugins/hnwvsfunc
Also with multiple namespaces http://vsdb.top/plugins/dfttest

ChaosKing
26th September 2018, 00:51
Added VSRepo GUI page. All data are from vsrepo-github. http://vsdb.top/vsrepogui

Wolfberry
27th September 2018, 05:12
When editing in the dashboard, it does not preserve the position and will always go to the first page.
That's not very convenient, also the Plugin column in Dashboard / Plugin Functions are all blank

ChaosKing
27th September 2018, 09:51
All blank? Can you make a screeshot?

Edit: fixed.

Yeah I need to improve some ui stuff.

ChaosKing
27th September 2018, 11:05
Now the table jumps back to the page of the edited plugin.
But I will switch to something else, either server-side processing or a different "table system". I saw some nice laravel packages.

ChaosKing
27th September 2018, 17:54
Now with json backup git-repo https://github.com/theChaosCoder/vsdb-json

ChaosKing
6th October 2018, 22:20
You want some some statistics? Here: http://vsdb.top/stats
In the next update Add and Edit stuff will be supported by vuejs.

Let me know if you want feature xy, I will try to implement it.

lansing
26th December 2018, 23:49
Missing Retinex:
https://github.com/HomeOfVapourSynthEvolution/VapourSynth-Retinex

ChaosKing
27th December 2018, 01:51
Nope, it's here: http://vsdb.top/plugins/retinex

lansing
27th December 2018, 03:37
Nope, it's here: http://vsdb.top/plugins/retinex

Oh I didn't realize there is a second page, I was searching on the main page and couldn't find it.

ChaosKing
27th December 2018, 11:08
It's also on the main page, just type retinex in the searchbox.

sl1pkn07
9th March 2019, 21:30
http://vsdb.top/plugins/hnwvsfunc is removed in upstream

https://github.com/Helenerineium?tab=repositories

ChaosKing
9th March 2019, 22:01
Yeah I know. I just noticed, instead of adding every function from G41fun (again) I can just simply rename hnwvsfunc xD

shph
28th August 2020, 17:46
Is it possible to add "Bit Depth" column? For some workflows it is critical to know that at least 10 bit is supported from start to end and select plug-ins accordingly.

ChaosKing
28th August 2020, 18:15
For bit depth info click on the namespace link e.g. http://vsdb.top/plugins/nnedi3cl

Bit Depth Color Space Category
NNEDI3CL 8-16 int / 32 float GRAY, YUV, RGB, YCOCG unknown

EDIT
In case you're wondering why is it not on the main page? Look at this http://vsdb.top/plugins/havsfunc
Plugins and scripts can have more than one function with different capabilities.

shph
28th August 2020, 19:49
Yep, multiple function with different capabilities and different bit depth. never thought from this point of view. Now it make sense. Too bad that a lot of bit depth is unknown from specification...

ChaosKing
28th August 2020, 20:19
The data needs to be updated manually, so helpers are welcome. Read the docs and update it.

foxyshadis
30th August 2020, 16:22
The main improvement I might ask for at this point is a linked list of all categories at the top, like "Anti-aliasing · Borders and Cropping · Collection · ...." etc, since pagination doesn't really tell you anything.