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. |
|
|
Thread Tools | Search this Thread | Display Modes |
|
24th March 2018, 04:47 | #1 | Link |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
ffmpeg using .vpy scripts directly one day, like avisynth ?
Do you think there's any chance of ffmpeg one day building with something like --enable-vapoursynth so that it can consume .vpy scripts directly, sort of like avisynth ? Is there a feature in the works of any kind ?
It could mean that VS may need to be amenable to cross-compilation, so I figure the chances are remote. What do you reckon ? Yes there's vspipe (video, no audio unless I'm mistaken ?) and HDR can be piped per this https://forum.doom9.org/showthread.p...37#post1831137 This person had a start at having a go with what appears to be limited success Code:
'vapoursynth': { # not cross compiling ( yet ) Code:
'vapoursynth_libs': { Last edited by hydra3333; 24th March 2018 at 05:25. |
24th March 2018, 09:11 | #2 | Link |
Registered User
Join Date: Oct 2001
Location: Germany
Posts: 7,277
|
sure it's possible in theory, but whether someone is motivated enough to implement it is a totally different thing
-> either implement it yourself and send a patch to the ffmpeg dev team or create a feature request through the official channels and hope for the best The repository you link there doesn't seem to aim to add Vapoursynth support to ffmpeg. It's compiles for example MPV on Linux for Windows. Last edited by Selur; 24th March 2018 at 09:13. |
24th March 2018, 09:39 | #3 | Link |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
|
That must be a very old comment about cross compiling, I know people who've cross compiled it many times to compare gcc vs msvc for speed. Time to write the code I guess...
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
24th March 2018, 14:07 | #4 | Link | |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
Quote:
|
|
25th March 2018, 12:30 | #5 | Link |
unsigned int
Join Date: Oct 2012
Location: 🇪🇺
Posts: 760
|
The core library and the included plugins (minus ocr) can be cross-compiled pretty easily. You pass
Code:
--host=x86_64-w64-mingw32 The Python module is the annoying part, because you must also cross-compile Python, and I think the Python developers don't make it easy. But this is all irrelevant, because VapourSynth has a C API, so you can just use the official binaries compiled with MSVC. You don't have to cross-compile it for ffmpeg. Correction: VapourSynth has a reasonable C API, unlike Python.
__________________
Buy me a "coffee" and/or hire me to write code! Last edited by jackoneill; 25th March 2018 at 12:35. |
27th March 2018, 05:01 | #6 | Link | ||||||
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
Quote:
My objective was to cross-compile a static ffmpeg for windows whilst as far as possible keeping a minimalist Windows PC environment free from bits needed for compilation (eg stuff as needed for jb's approach and/or visual studio bits for vapoursynth). There are various linux cross-compilation approaches (eg zeranoe's which is a widely used build, rdp's, deadsix27's) eg using "free" ubuntu in a clean VM. The market appears to be out there. Quote:
Quote:
I suppose setting up for cross-compiling would need to take into account the "correct" way to do these these things, to result in a cross compiled Win build: From the current windows build instructions Quote:
Quote:
|
||||||
25th March 2018, 13:07 | #7 | Link |
Registered User
Join Date: Oct 2001
Location: Germany
Posts: 7,277
|
Also instead of cross compiling you could also compile it on Windows using media-autobuild_suite.
(Cross-Compiling won't allow ffmpeg to .vpy files so this might not be what you are looking for.) Last edited by Selur; 25th March 2018 at 13:10. |
28th April 2018, 20:15 | #8 | Link |
Registered User
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
|
I spent some time on making x264 support vpy scripts internally. Patch here.
The ideas and some code taken from ffmpeg demuxer proposed here, avs.c input from x264 and NVEnc's vpy input module. Not sure if that's faster than piping, but looks like complex scripts uses all CPU cores. Code will definitely compile well with icl 2018 or gcc 7.3.0. I didn't tried another compilers. |
29th April 2018, 01:06 | #9 | Link | |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
Quote:
Separately, here's a link explaining why building a static ffmpeg with vapoursynth can't be done. https://forum.doom9.org/showthread.p...31#post1840531 |
|
29th April 2018, 16:07 | #10 | Link |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
OK, if that could be done and for example that meant that if the ffmpeg exe was run in the same folder as "portable VS" and it worked then that could well be close enough for some purposes ( eg mine ).
Do you know of the current ffmpeg change proposal (per the link above) achieves that including delayed loading of python or are there more changes needed ? Also, I wonder if the same portable VS folder structure is needed for plugins DLLs etc which I guess can't be statically linked in either, I suppose it is. Last edited by hydra3333; 29th April 2018 at 16:10. |
29th April 2018, 17:09 | #11 | Link |
もこたんインしたお!
Join Date: Jan 2008
Location: Finland / Japan
Posts: 512
|
It loads the script into memory, and then uses libvapoursynth's vsscript_evaluateScript() to evaluate it. Whatever libvapoursynth does in the background regarding python etc. is what matters, not really that patch.
__________________
[I'm human, no debug]
|
1st May 2018, 12:21 | #13 | Link | |
unsigned int
Join Date: Oct 2012
Location: 🇪🇺
Posts: 760
|
Quote:
And you need to pass -lpython3.6m most likely because ffmpeg's configure doesn't call pkg-config with the --static parameter. If it did, VSScript's pkg-config file would give it -lpython3.6m already.
__________________
Buy me a "coffee" and/or hire me to write code! |
|
20th June 2018, 13:01 | #14 | Link | |
Registered User
Join Date: Feb 2016
Posts: 5
|
Quote:
|
|
5th May 2018, 02:21 | #19 | Link | |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
Here's the ffmpeg commit
https://git.ffmpeg.org/gitweb/ffmpeg...182aa0b3778b79 Quote:
Last edited by hydra3333; 5th May 2018 at 02:24. |
|
7th July 2018, 03:29 | #20 | Link | ||
Soul Architect
Join Date: Apr 2014
Posts: 2,559
|
What about this? I haven't made anything up, but I understand their decision.
Quote:
|
||
Thread Tools | Search this Thread |
Display Modes | |
|
|