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 > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 16th January 2021, 15:21   #4221  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: Providence, RI
Posts: 2,462
@Myrsloik
what are some of the other things I need to do to make my project the preferred C++ wrapper for VS over vsxx?
__________________
If I got new ideas, will post here: https://github.com/IFeelBloated
feisty2 is offline   Reply With Quote
Old Yesterday, 13:30   #4222  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,269
Quote:
Originally Posted by feisty2 View Post
@Myrsloik
what are some of the other things I need to do to make my project the preferred C++ wrapper for VS over vsxx?
Find 3 people who prefer it I guess? I don't use either so I have no opinion about which one is better...
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is online now   Reply With Quote
Old Yesterday, 16:21   #4223  |  Link
videoh
Useful n00b
 
Join Date: Jul 2014
Posts: 1,277
We don't need no steenkin' wrappers. Imagine having a bug in your filter and having to go to feisty2 for support.
videoh is offline   Reply With Quote
Old Yesterday, 17:03   #4224  |  Link
stax76
Registered User
 
stax76's Avatar
 
Join Date: Jun 2002
Location: On thin ice
Posts: 6,593
But it's pythonic and C++20, don't you like it?
stax76 is offline   Reply With Quote
Old Yesterday, 17:42   #4225  |  Link
videoh
Useful n00b
 
Join Date: Jul 2014
Posts: 1,277
I'm sure it's wonderful and great for noobs.
videoh is offline   Reply With Quote
Old Yesterday, 18:59   #4226  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 8,708
I'm sure that its lovely Feisty, Myrsloik and VideoH are just being, well themselves really
__________________
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 Yesterday, 19:34   #4227  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: Providence, RI
Posts: 2,462
Quote:
Originally Posted by videoh View Post
Imagine having a bug in your filter and having to go to feisty2 for support.
that is simply not true. the source code is publicly available and extremely easy to understand. anyone reasonably familiar with the C++ language should be able to manipulate the wrapper (adding more functionality, fixing bugs, etc.) however he or she wants with zero difficulty.
__________________
If I got new ideas, will post here: https://github.com/IFeelBloated
feisty2 is offline   Reply With Quote
Old Yesterday, 19:53   #4228  |  Link
videoh
Useful n00b
 
Join Date: Jul 2014
Posts: 1,277
Where is the documentation for the wrapper?

Visual Studio solution files for building the examples?

Last edited by videoh; Yesterday at 20:00.
videoh is offline   Reply With Quote
Old Yesterday, 20:15   #4229  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: Providence, RI
Posts: 2,462
Quote:
Originally Posted by videoh View Post
I'm sure it's wonderful and great for noobs.
also not true. the wrapper covers all functions provided by the C API, so anything you can do with the low level API, you can do the same with the C++ wrapper, plus the much cleaner and more concise syntax while also being less error prone. there is no performance cost (as long as you choose not to enable some dynamic features like automatic padding which are meant for fast prototyping), everything is built upon zero cost abstraction. even experienced developers should enjoy some benefits like RAII and expect less memory errors.

someone must be a masochist to prefer
Code:
auto std = vsapi->getPluginByNs("std", core);
auto args = vsapi->createMap();
vsapi->propSetNode(args, "clip", node, paAppend);
vsapi->freeNode(node);
auto ret = vsapi->invoke(std, "Transpose", args);
vsapi->freeMap(args);
node = vsapi->propGetNode(ret, "clip", 0, nullptr);
vsapi->freeMap(ret);
over

Code:
auto TransposedClip = Core["std"]["Transpose"]("clip", InputClip);
__________________
If I got new ideas, will post here: https://github.com/IFeelBloated
feisty2 is offline   Reply With Quote
Old Yesterday, 20:54   #4230  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: Providence, RI
Posts: 2,462
Quote:
Originally Posted by videoh View Post
Where is the documentation for the wrapper?

Visual Studio solution files for building the examples?
I haven't started working on documentation and I'll get started once all interface design is finalized. I have covered all functions in the C API but the filter backbone is still subject to change.

for now, you can find various examples here: https://github.com/IFeelBloated/vsFi...aster/Examples

GaussBlur - simple 3x3 convolutional filter

TemporalMedian - a temporal filter

Rec601ToRGB - an example showing how to write filters that manipulate frame properties, and output a video clip of a different format than its input

Crop - an example showing how to write filters that deal with various bitdepths, and output a video clip with a different image size

ModifyFrame - an example showing how to write filters that interact with Python scripts.

Palette - an example showing how to write filters with multiple outputs

SeparableConvolution - an example showing how to write filters that invoke external filters and itself

GaussBlurFast - an example showing how to write filters without automatic padding.

msvc is not currently supported, because it lacks many core language features of C++20 (mainly concepts). you need at least GCC 10.2 to compile the examples
__________________
If I got new ideas, will post here: https://github.com/IFeelBloated
feisty2 is offline   Reply With Quote
Old Yesterday, 21:47   #4231  |  Link
videoh
Useful n00b
 
Join Date: Jul 2014
Posts: 1,277
It's undocumented and I can't build with it or debug it in my development environment. I'm such a masochist for not using it.
videoh is offline   Reply With Quote
Reply

Tags
speed, vaporware, vapoursynth

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


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