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. |
11th January 2021, 20:34 | #4141 | Link |
Registered User
Join Date: Dec 2005
Location: Germany
Posts: 1,795
|
R52 needs Python 3.8 on windows.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth VapourSynth Portable FATPACK || VapourSynth Database |
16th January 2021, 07:17 | #4145 | Link |
Registered User
Join Date: Aug 2015
Posts: 47
|
I think I will stuck with ffmpeg because I'm not familiar with compile x264 ^^"
anyways I found a topic and I think it could help me https://forum.doom9.org/showthread.php?t=148615 Thank you |
17th January 2021, 13:30 | #4147 | Link |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,548
|
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 |
17th January 2021, 17:03 | #4149 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
But it's pythonic and C++20, don't you like it?
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists |
17th January 2021, 18:59 | #4151 | Link |
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
|
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 ??? |
17th January 2021, 19:34 | #4152 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
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.
|
17th January 2021, 20:15 | #4154 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
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); Code:
auto TransposedClip = Core["std"]["Transpose"]("clip", InputClip); |
17th January 2021, 20:54 | #4155 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
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 |
|
20th January 2021, 03:05 | #4158 | Link |
Useful n00b
Join Date: Jul 2014
Posts: 1,667
|
Because Visual Studio on Windows has such a tiny usage. I'm the only one that would be stupid enough to have such an environment.
Hey, he called me a masochist for not using his stuff. How about you mind your own business? Or how about you ask him to create some documentation, for God's sake? The only joke here is the never-DG guys continually twisting themselves into pretzels. Pitiful. Last edited by videoh; 20th January 2021 at 03:14. |
20th January 2021, 07:48 | #4159 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
it's nobody's problem, msvc is well known to be slow on supporting new C++ features (it's also not the worst tho, apple clang is far worse than msvc in terms of C++20 support). things will get there eventually. the main problem with msvc currently is that it does not provide complete support for concepts, a major C++20 feature that the wrapper relies on heavily.
and the masochist thing is not personal, using the low level API not only requires more work to do the same thing, it is also very error prone in certain cases, especially when dealing with reference counted objects. you won't believe how easy and how likely it is to forget calling that "free" function marked in red in the following code block Code:
auto std = vsapi->getPluginByNs("std", core); auto args = vsapi->createMap(); vsapi->propSetNode(args, "clip", node, paAppend); vsapi->freeNode(node); // manually releasing resource acquired in a foreign scope, highly error prone. auto ret = vsapi->invoke(std, "Transpose", args); vsapi->freeMap(args); node = vsapi->propGetNode(ret, "clip", 0, nullptr); vsapi->freeMap(ret); |
Tags |
speed, vaporware, vapoursynth |
Thread Tools | Search this Thread |
Display Modes | |
|
|