Avidemux Forum

Avidemux => Main version 2.6 => Topic started by: timtas on May 09, 2017, 01:45:36 AM

Title: resize filter
Post by: timtas on May 09, 2017, 01:45:36 AM
Hi all
I have built 2.6.20 from source and wanted to try the resize filter. I indeed get a filter called:

vdpau: resize

and this also works fine. I just wondered if there is another, non-vdpau resize filter, in case vdpau is not available?

I maybe have to add that I only build against qt5 and not qt4.
Title: Re: resize filter
Post by: mean on May 09, 2017, 05:07:43 AM
swresize is the one
Title: Re: resize filter
Post by: timtas on May 09, 2017, 10:58:41 PM
Thanks for the info. Does anybody by chance know what swresize needs in order to be built? I don't seem to get it in my build.
Title: Re: resize filter
Post by: eumagga0x2a on May 10, 2017, 12:03:00 AM
I'd rather ask what are you doing not to get it (libADM_vf_swscaleResizeQT5.so) built? Please provide some details regarding your build environment and procedure.

qt5 is fine. qt4 is deprecated and doesn't get test coverage anymore, making breakage easily possible.
Title: Re: resize filter
Post by: timtas on May 11, 2017, 09:00:28 PM
Basically, I use /bootStrap.bash, with a few modifications due to having X11 stuff not under /usr, but under /opt/X11. Also, I install under /opt/avidemux and not under /usr.
I also added a patch called alsa-nodrain, as I'm using alsa.

I build against qt5 5.8.0 and it runs fine, but I don't seem to get the swresize plugin


sed -i 's,/usr,/opt/avidemux,g' ./bootStrap.bash
sed -i 's,$EXTRA,$EXTRA -DVDPAU_INCLUDE_DIR=/opt/X11/include -DLIBVA_INCLUDE_DIR=/opt/X11/include -DSDL_INCLUDE_DIR=/opt/X11/include -DXVIDEO_INCLUDE_DIR=/opt/X11/include -DXVIDEO_LIBRARY_DIR=/opt/X11/lib/libXv.so,g' ./bootStrap.bash

patch -p1 < /lfs-src/avidemux_2.6.12-alsa-nodrain-1.patch || exit

CXXFLAGS="-g -std=c++11 -Wall -pedantic" export CXXFLAGS
bash ./bootStrap.bash --with-cli




Title: Re: resize filter
Post by: Jan Gruuthuse on May 12, 2017, 04:07:41 AM
bash bootStrap.bash --deb
and you should install these:
    avidemux3-core-2.#.#--YYMMDD-runtime.deb
    avidemux3-plugins-COMMON-2.#.#-YYMMDD-plugins.deb
    avidemux3-qt5-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-QT5-2.#.#-YYMMDD-plugins.deb
    avidemux3-cli-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-CLI-2.#.#-YYMMDD-plugins.deb
    avidemux3-settings-2.#.#-YYMMDD-settings.deb

If not successful, try: 
Do you have the resize filter when running one of these? http://www.avidemux.org/nightly/appImage_support/

No installation required. More info on Avidemux Universal app (http://avidemux.org/smif/index.php/topic,17293.0.html)
Title: Re: resize filter
Post by: eumagga0x2a on May 12, 2017, 05:50:06 AM
Quote from: Jan Gruuthuse on May 12, 2017, 04:07:41 AM
bash bootStrap.bash --deb
and you should install these:
    avidemux3-core-2.#.#--YYMMDD-runtime.deb
    avidemux3-plugins-COMMON-2.#.#-YYMMDD-plugins.deb
    avidemux3-qt5-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-QT5-2.#.#-YYMMDD-plugins.deb
    avidemux3-cli-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-CLI-2.#.#-YYMMDD-plugins.deb
    avidemux3-settings-2.#.#-YYMMDD-settings.deb

I doubt that Debian packages are useful on a LFS system  ;)

The first patch could be replaced by the --prefix option, I guess. "--with-cli" does nothing, because building CLI is the default.

It would be helpful if you look in /tmp/logbuildPluginsQt5* for anyting resize related after a build as well as preserve the cmake output redirecting stdout and stderr to a file during compilation (trying to build the current trunk instead of release probably wouldn't change things but would reduce testing delta).
Title: Re: resize filter
Post by: Jan Gruuthuse on May 12, 2017, 06:15:02 AM
Quote from: eumagga0x2a on May 12, 2017, 05:50:06 AM
I doubt that Debian packages are useful on a LFS system  ;)
I see.
And (c/sh/w)ould Avidemux Universal app run on Linux From Scratch (LFS)?
Title: Re: resize filter
Post by: eumagga0x2a on May 12, 2017, 01:18:16 PM
Quote from: Jan Gruuthuse on May 12, 2017, 06:15:02 AM
And (c/sh/w)ould Avidemux Universal app run on Linux From Scratch (LFS)?

Highly likely it would, if the system is really Linux and not some kind of BSD Unix. But who having set up LFS would want to run third-party binaries on it?
Title: Re: resize filter
Post by: timtas on May 29, 2017, 07:06:57 PM
Quote from: eumagga0x2a on May 12, 2017, 01:18:16 PM
Quote from: Jan Gruuthuse on May 12, 2017, 06:15:02 AM
And (c/sh/w)ould Avidemux Universal app run on Linux From Scratch (LFS)?

Highly likely it would, if the system is really Linux and not some kind of BSD Unix. But who having set up LFS would want to run third-party binaries on it?

It is really a linux system, but strangely, the Avidemux Universal app does not run:

/tmp/.mount_HrGgJv/AppRun: line 7: 12761 Segmentation fault      ${HERE}/usr/bin/avidemux3_portable $@


The self-compiled version runs fine, I'm only missing the resize plugin (maybe also some others).
Title: Re: resize filter
Post by: timtas on May 29, 2017, 07:10:39 PM
Quote from: eumagga0x2a on May 12, 2017, 05:50:06 AM
Quote from: Jan Gruuthuse on May 12, 2017, 04:07:41 AM
bash bootStrap.bash --deb
and you should install these:
    avidemux3-core-2.#.#--YYMMDD-runtime.deb
    avidemux3-plugins-COMMON-2.#.#-YYMMDD-plugins.deb
    avidemux3-qt5-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-QT5-2.#.#-YYMMDD-plugins.deb
    avidemux3-cli-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-CLI-2.#.#-YYMMDD-plugins.deb
    avidemux3-settings-2.#.#-YYMMDD-settings.deb

I doubt that Debian packages are useful on a LFS system  ;)

The first patch could be replaced by the --prefix option, I guess. "--with-cli" does nothing, because building CLI is the default.

It would be helpful if you look in /tmp/logbuildPluginsQt5* for anyting resize related after a build as well as preserve the cmake output redirecting stdout and stderr to a file during compilation (trying to build the current trunk instead of release probably wouldn't change things but would reduce testing delta).

Ok, I will try that, then, I guess there is some dependency either missing, or available in the wrong version.


I do install some debian packages, for stuff not available in source, or too big for me to compile (chrome, libreoffice, brother printer drivers), but I generally strive for a self-compiled system.

Title: Re: resize filter
Post by: timtas on June 14, 2017, 09:09:09 PM
Quote from: eumagga0x2a on May 12, 2017, 05:50:06 AM
Quote from: Jan Gruuthuse on May 12, 2017, 04:07:41 AM
bash bootStrap.bash --deb
and you should install these:
    avidemux3-core-2.#.#--YYMMDD-runtime.deb
    avidemux3-plugins-COMMON-2.#.#-YYMMDD-plugins.deb
    avidemux3-qt5-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-QT5-2.#.#-YYMMDD-plugins.deb
    avidemux3-cli-2.#.#-YYMMDD-runtime.deb
    avidemux3-plugins-CLI-2.#.#-YYMMDD-plugins.deb
    avidemux3-settings-2.#.#-YYMMDD-settings.deb

I doubt that Debian packages are useful on a LFS system  ;)

The first patch could be replaced by the --prefix option, I guess. "--with-cli" does nothing, because building CLI is the default.

It would be helpful if you look in /tmp/logbuildPluginsQt5* for anyting resize related after a build as well as preserve the cmake output redirecting stdout and stderr to a file during compilation (trying to build the current trunk instead of release probably wouldn't change things but would reduce testing delta).


I have tried a new compile, with the same results. What I found out is that it seems that all plugins in avidemux_plugins/ADM_videoFilters6 that have a qt4 directory in the source tree are not built. The qt5 userinterface itself however is built.

What I also did: I copied libADM_vf_swscaleResizeQT5.so from the extracted appimage to my  ADM_plugins6/videoFilters and this worked fine! So I seem not to be missing any dependencies, rather the build system decides not to build those plugins.

I have qt installed in /opt/qt5, maybe that is a problem?
Title: Re: resize filter
Post by: Jan Gruuthuse on June 15, 2017, 07:45:40 AM
Perhaps developers will give their comments too. My understanding is avidemux build looks for standard installs like /usr

There could be an issue:
QuoteThe BLFS editors recommend installing Qt5 in a directory other than /usr, ie /opt/qt5. To do this, set the following environment variable:
....
QuoteThe BLFS editors do not recommend installing Qt5 into the /usr hierarchy because it becomes difficult to find components and to update to a new version. If you do want to install Qt5 in /usr, the directories need to be specified explicitly. In this case, set QT5PREFIX=/usr and add the following to the configure arguments below:
...

source: linuxfromscratch.org: Installation of Qt5 (http://www.linuxfromscratch.org/blfs/view/svn/x/qt5.html)
Title: Re: resize filter
Post by: eumagga0x2a on June 15, 2017, 06:10:38 PM
Quote from: timtas on June 14, 2017, 09:09:09 PM
I have qt installed in /opt/qt5, maybe that is a problem?

Inspecting build logs and cmake messages would allow to answer this question. CMakeLists.txt files both in avidemux2/avidemux/qt4 and in avidemux2/avidemux_plugins use the same cmake macros to find qt. It could be an issue though if the fakeroot directory (usually avidemux2/install wasn't deleted between compilation runs. Changes in avidemux2/cmake wouldn't have effect as existing cmake files from the fakeroot folder would be used for building plugins.
Title: Re: resize filter
Post by: timtas on June 17, 2017, 08:07:56 PM
Quote from: eumagga0x2a on June 15, 2017, 06:10:38 PM
Quote from: timtas on June 14, 2017, 09:09:09 PM
I have qt installed in /opt/qt5, maybe that is a problem?

Inspecting build logs and cmake messages would allow to answer this question. CMakeLists.txt files both in avidemux2/avidemux/qt4 and in avidemux2/avidemux_plugins use the same cmake macros to find qt. It could be an issue though if the fakeroot directory (usually avidemux2/install wasn't deleted between compilation runs. Changes in avidemux2/cmake wouldn't have effect as existing cmake files from the fakeroot folder would be used for building plugins.

Ok, I will retry and have a proper look at the install logs. I have looked at the logs and looked out for resize, but not for qt5 in particular.
Title: Re: resize filter
Post by: timtas on June 17, 2017, 09:04:35 PM
Quote from: eumagga0x2a on June 15, 2017, 06:10:38 PM
Quote from: timtas on June 14, 2017, 09:09:09 PM
I have qt installed in /opt/qt5, maybe that is a problem?

Inspecting build logs and cmake messages would allow to answer this question. CMakeLists.txt files both in avidemux2/avidemux/qt4 and in avidemux2/avidemux_plugins use the same cmake macros to find qt. It could be an issue though if the fakeroot directory (usually avidemux2/install wasn't deleted between compilation runs. Changes in avidemux2/cmake wouldn't have effect as existing cmake files from the fakeroot folder would be used for building plugins.

I tried again, with no success again. I have captured the cmake output for the qt plugins configuration. What I noticed: it does not even check for qt5. Before, in the core step, it does check:

-- Checking Qt
-- Checking for Qt 5*
-- ******************
--   Checking for Qt5Core
--   Checking for Qt5Widgets
--   Checking for Qt5Network
--   Qt5 found
-- QT5_INCLUDES     : /opt/qt5/include/;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include/QtWidgets;/opt/qt5/include/;/opt/qt5/include/QtNetwork;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++
-- QT5_DEFINITIONS  :
-- QT5_INCLUDES     : /opt/qt5/include/;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include/QtWidgets;/opt/qt5/include/;/opt/qt5/include/QtNetwork;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++
-- QT5_LIBS         : Qt5::Core : Qt5::Widgets : Qt5::Network
--   Checking for Qt5OpenGL
--   Found,include=, libs=


-- Checking for OpenGL
-- *******************
-- Found QtOpenGL
-- Could NOT find OpenGL (missing:  OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR)
Could not find OpenGL

-- Adding Qt inc paths : </opt/qt5/include/;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include;/opt/qt5/include/;/opt/qt5/include/QtWidgets;/opt/qt5/include/QtGui;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++;/opt/X11/include/QtWidgets;/opt/qt5/include/;/opt/qt5/include/QtNetwork;/opt/qt5/include/QtCore;/opt/qt5/.//mkspecs/linux-g++> and definitions <-DQT_CORE_LIB;-DQT_WIDGETS_LIB;-DQT_GUI_LIB;-DQT_CORE_LIB;-DQT_NETWORK_LIB;-DQT_CORE_LIB>
-- qt5 config.h generated


Could it be that the failure to detect OpenGL here leads to dropping qt support in the plugins later?