Any plans to support ARM for the next release?
Avidemux runs natively on ARM/Linux, albeit with limitations due to assembly in Avidemux itself (not in bundled libraries) being x86-only. There are no official builds, that's all. However, it is very uncertain whether any development will happen targeting ARM/macOS.
Would love to see ARM support on the Mac.
I tried to compile it but failed, I've replaced the built in ffmpeg with the one bundled with Homebrew, and then figured out how to use Homebrew's libav, but then had some more issues with the build using x86 instead of ARM (seems to be hardcoded somewhere) - and gave up on it, was too time consuming.
Quote from: Barbarossa on February 23, 2021, 02:11:53 PMI tried to compile it but failed
What was the exact error message? Did you change MACOSX_DEPLOYMENT_TARGET, currently hardcoded in bootStrapOsx_Catalina.bash to Catalina (10.15) to the default value as reported by
xcrun --sdk macosx --show-sdk-version
?
Quote from: Barbarossa on February 23, 2021, 02:11:53 PMI've replaced the built in ffmpeg with the one bundled with Homebrew
I really wonder how you accomplished that as Avidemux relies on a patched version to access some useful private functions.
Since this topic has not been updated in several months let me ask, has there been any progress on creating an official build for Apple Silicon? I ask because the Mac I have been using might be starting to have hardware issues (all I know for sure is that it has been freezing up and crashing a lot lately), and I have no idea how to compile Avidemux or anything else on a Mac. So basically what I am taking away from this thread is that if I were to get a new Mac with Apple Silicon I would no longer be able to use Avidemux, unless something has changed since February. Is that correct, or am I missing something here? How about running a current Apple version of Avidemux using Rosetta, does that work well or are there issues with that?
Quote from: Who on June 19, 2021, 07:48:40 PMhas there been any progress on creating an official build for Apple Silicon?
I would claim with a high degree of certainty that official native builds for Apple Silicon are technically impossible, at least for now.
The only Apple hardware I own is a 2016 MBP which has proven pretty useful during the pandemic for Zoom meetings. It is also my only device to test Avidemux on Windows 10. As long as it works, it works. No strategy exists for the case of a hardware failure yet, I personally don't depend on any software which is macOS-only.
Quote from: Who on June 19, 2021, 07:48:40 PMHow about running a current Apple version of Avidemux using Rosetta
I hope very much that it will work, at least in some basic way (not sure that OpenGL will work, the same for VideoToolbox).
Quote from: Who on June 19, 2021, 07:48:40 PMdoes that work well or are there issues with that?
I'm entirely dependent on feedback from Avidemux users who have Apple Silicon hardware. There hasn't been any so far.
Quote from: eumagga0x2a on June 19, 2021, 10:59:10 PMQuote from: Who on June 19, 2021, 07:48:40 PMhas there been any progress on creating an official build for Apple Silicon?
I would claim with a high degree of certainty that official native builds for Apple Silicon are technically impossible, at least for now.
The only Apple hardware I own is a 2016 MBP which has proven pretty useful during the pandemic for Zoom meetings. It is also my only device to test Avidemux on Windows 10. As long as it works, it works. No strategy exists for the case of a hardware failure yet, I personally don't depend on any software which is macOS-only.
Quote from: Who on June 19, 2021, 07:48:40 PMHow about running a current Apple version of Avidemux using Rosetta
I hope very much that it will work, at least in some basic way (not sure that OpenGL will work, the same for VideoToolbox).
Quote from: Who on June 19, 2021, 07:48:40 PMdoes that work well or are there issues with that?
I'm entirely dependent on feedback from Avidemux users who have Apple Silicon hardware. There hasn't been any so far.
Silicon user here (cheapest Macbook Air). Found this thread today while searching about compatibility.
Installed it and it seems to be working fine for me. But, I'm a very simplistic user, so YMMV.
Thanks for a great program!
Could you please check that OpenGL (video display: "QtGl") and the hardware accelerated video decoding ("VideoToolbox") for H.264 / HEVC video tracks work?
Quote from: eumagga0x2a on June 27, 2021, 07:54:53 AMCould you please check that OpenGL (video display: "QtGl") and the hardware accelerated video decoding ("VideoToolbox") for H.264 / HEVC video tracks work?
I recently also upgraded my Mac to Apple Silicon. Rosetta2 actually works pretty well. So to answer you question, I set:
Display
-> Video display: OpenGL
-> Guid Rendering Options: Checked Enable openGl support
HW Accel:
-> Checked Decode video using VideoToolbox
Everything works fine with a sample MP4 file.
Hello,
i like avidemux, is there any updates regarding native apple silicon support?
Thanks
I didn't check that it still builds for a while, but in principle, you should be able to compile and run it as long as you don't try to create a self-contained app bundle (pass --nopkg as option to bootStrapMacOS_Monterey.arm64.sh).
No work has been put into solving the issue of inability to run self-contained app bundle due to invalidated signatures of fixed up Homebrew libraries, thus no proper packaging and no distribution possible.
The performance of a native build on a M1 Mac Mini was formidable last time I checked.
Just to save you a big head-scratching moment when trying to compile Avidemux on macOS/arm64: Avidemux source and build directories must be located on a case-sensitive filesystem. By default, Apple creates APFS volumes in case-insensitive mode. You will need to create a new, case-sensitive one, e.g. as a subvolume and only then clone the source etc.
Hello Folks,
since they have been successfull builds, can we have a compiled version for uns normal mortals ? ;D
Nice Weekend,
Thanks trigger2k3
Quote from: trigger2k23 on August 05, 2023, 11:59:41 AMsince they have been successfull builds
Actually, build has turned out to be broken on Ventura with the current MacOS SDK so that it is necessary to request an older one as far as such a SDK is present on the system. Again, creation of an app bundle is not possible (yet).
Quote from: trigger2k23 on August 05, 2023, 11:59:41 AMcan we have a compiled version for uns normal mortals ?
No app bundles – no compiled distributable versions no matter whether normal or abnormal mortals.
Hi eumagga0x2a,
any updates if a build is possible ? BTW, when i choose
HW Accel:
-> Checked Decode video using VideoToolbox
then runs at least the decoding part native ?
Cheers
Quote from: trigger2k23 on October 23, 2023, 02:52:53 PMany updates if a build is possible ?
Nope, no solution yet for build with SDK > 12.3. App bundle creation is broken too, at least on Sonoma arm64 (this is new), it fails due to some dependencies not resolved. This is all even before the question of code signing can arise. If I am not mistaken, with all these issues resolved, a user who has downloaded Avidemux for macOS arm64 app (unsure about disk image) would need to sign it ad hoc to be able to run it:
codesign --force --deep -s - ThePathToAvidemuxAppBundle.app
AFAIK this would be the best possible scenario.
Quote from: trigger2k23 on October 23, 2023, 02:52:53 PMwhen i choose
HW Accel:
-> Checked Decode video using VideoToolbox
then runs at least the decoding part native ?
Whatever happens inside the graphics driver and the intermediate layer, that exposes the VideoToolbox interface to applications, runs natively, of course.
Build with SDK >= 13 has been fixed while app bundle creation turns out to be working now (currently on Sonoma with MacOS SDK 14). Manually ad hoc signing bundled frameworks post-installation results in a working Avidemux build.
On Sonoma 14.1.1 on an M1 Max Macbook I made a APFS (case-sensitive) volume via Disk Utility then built avidemux as follows:
cd /Volumes/sourcecode
git clone https://github.com/mean00/avidemux2.git
cd /Volumes/sourcecode/avidemux2
git rev-parse HEAD
88e745f0af2457a007c805fa8dfd55cf12cb9109
git submodule update --init --recursive
brew install cmake nasm yasm qt xvid x264 x265 libvpx aom opus fdk-aac lame libass mp4v2 a52dec
bash bootStrapMacOS_Monterey.arm64.sh
CPack: - package: /Volumes/sourcecode/avidemux2/installer/Avidemux 2.8.2 Qt6 231209-19h08m_88e745f0af2.dmg generated.
** ALL DONE **
sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
I am getting this error when signing:
sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
/Applications/Avidemux_2.8.2.app/Contents/MacOS/Avidemux2.8: bundle format unrecognized, invalid, or unsuitable
In subcomponent: /Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtDBus.framework
Or if I try this:
codesign --force --deep -s - /Applications/Avidemux_2.8.2.app
I get either:
/Applications/Avidemux_2.8.2.app: replacing existing signature
/Applications/Avidemux_2.8.2.app: bundle format unrecognized, invalid, or unsuitable
In subcomponent: /Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtGui.framework
or
/Applications/Avidemux_2.8.2.app: replacing existing signature
/Applications/Avidemux_2.8.2.app: bundle format unrecognized, invalid, or unsuitable
In subcomponent: /Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtDBus.framework
The spam filter blocked me from saying all of this in a single message.
Quote from: darren on December 10, 2023, 02:15:22 AMCPack: - package: /Volumes/sourcecode/avidemux2/installer/Avidemux 2.8.2 Qt6 231209-19h08m_88e745f0af2.dmg generated.
** ALL DONE **
sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
Just to be sure, did you install the generated app bundle prior to running the code signing script? I cannot reproduce your results, the application can be subsequently launched and operated normally. The output of the code signing script begins with
% sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtCore.framework/Versions/A/QtCore: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtDBus.framework/Versions/A/QtDBus: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtGui.framework/Versions/A/QtGui: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtNetwork.framework/Versions/A/QtNetwork: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtOpenGL.framework/Versions/A/QtOpenGL: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtOpenGLWidgets.framework/Versions/A/QtOpenGLWidgets: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/QtWidgets.framework/Versions/A/QtWidgets: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms/libqcocoa.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms/libqminimal.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms/libqoffscreen.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/PlugIns/styles/libqmacstyle.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM6avcodec.60.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM6avformat.60.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM6avutil.58.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM6postproc.57.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM6swscale.7.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_UIQT66.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_UI_Cli6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_audioParser6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_core6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreAudio6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreAudioDevice6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreAudioEncoder6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreAudioFilterAPI6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreDemuxer6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreDemuxerMpeg6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreImage6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreImageLoader6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreJobs.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreMuxer6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreScript.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreSocket6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreSqlLight3.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreSubtitles6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreUI6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreUtils6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreVideoCodec6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreVideoEncoder6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_coreVideoFilter6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_openGLQT66.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_render6_QT6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libADM_render6_cli.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libX11.6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libXau.6.0.0.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libXau.6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libXdmcp.6.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/liba52.0.dylib: replacing existing signature
/Applications/Avidemux_2.8.2.app/Contents/Frameworks/libaom.3.7.0.dylib: replacing existing signature
(The complete output is too long to be posted inline).
Quote from: darren on December 10, 2023, 02:25:21 AMOr if I try this:
codesign --force --deep -s - /Applications/Avidemux_2.8.2.app
This is not going to work and is precisely the reason the signing script has been created.
Thanks! So that fixed the code-signing issue for me.
But unfortunately, now something else is wrong.
It breaks with Abort trap 6.
When you run it from the command line you get a bit more information:
/Applications/Avidemux_2.8.2.app/Contents/MacOS/Avidemux2.8
qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in ""
I look around and see some strange symlinks:
ls -l /Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms
lrwxr-xr-x /Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms -> ../../../Cellar/qt/6.6.0/share/qt/plugins/platforms
Those symlinks don't point to an extant directory. I do have similar stuff in homebrew's directories:
ls /opt/homebrew/opt/qt@6/share/qt/plugins/platforms
libqcocoa.dylib libqminimal.dylib libqoffscreen.dylib
How best to build for Apple Silicon MacOS Sonoma?
On my M1 Mac mini / Sonoma:
% ls -l /Applications/Avidemux_2.8.2.app/Contents/PlugIns/platforms
total 2680
-rwxr-xr-x 1 username admin 1082832 10 Dez 13:46 libqcocoa.dylib
-rwxr-xr-x 1 username admin 107680 10 Dez 13:46 libqminimal.dylib
-rwxr-xr-x 1 username admin 173776 10 Dez 13:46 libqoffscreen.dylib
On your system, the app bundle hasn't been fixed up properly, this is why you have symlinks pointing to the original location of the library. Have you installed Xcode or are trying to build Avidemux with CLT only?
In case someone wants to just download a build and they trust random people on the internet, here's my unofficial build of Avidemux 2.8.1 for AArch64: https://drive.google.com/file/d/1zj6buE9ls13nJUz08jZ2iJZQrImsCCl3
I hope it's fine to post this, I couldn't find any forum rules anywhere.
Note that you can of course use the official x86-64 build instead.
Trust issues notwithstanding, I think that building and distributing anything older than the latest git master is wasted effort.
Just to say I had success building on an M1 mini running Sonoma 14.3.1 with XCode 15.2 using the instructions above, with git master (2.8.2) and brew as of 16th Feb.
First I created a case-sensitive volume, then using the process in Darren's post 18 above:
cd /Volumes/Developer
git clone https://github.com/mean00/avidemux2.git
cd /Volumes/Developer/avidemux2
git submodule update --init --recursive
brew install cmake nasm yasm qt xvid x264 x265 libvpx aom opus fdk-aac lame libass mp4v2 a52dec
bash bootStrapMacOS_Monterey.arm64.sh
Then open the dmg, and install the app to /Applications, and finally run the signing script.
sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
Thanks everyone that's worked on this!
Quote from: macvided on February 16, 2024, 12:25:58 PMI had success building on an M1 mini running Sonoma 14.3.1 with XCode 15.2 using the instructions above, with git master (2.8.2) and brew as of 16th Feb.
The confirmation that the build is currently not broken is much appreciated, thank you.
I have an M2 Mac Studio running Sonoma 14.5 (23F79), and when I try to use the VideoToolbox encoders now with the official version 2.8.1, I always get the error "Cannot set up encoder. The configuration supplied to the encoder may be incompatible or the encoder may depend on features unavailable on this system" whenever I attempt to Save Video.
I tried the unofficial build of Avidemux 2.8.1 for AArch64 posted by kadiwa, and that version did allow me to use VideoToolbox encoders on my M2 Mac Studio.
I think I recall using VideoToolbox encoders successfully on my M2 Mac Studio either with a previous version of Avidemux, or when I was running Ventura on the Mac. Either way, it was some time ago, so I'm not sure what changed between when it worked and now, but it would be great to get the VideoToolbox encoders working again. In particular, saves with the VideoToolbox HECV encoder are dramatically faster than the HEVC (x265) encoder.
No longer building, with this happening
-- COMMAND ln -sf Resources/lib . COMMENT mklink Resources/lib -> ., pwd=/Volumes/SABRENT/avidemux2/installer/Avidemux-2.8.2.app/Contents/
-- * Copying plugins *
CMake Error at CMakeLists.txt:64 (FILE):
FILE COPY cannot find "/opt/homebrew/share/qt/plugins
platforms": No such file or directory.
Must have been fallout from https://github.com/mean00/avidemux2/commit/7df63b563ae89984169effca1c68964e574adee1 (https://github.com/mean00/avidemux2/commit/7df63b563ae89984169effca1c68964e574adee1), now fixed (https://github.com/mean00/avidemux2/commit/1759d5663e4b26443407a58ca05f4813c9a1462c).
Thank you very much for your report.
Installed Command Line tools, Homebrew...
I followed Macvided's example above and was able to compile and run Avidemux on my M1 Mac Studio, but with OpenGL as the setting for Display->Video Display, all I get is a blank screen for the video. If I set Video Display to QT it displays the video correctly. The audio displays fine with either setting.
What did I miss?
Thanks,
OpenGL display is broken with Qt6 >= 6.4.0, no idea how to fix yet. For macOS where using older Qt, especially Qt5, is impossible, the unaccelerated "Qt" / "RGB" display the only remaining option.
By the way, this is also the reason there is no 2.8.2 release.
I had to also install pkgconf with homebrew before compiling.
HOMEBREW PKGCONF (https://formulae.brew.sh/formula/pkgconf)
Quote from: macvided on February 16, 2024, 12:25:58 PMJust to say I had success building on an M1 mini running Sonoma 14.3.1 with XCode 15.2 using the instructions above, with git master (2.8.2) and brew as of 16th Feb.
First I created a case-sensitive volume, then using the process in Darren's post 18 above:
cd /Volumes/Developer
git clone https://github.com/mean00/avidemux2.git
cd /Volumes/Developer/avidemux2
git submodule update --init --recursive
brew install cmake nasm yasm qt xvid x264 x265 libvpx aom opus fdk-aac lame libass mp4v2 a52dec
bash bootStrapMacOS_Monterey.arm64.sh
Then open the dmg, and install the app to /Applications, and finally run the signing script.
sh avidemux/osxInstaller/macos-adhoc-sign-installed-app.sh
Thanks everyone that's worked on this!
No need to run signing script manually, it is invoked automatically during packaging now.
Will look into pkg-config not installed automatically and thus missing in the list of dependencies.
Quote from: eumagga0x2a on November 26, 2024, 09:44:04 PMOpenGL display is broken with Qt6 >= 6.4.0, no idea how to fix yet.
Fixed by this commit (https://github.com/mean00/avidemux2/commit/cb371856d1db1b1ce0b2eea875f8a8ce288ac125), haven't noticed any performance degradation on macOS. Please pull the latest changes into your local git clone and redo the build, OpenGL display should be fine now.
Quote from: eumagga0x2a on December 08, 2024, 11:31:28 PMFixed by this commit (https://github.com/mean00/avidemux2/commit/cb371856d1db1b1ce0b2eea875f8a8ce288ac125), haven't noticed any performance degradation on macOS. Please pull the latest changes into your local git clone and redo the build, OpenGL display should be fine now.
Yep, works! Thank you!