Builds on gcc 11.2 (with patch) and seems to require only c++11 support as minimum ... https://bugs.gentoo.org/721676 just one liner (adding include) https://github.com/sekrit-twc/zimg/commit/9ae36d7d5f7420eaacd9644451933512fa... wget https://github.com/sekrit-twc/zimg/archive/release-2.8.tar.gz not sure if ffmpeg 5.1 still supports this ...
I have in the system zimg 3.0.4; installed as a dependency of ffmpeg. I tried to enable libzimg when compiling CinGG, but it is not recognized: configure: WARNING: unrecognized options: --enable-libzimg Any advice on how I could do that?
ср, 31 мая 2023 г., 13:54 Andrea paz <[email protected]>:
I have in the system zimg 3.0.4; installed as a dependency of ffmpeg. I tried to enable libzimg when compiling CinGG, but it is not recognized:
configure: WARNING: unrecognized options: --enable-libzimg
Any advice on how I could do that?
Just like I tried it in termux: export FFMPEG_EXTRA_CFG="--disable-debug --target-os=android --enable-mediacodec --enable-jni --enable-opencl --disable-doc --disable-ffprobe --enable-libdav1d" export EXTRA_LIBS="-ldav1d -lOpenCL -landroid" before your configure line just in your case you should put --enable-libzimg into ffmpeg_extra_cfg and corresponding lib (does pkg-config --libs libzimg show anything?) to extra_libs
Giving your command I get: pkg-config --libs libzimg Package libzimg was not found in the pkg-config search path. Perhaps you should add the directory containing `libzimg.pc' to the PKG_CONFIG_PATH environment variable Package 'libzimg', required by 'virtual:world', not found I think I'm entering the territories unknown to me, so I'm retiring! :-)
ср, 31 мая 2023 г., 22:31 Andrea paz <[email protected]>:
Giving your command I get:
pkg-config --libs libzimg Package libzimg was not found in the pkg-config search path. Perhaps you should add the directory containing `libzimg.pc' to the PKG_CONFIG_PATH environment variable Package 'libzimg', required by 'virtual:world', not found
I think I'm entering the territories unknown to me, so I'm retiring! :-)
sorry! I looked into my zimg.pc and found this: ==== prefix=/usr/local exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: zimg Description: Scaling, colorspace conversion, and dithering library Version: 3.0.4 # If building a static library against a C++ runtime other than libstdc++, # define STL_LIBS when running configure. Libs: -L${libdir} -lzimg ==== so, try 'pkg-config --libs zimg' please?
ср, 31 мая 2023 г., 23:15 Andrea paz <[email protected]>:
so, try 'pkg-config --libs zimg' please?
$ pkg-config --libs zimg -lzimg
Then I tried a new compilation but with the same result:
well, do not put it into cingg's config, put it into two export lines before! I'll try to make working example ...soon (but may be not today)
configure: WARNING: unrecognized options: --enable-libzimg
ср, 31 мая 2023 г., 23:52 Andrew Randrianasulu <[email protected]>:
ср, 31 мая 2023 г., 23:15 Andrea paz <[email protected]>:
so, try 'pkg-config --libs zimg' please?
$ pkg-config --libs zimg -lzimg
Then I tried a new compilation but with the same result:
well, do not put it into cingg's config, put it into two export lines before! I'll try to make working example ...soon (but may be not today)
in terminal: export EXTRA_LIBS=" -lzimg" export FFMPEG_EXTRA_CFG=" --enable-libzimg" then your usual configure / make / make install build-tested with 2.8 zimg + our 5.1 ffmpeg
configure: WARNING: unrecognized options: --enable-libzimg
Thanks, with the two "exports" I compliled without any problems. No message in console. Among the ffmpeg plugins, "zscale" appeared. Applying it to an edit gives no error messages. But whatever changes I try to make to any of its parameters I always get the same error: PluginFVClient::process_buffer() F_zscale err: Generic error in an external library Any advice on how to make it work? It would be a really nice plugin that allows you to control every aspect of a transcode, from size to colors.
чт, 1 июн. 2023 г., 11:00 Andrea paz <[email protected]>:
Thanks, with the two "exports" I compliled without any problems. No message in console. Among the ffmpeg plugins, "zscale" appeared. Applying it to an edit gives no error messages. But whatever changes I try to make to any of its parameters I always get the same error:
PluginFVClient::process_buffer() F_zscale err: Generic error in an external library
quick googling showed this closed ticket ... https://trac.ffmpeg.org/ticket/9811 try with less threading (cpuset -c 0-1 cin) ? Can you also post full message? Also, be sure to set Format to rgba-float just in case?
Any advice on how to make it work? It would be a really nice plugin that allows you to control every aspect of a transcode, from size to colors.
I set rgba-float. The message is only the previous one and there are no others. cpuset is not recognized. See the video: https://streamable.com/1qzfyl
чт, 1 июн. 2023 г., 14:42 Andrea paz <[email protected]>:
I set rgba-float. The message is only the previous one and there are no others. cpuset is not recognized. See the video: https://streamable.com/1qzfyl
:( what kind of zscale filter setup string you used?
=
I also named command wrong, try taskset https://unix.stackexchange.com/questions/531757/how-to-limit-processes-to-al... sorry!
With "$ taskset --cpu-list 1-10 ./cin" and doing various tests with the number of cores to disable, I always get the same error. I don't quite understand what you mean by "zscale filter setup string". If you mean which filter parameters I have varied then the answer is: all the ones involving colors! One after the other or in groups the result is always the same error. For example, if I set Primaries; Transfer and Matrix to "input" or to "unspecified" there are no errors; any other choice of color spaces always leads to the same error. All this is with both the X11 and X11-OpenGL driver. My idea is that CinGG's internal ffmpeg cannot use the libzimg library which is external instead. Could a patch be made that enables zimg and also builds the library internally?
On Thu, Jun 1, 2023 at 7:11 PM Andrea paz <[email protected]> wrote:
With "$ taskset --cpu-list 1-10 ./cin" and doing various tests with the number of cores to disable, I always get the same error. I don't quite understand what you mean by "zscale filter setup string". If you mean which filter parameters I have varied then the answer is: all the ones involving colors! One after the other or in groups the result is always the same error. For example, if I set Primaries; Transfer and Matrix to "input" or to "unspecified" there are no errors; any other choice of color spaces always leads to the same error. All this is with both the X11 and X11-OpenGL driver.
Oh yes, I was only testing in width/height ...! playing with color range controls give me: PluginFVClient::process_buffer() F_zscale err: Generic error in an external library PluginFVClient::process_buffer() F_zscale err: Generic error in an external library PluginFVClient::process_buffer() F_zscale err: Generic error in an external library PluginFVClient::process_buffer() F_zscale err: Generic error in an external library PluginFVClient::process_buffer() F_zscale err: Generic error in an external library terminate called after throwing an instance of 'zimg::error::InternalError' Аварийный останов
My idea is that CinGG's internal ffmpeg cannot use the libzimg library which is external instead. Could a patch be made that enables zimg and also builds the library internally?
I remember old emails where, with your help, I had managed to compile without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build. Another question: should I still use the two "exports" in this build as well?
пт, 2 июн. 2023 г., 00:05 Andrea paz <[email protected]>:
I remember old emails where, with your help, I had managed to compile without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build.
you can look into "bld" directory - BSDs build work exactly without thirdparty (shortened): ./configure --with-single-user \ --disable-static-build --without-thirdparty --without-libdpx May be we should add this to manual .
Another question: should I still use the two "exports" in this build as well?
No, because build will attempt to link to already-build libav* libraries.
Unfortunately, now we start with errors that I don't understand. The compilation failed and I attach the cin.log and configure.log. Question: shouldn't we use ffmpeg-git? The configure I used is as follows: ./configure --with-single-user --disable-static-build --with-config-dir=/home/paz/.bcast6 --without-thirdparty --without-libdpx Taking a hint from "bsd.sh" I also tried the following configure: $ ./configure --with-single-user --disable-static-build --with-config-dir=/home/paz/.bcast6 --without-thirdparty --without-libdpx --disable-dav1d --disable-libaom --disable libwebp --without-nv But I get the error: configure: error: unrecognized option: `--disable' Try `./configure --help' for more information If I change the "disable" to "without" I get: configure: error: unrecognized option: `--without' Try `./configure --help' for more information
пт, 2 июн. 2023 г., 10:58 Andrea paz <[email protected]>:
Unfortunately, now we start with errors that I don't understand. The compilation failed and I attach the cin.log and configure.log. Question: shouldn't we use ffmpeg-git?
It tend to be API-unstable .. :/ Anyway pluginfclient.C:665:13: error: ‘avfilter_pad_count’ was not declared in this scope 665 | if( avfilter_pad_count(fp->outputs) > 1 ) return 0; hopefully fixed by my patch (attached) Phyllis currently testing ffmpeg-6.0 with rebased patches. in ffmpeg.git we hopefully will see vulkan h264/265 decoding and no additional breakage!
The configure I used is as follows:
./configure --with-single-user --disable-static-build --with-config-dir=/home/paz/.bcast6 --without-thirdparty --without-libdpx
Taking a hint from "bsd.sh" I also tried the following configure:
$ ./configure --with-single-user --disable-static-build --with-config-dir=/home/paz/.bcast6 --without-thirdparty --without-libdpx --disable-dav1d --disable-libaom --disable libwebp --without-nv
But I get the error:
configure: error: unrecognized option: `--disable' Try `./configure --help' for more information
If I change the "disable" to "without" I get:
configure: error: unrecognized option: `--without' Try `./configure --help' for more information
@Stefan Thanks for the hint. I had done the copy/paste from bld_appimage.sh which indeed reports the error (@Phyllis: better correct this error?). The compilation starts but stops with an error. I did a new build with the 2 patches. This time the build happens without any problems. The zscale plugin is present, but it keeps getting the usual error when I change the color parameters. PluginFVClient::process_buffer() F_zscale err: Generic error in an external library
пт, 2 июн. 2023 г., 14:54 Andrea paz <[email protected]>:
@Stefan Thanks for the hint. I had done the copy/paste from bld_appimage.sh which indeed reports the error (@Phyllis: better correct this error?). The compilation starts but stops with an error.
I did a new build with the 2 patches. This time the build happens without any problems. The zscale plugin is present, but it keeps getting the usual error when I change the color parameters.
PluginFVClient::process_buffer() F_zscale err: Generic error in an external library
:( You tried to set parameters from down (input) to top? Sorry, it just seems this plugin/underlaying library behaves badly if you set only *some* parameters, because there is no way I know to set them all in one go (and anyway we can interactively change them individually and watch result realtime ....)
You tried to set parameters from down (input) to top?
I don't know if I understand what you mean correctly. Anyway, I tried putting values (corresponding to bt2020) to the following paramaters, one at a time. Here are the results: matrixin --> 9 --> OK min --> 9 --> OK transferin --> 14 --> OK tin --> 14 --> ERROR primariesin --> 9 --> OK pin --> 9 --> ERROR
пт, 2 июн. 2023 г., 15:19 Andrea paz <[email protected]>:
You tried to set parameters from down (input) to top?
I don't know if I understand what you mean correctly. Anyway, I tried putting values (corresponding to bt2020) to the following paramaters, one at a time. Here are the results:
matrixin --> 9 --> OK min --> 9 --> OK
transferin --> 14 --> OK tin --> 14 --> ERROR
primariesin --> 9 --> OK pin --> 9 --> ERROR
So, you can manually edit keyframe with desired parameters? Can you also post your system's ffmpeg banner output and version of zimg so I can try to ask about this error on zimg github?
пт, 2 июн. 2023 г., 16:17 Andrea paz <[email protected]>:
So, you can manually edit keyframe with desired parameters? I tried varying the parameters but without enabling keyframes (autos) in the "Preset Edit" window. I don't know if that is what you wanted.
Ah, so it works this way too? I forgot about this possibility, but wanted to test plugin autos (keyframes themselves work, you can change ffmpeg filter parameters along the timeline, just changes will be abrupt, not nicely curved)
I append a text file with the data.
On Fri, Jun 2, 2023 at 5:54 AM Andrea paz <[email protected]> wrote:
@Stefan Thanks for the hint. I had done the copy/paste from bld_appimage.sh which indeed reports the error (@Phyllis: better correct this error?).
OK, next time I boot the desktop, I will correct. Nice catch! thanks.
I try to attach a draft on the paragraph on alternative builds, to be put in the appendix. If it goes well, I would propose to wait until Andrew's patches are put into git. @Phyllis For the draft I used what you reported in previous emails.
GIT manual checkin of Andrea's addition and clarifications of ffmpeg.git and without-thirdparty builds. Along with GIT source checkin of ffmpeg.git.patch# for ffmpeg 6.0. On Sat, Jun 3, 2023 at 3:12 AM Andrea paz <[email protected]> wrote:
I try to attach a draft on the paragraph on alternative builds, to be put in the appendix. If it goes well, I would propose to wait until Andrew's patches are put into git.
@Phyllis For the draft I used what you reported in previous emails.
I remember old emails where, with your help, I had managed to compile
without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build.
you can look into "bld" directory - BSDs build work exactly without thirdparty (shortened):
./configure --with-single-user \ --disable-static-build --without-thirdparty --without-libdpx
May be we should add this to manual .
I have this staged to add to the Manual GIT. It will look like this (but it will mostly be missed in reading anyway): 1.3.4 Notes about Building from Git in your Customized Environment
Getting a build to work in a custom environment is not easy. If you have already installed libraries which are normally in the thirdparty build, getting them to be recognized means you have to install the devel version so the header files which match the library interfaces exist. If you want to build using only the thirdparty libraries installed in your system, just include "–without-thirdparty" to your configure script. For example:
./confgure --with-single-user --disable-static-build --without-thirdparty
Below is the list of thirdparty builds, but this list may have changed over ...
пт, 2 июн. 2023 г., 19:30 Phyllis Smith <[email protected]>:
I remember old emails where, with your help, I had managed to compile
without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build.
you can look into "bld" directory - BSDs build work exactly without thirdparty (shortened):
./configure --with-single-user \ --disable-static-build --without-thirdparty --without-libdpx
May be we should add this to manual .
I have this staged to add to the Manual GIT. It will look like this (but it will mostly be missed in reading anyway):
May be add it to website page about building, too?
1.3.4 Notes about Building from Git in your Customized Environment
Getting a build to work in a custom environment is not easy. If you have already installed libraries which are normally in the thirdparty build, getting them to be recognized means you have to install the devel version so the header files which match the library interfaces exist. If you want to build using only the thirdparty libraries installed in your system, just include "–without-thirdparty" to your configure script. For example:
./confgure --with-single-user --disable-static-build --without-thirdparty
Below is the list of thirdparty builds, but this list may have changed over ...
Not sure about adding it to the website page -- I do not think it should be publicized too much because it just leads to problems if not using what the defaults are. For example, some things just do not work right, especially in FFmpeg without the patches. On Fri, Jun 2, 2023 at 10:34 AM Andrew Randrianasulu < [email protected]> wrote:
пт, 2 июн. 2023 г., 19:30 Phyllis Smith <[email protected]>:
I remember old emails where, with your help, I had managed to compile
without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build.
you can look into "bld" directory - BSDs build work exactly without thirdparty (shortened):
./configure --with-single-user \ --disable-static-build --without-thirdparty --without-libdpx
May be we should add this to manual .
I have this staged to add to the Manual GIT. It will look like this (but it will mostly be missed in reading anyway):
May be add it to website page about building, too?
1.3.4 Notes about Building from Git in your Customized Environment
Getting a build to work in a custom environment is not easy. If you have already installed libraries which are normally in the thirdparty build, getting them to be recognized means you have to install the devel version so the header files which match the library interfaces exist. If you want to build using only the thirdparty libraries installed in your system, just include "–without-thirdparty" to your configure script. For example:
./confgure --with-single-user --disable-static-build --without-thirdparty
Below is the list of thirdparty builds, but this list may have changed over ...
пт, 2 июн. 2023 г., 19:40 Phyllis Smith <[email protected]>:
Not sure about adding it to the website page -- I do not think it should be publicized too much because it just leads to problems if not using what the defaults are. For example, some things just do not work right, especially in FFmpeg without the patches.
Yeah, but some things might works better At The Moment, for example I wonder if lcms2 support at image input side in ffmpeg6 actually makes any difference on timeline ..... Add *Use at your own risk* h1 sized header before this text? :)
On Fri, Jun 2, 2023 at 10:34 AM Andrew Randrianasulu < [email protected]> wrote:
пт, 2 июн. 2023 г., 19:30 Phyllis Smith <[email protected]>:
I remember old emails where, with your help, I had managed to compile
without thirdparty. I can't find that thread anymore; does anyone remember what it was? The fact is that I forgot how to do such a build.
you can look into "bld" directory - BSDs build work exactly without thirdparty (shortened):
./configure --with-single-user \ --disable-static-build --without-thirdparty --without-libdpx
May be we should add this to manual .
I have this staged to add to the Manual GIT. It will look like this (but it will mostly be missed in reading anyway):
May be add it to website page about building, too?
1.3.4 Notes about Building from Git in your Customized Environment
Getting a build to work in a custom environment is not easy. If you have already installed libraries which are normally in the thirdparty build, getting them to be recognized means you have to install the devel version so the header files which match the library interfaces exist. If you want to build using only the thirdparty libraries installed in your system, just include "–without-thirdparty" to your configure script. For example:
./confgure --with-single-user --disable-static-build --without-thirdparty
Below is the list of thirdparty builds, but this list may have changed over ...
participants (4)
-
Andrea paz -
Andrew Randrianasulu -
Phyllis Smith -
Stefan de Konink