This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

[INFO] Hybrid Optimized for M1 Macs?
#1
Hi!

I use both Windows and a M1 Mac Mini for video processing tasks. I primarily use my Windows desktops (all have 3000 RTX series cards along with 12th Gen i9 / Ryzen 9 5900 CPU's). I purchased a M1 Mac Mini last year to test our with Topaz Video Enhance AI (yeah, Hybrid does a better job but it is optimized for M1 Macs). I've searched through the forum and read a bunch of older posts that relate to this somewhat but still have some questions.

I have the latest public release version of Hybrid installed on my M1 Mac Mini and most every function in Hybrid runs at super slow speed compared to the Windows versions. Granted, I know the hardware specs on my Windows machines is faster and that the M1 stuff is ARM based and probably relying on Rosetta emulation layer to run Hybrid?

The questions I have are:

  • Is it expected for video processing tasks to run pretty slow on M1 hardware compared to Windows counterpart? Example: if I just do some basic QTGMC deinterlacing on a 22 minute 480p remuxed DVD file, it processes around 1-2fps where my Windows counterpart runs around 160+ fps processing the same file.
  • Are there any viable ML upscaling functionality on the Mac Hybrid version that work and/or process at a decent speed? I use Real ESRGAN in Hybrid on my Windows machines and with the 3000 series RTX cards, I can upscale a 22 minute animated episode from 480p to 1080p in about an hour or so. On the M1 Mac, most of the ML features don't work or super slow. I realize this is probably a limitation of what the developers of these 3rd party ML software support but didn't if there are recommended options? Most of the stuff I have seen only accepts image file inputs and not direct video for upscaling.
  • I realize you may have limitations on the Mac Hybrid development as I don't know what Apple hardware access you have for testing and development and can definitely limit your development and/or you just might not have that many current Mac users and not worth putting a bunch of development time in it for you.

I'm not complaining about the Mac Hybrid version as the Windows version works great for me and will continue using! It is nice to be able to offload longer video processing tasks to the M1 Mac since it uses a lot less electricity than my Windows desktop counterparts. I have a stack of old DVD's I'm wanting to clean up/upscale.  I did read this past week where Pytorch is officially supporting GPU usage/access for ML processing on the M1/ARM stuff now but not sure how long that will take to trickle down to the more "mainstream" app code.

I have no problem if the answer to all the above is yeah, you're better off using Windows to do the Hybrid stuff and the Mac Hybrid is optimized for the x86 architecture. More or less i wanted to make sure I'm not using Hybrid wrong on my M1 Mac Mini and/or get some sort of insight on the future development of Mac Hybrid releases.

I'm glad to help out with testing new versions/sending logs/info as needed on the Mac side! You've got the Windows Hybrid dialed in! 

As usual, I greatly appreciate the awesome Hybrid app and you taking the time to help/answer questions posted!  Smile
Reply
#2
About MacOS in general:
I don't own any Apple Hardware atm. and compile Hybrid in virtual machine. There is no Mac OS torchpy/ml addOn for Mac since support for mac OS is rather limited with the whole ml stuff and most developers around it don't use mac os. So incorporating anything around it usually requires times to test and adjust stuff to run on mac os.

Regarding M1 optimizations:
In general Qt itself does support M1, but as far as I know not all the tools Hybrid uses are available for. Especially all the Vapoursynth filters. As far as I know it might be possible to get some of the stuff through homebrew, but I have really no clue how optimized any of those are.

Conclusion:
Main reason there isn't much new around M1 support is that I don't own any Apple hardware and from what I gathered so far it's far easier to get most of the stuff properly working on x86 hardware.

So if you ask me I in general would recommand to use a Windows or Linux system for Video Filtering.


Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply
#3
MacBook M1 Max owner here. Running the Windows version via CrossOver (Wine with patches) is a factor of times faster than the Mac x64 version, even though there's supposedly one more emulation layer. QTGMC "Slow+bob" with a fast codec like FFVHuff flies with 110 FPS on Hi8 NTSC DV, only slightly slower than my i7-10750H laptop which pushes 160 FPS on the same task.
Reply
#4
Thanks for the info on both replies. I figured it would be the case with limited M1 development thus far for a lot of the apps/tools used in Hybrid. I thought I would still ask!  Smile

They did recently just announce GPU accelerated PyTorch support on M1's for training, so hopefully video/image processing is not far behind!

I did try Hybrid via Windows 11 ARM version via Parallels on my M1 Mac Mini recently and the performance with Hybrid was just beyond horrible. I'll give the Crossover solution a try after reading up on that some.

Thank you both for taking the time to reply!  Smile
Reply
#5
@potejan I installed the latest version of Crossover and tried installing Hybrid via Crossover but getting "out of memory" error at the beginning of the install attempt (I have 16gb RAM on my Mac Mini).

Any tips or info you may want to share on getting Hybrid installed via Crossover before I reach out on their forums for assistance?

Thanks in advance!
Reply
#6
Create an empty bottle in CrossOver. Install Hybrid on a real Windows computer or VM and copy over the files from Program Files into the bottle's Program Files. When you run Hybrid via CrossOver you will get "Running as admin, exiting" error, because CrossOver always run as admin and Hybrid doesn't like that. To fix, create ini file in Hybrid's folder with the `runAsAdmin=true` option as per here: https://forum.selur.net/thread-10.html

Good luck!
Reply
#7
NEWS: On macOS 13, CrossOver 22.0.1, h264 1080p video to QTGMC (Slow+bob) UT Video is actually faster (35fps) than my native Windows machine (32fps) mentioned in the previous post. Yes, you're reading this right, x64 to arm64 emulation on top of Windows to Mac API translation is faster than native! What a world to be alive.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)