I've been building and running Avidemux out of git for years now. Upgraded to Kubuntu 24.10 (X11) last week, and after figuring out a few build issues with Qt6, have a series of .debs in pkgs, same as always.
Using git master of 9e525222cd6.
But other than 4 icons (Open, Save, Information and Play Filtered) I have no other menu options.
FWIW, my workflow was:
- git pull
- git submodule update (when necessary)
- rm -rf build* (when necessary)
- qtchooser -install qt6 $(which qmake6)
- export QT_SELECT=qt6
- export QT_HOME=/usr/lib/x86_64-linux-gnu/qt6
- bash ./makeAppImageBuster.sh
- sudo dpkg --install pkgs/*
- avidemux3_qt6
Build once this way, this will check for important components
cd ~/avidemux2 && bash createDebFromSourceUbuntu.bash --deb
then install the install build components
cd ~/avidemux2/pkgs && sudo dpkg -i *.deb
There should be text menu on the top:
(https://i.imghippo.com/files/MAE1204B.png)
makeAppImageBuster.sh is not intended to work with anything at all. The similar script with "Minimal" in the name creates a working appImage on Debian Buster (that appImage is not fully self-contained, relying on system libraries to provide some hw accel features).
Ubuntu (not Kubuntu) was famous for pushing the macOS-inspired global menu, breaking a lot of stuff.
The latest bootStrap.bash and CMake scripts should find Qt6 on *ubuntu without the help of QT_HOME.
... so after:
\rm -rf build* pkgs/*
time bash ./bootStrap.bash --deb
sudo dpkg --install pkgs/*
avidemux3_qt6
I still get no menu bar. (Ignore that "... Readback benchmark ..." stuff, it was the text on the kconsole underneath).
Any suggestions?
QuoteUbuntu (not Kubuntu) was famous for pushing the macOS-inspired global menu, breaking a lot of stuff
It appears to be breaking here with Kubuntu as well (the Global Menu at the top of my screen is that for Konsole), anything I can do to work around it?
Screenshot_20250121_141953.png
Quote from: kennethrc on January 21, 2025, 10:28:41 PMAny suggestions?
QuoteUbuntu (not Kubuntu) was famous for pushing the macOS-inspired global menu, breaking a lot of stuff
It appears to be breaking here with Kubuntu as well (the Global Menu at the top of my screen is that for Konsole), anything I can do to work around it?
I am sorry, but if you would like to use Avidemux with Global Menu, you would need to resolve all compatibility issues in the code yourself. To upstream your patches, they may not affect any other platforms (especially Unix / Linux desktop environments not using Global Menu), and you should commit to maintaining them for forseeable future.
An easy solution would be to remove Global Menu related packages.
Well, "Option 1" is a non-starter, and I'm not sure how to do "Option 2".
Is there a way to build the Qt5 version from git (which was working just fine last week)?
Quote from: kennethrc on January 22, 2025, 12:19:00 AMWell, "Option 1" is a non-starter
... or
is it? I mean, if I knew (i.e., "were told") what/how to change I could keep that in my own branch and manage the merges myself.
So, what would "[resolving] all compatibility issues in the code yourself" entail?
Quote from: kennethrc on January 22, 2025, 12:19:00 AMI'm not sure how to do "Option 2".
There are plenty of search results for "kubuntu" + "remove" + "global menu", albeit I cannot verify their effectiveness (but you would be easily able to).
Quote from: kennethrc on January 22, 2025, 12:19:00 AMIs there a way to build the Qt5 version from git (which was working just fine last week)?
It should still work (if it stopped, this is a bug to be fixed), please don't hesitate to view the available options:
bash /path/to/bootStrap.bash --help
which gives us
bash /path/to/bootStrap.bash --enable-qt5
You would need to have Qt5 developer packages (
qttools5-dev-tools and
qtbase5-dev which in turn would pull in the necessary dependencies) installed.
Quote from: kennethrc on January 22, 2025, 12:22:24 AMI mean, if I knew (i.e., "were told") what/how to change I could keep that in my own branch and manage the merges myself.
The Avidemux Qt GUI code lives in
avidemux/qt4 (mostly in
avidemux/qt4/ADM_userInterfaces). Menus are partially created in
avidemux/qt4/ADM_userInterfaces/ADM_gui/Q_gui2.cpp in
MainWindow::buildMyMenu() function from templates in
avidemux/common/ADM_commonUI/myOwnMenu.h, partially generated dynamically in
avidemux/qt4/ADM_userInterfaces/ADM_gui/Q_gui2_menu.cpp. You would need to study the requirements of the software component which implements global menu and either find a solution (yourself, of course) to make it work without breaking stuff in Avidemux or, totally possible, discover unsolvable incompatibilities.
Quote from: kennethrc on January 22, 2025, 12:22:24 AMSo, what would "[resolving] all compatibility issues in the code yourself" entail?
Mostly to unbreak the functionality over and over again broken by other contributors who don't use global menu themselves and don't have time and motivation to create one more testing platform.
Quote from: eumagga0x2a on January 22, 2025, 11:56:47 PM... [Building the Qt5 version] ... should still work
It does. I still have the "no menu on the top bar" issue, but at least now there's a "hamburger" menu that gives me all the options I need.
That being said, "LibVA" as the Display output (via Edit->Preferences) doesn't render into the screen, which it did before the Kubuntu 24.10 upgrade. I now just get whatever was under the screen displayed and it doesn't move. Switching to the OpenGL backend works, however.
If you want some info on what that LibVA bug could be, I can start a new topic for it, just tell me what kinds of input you'd need (MESA version, etc.) to help fix it.
Is there not a setting in kubuntu that controls the appmenu?
Something like "Look and feel of window titles"
Searching for "title" in the Kubuntu System Settings only brings up "Window Decorations" and "Window Behavior", neither of which seem to have options that affect the menu(s). I thought I could check the "Window Decorations" options but nothing seems to be there either.
https://duckduckgo.com/?q=%22kubuntu%22%20%22remove%22%20%22global%20menu%22
LibVA display is known to be broken with recent Intel graphics. Please post lspci -nnk
I keep trying to reply, but getting this:
QuoteCleanTalk: *** Forbidden. Please enable JavaScript. Message seems to be spam. Anti-Spam by CleanTalk. ***
I'm not sure what part of the message this "CleanTalk" is having issue with, but I'll try again.
Quote from: eumagga0x2a on January 23, 2025, 04:40:16 PMhttps://duckduckgo.com/?q=%22kubuntu%22%20%22remove%22%20%22global%20menu%22
Yeah, all the
rest of my applications have the "hamburger menu" in their titlebars (incl. Avidemux Qt5) so this isn't helpful.
QuotePlease post lspci -nnk
This is what you're probably looking for:
0000:00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] [8086:46a6] (rev 0c) (prog-if 00 [VGA controller])
<snip 'cause of the stupid anti-spam>
Kernel driver in use: xe
Kernel modules: i915, xe
I'm a kernel developer and using Linus' latest master (so post 6.13) and forcing use of the "xe" graphics driver. I'll reboot back into i915 and see if the issue still exists.
But FWIW, the Mesa on Kubuntu 24.10 reports "MESA: warning: Support for this platform is experimental with Xe KMD, bug reports may be ignored" but so far, most things (compositing, vlc, mpv (the latter two using LibVA for sure), etc.) seem to be working OK.
My apologies for the pain of having to work around CleanTalk weirdness.
Quote from: kennethrc on January 24, 2025, 11:46:41 PMall the rest of my applications have the "hamburger menu" in their titlebars (incl. Avidemux Qt5) so this isn't helpful.
These search results might be helpful for the sole task of removing global menu, nothing else. If you wish to work on making Avidemux compatible with the global menu implementation you are using without introducing major changes to all other platforms and environments, this would be great, of course. I personally use neither KDE nor global menu voluntarily, please don't count on me for doing this work.
Quote from: kennethrc on January 25, 2025, 12:16:59 AMThis is what you're probably looking for:
0000:00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] [8086:46a6] (rev 0c) (prog-if 00 [VGA controller])
<snip 'cause of the stupid anti-spam>
Kernel driver in use: xe
Kernel modules: i915, xe
Yes, thanks.
mpv defaults to
--vo=gpu amounting to OpenGL renderer, needs
--vo=vaapi to force the libva path.
Quote from: eumagga0x2a on January 25, 2025, 04:43:54 PM... please don't count on me for doing this work.
Oh, of course not, plus the Qt5 variant has a working hamburger menu for me, so gives me what I need.
Quotempv defaults to --vo=gpu amounting to OpenGL renderer
Perhaps, but not necessarily in version "0.38.0":
mpv /home/kenny/Dropbox/MiscFiles/20170429_152208.mp4
(+) Video --vid=1 (*) (h264 1920x1080 59.868fps)
(+) Audio --aid=1 --alang=eng (*) (aac 2ch 48000Hz)
MESA: warning: Support for this platform is experimental with Xe KMD, bug reports may be ignored.
Using hardware decoding (vaapi).
AO: [pipewire] 48000Hz stereo 2ch floatp
VO: [gpu] 1920x1080 vaapi[nv12]
AV: 00:00:14 / 00:00:42 (35%) A-V: 0.000 Dropped: 1
Exiting... (Quit)
Some time in the next few days I'll try the LibVA render with the "i915" kernel driver (vs. "xe") and see if the rendering window works.
--vo=vaapi is totally broken on Skylake with mpv 0.39 on Fedora 41. OpenGL/VA-API interop via --vo=gpu works, the "LibVA" display in Avidemux works fine too. I would need to purchase new hardware to explore our chances with more recent Intel processors.
The Xe Linux kernel driver is likely the wildcard here for my Qt5 rendering screen issue; it's technically not supported (?yet ?) for my particular AlderLake GPU so I have to force it on manually (vs the i915 that is natively supported).
... and thank you for your support of Avidemux, I use it at least once a month. Do you have a donate link?
I switched the kernel driver back to "i915" from "xe" and indeed, LibVA works again in the rendering panel.
I did a typescript of the run, maybe this is helpful to help fix it? I'm seeing a bunch of these:
displayXError^[[m] LibVA Error : <vaPutSurface ( ADM_coreLibVA::display, img->surface, (Drawable)widget, 0, 0, sourceWidth, sourceHeight, 0, 0, displayWidth, displayHeight, NULL,0 ,0):resource allocation failed:2>
Thank you very much for the log, it is always helpful to have a fuller picture. The lines
08:00:12-558 [admLibVA::init] VA 1.22, Vendor = Intel iHD driver for Intel(R) Gen Graphics - 24.3.4 ()
08:00:12-558 [admLibVA::init] The driver has been reported to crash in vaPutImage.
08:00:12-558 [checkSupportedFunctionsAndImageFormat] Driver can crash on upload from YV12 VAImage to hw surface, skipping YV12 indirect transfer check.
remind me of the past (and present) pains ;D
...at least on my part, no financial interests involved and no donations sought for or even possible, but thank you for asking.