Forum / NoMachine for Linux / Intel N100 Gen 12 and video acceleration
- This topic has 8 replies, 2 voices, and was last updated 4 months ago by sideeffect.
-
AuthorPosts
-
February 14, 2024 at 21:52 #47034sideeffectParticipant
Tested using Debian Bookworm and now Debian Sid.
Hello, Please help.
I have spent many days reading guides trying to get hardware acceleration working with NoMachine and my Alder Lake-N100 mini PC. I am starting to think that it is not possible. I am looking for confirmation that it can indeed work so I know if I should keep trying.
There is a lot of conflicting information around on the forum and the internet with configuration settings that just don’t work on Generation 12 and above CPU’s. For example most of the guides recommend installing Intel MediaSDK but that is not compatible with Generation 12 and so it won’t work and it just breaks VAAPI. The Intel Media Driver for VAAPI does work with Gen 12 but it seems there is no support for it in NoMachine.
What I have tried so far without success-
Installing Mediastack as recommended in Knowledge base.
Trying with intel-media-va-driver instead of non-free as suggested in Knowledge base.
Compiling installing the latest Intel MediaSDK.
Compiling and installing the latest Media driver and LibVa.
Compiling and installing oneVPL and oneVPL GPU Runtime and trying to tell it to use the MediaSDK compatibility mode.I am going around in circles a little bit but from what I can see
-if I install MediaSDK NoMachine tries to load /opt/intel/mediasdk/lib64/iHD_drv_video.so but hardware acceleration fails because MediaSDK doesn’t support Gen12.-If I don’t install MediaSDK NoMachine tries to load /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so but hardware acceleration fails because NoMachine doesn’t support VAAPI.
Perhaps the oneVPL method can work, but I don’t think so because NoMachine still wouldn’t want to use it.
Anyone got this to work? Any pointers?
February 20, 2024 at 11:44 #47095BritgirlKeymasterHi, can you send us the server side logs of that Intel machine? We just acquired one of those Intel machines and are also testing it, so we can advise better. It would be good to compare.
These are the instructions for the logs, send them to forum[at]nomachine[dot]com with the title of this topic as the subject of your email 🙂 https://kb.nomachine.com/DT07S00243
February 21, 2024 at 18:47 #47121sideeffectParticipantHi Britgirl, Sure I will send some logs soon. Cool little PC’s these are. Makes a great low power docker server and transcoder for Jellyfin. 🙂
I think the issue could be with ffmpeg. I am using latest build so I can use the newest MPV with Vulkan support and libplacebo tone mapping but newer ffmpeg builds use -libvpl and not -libmfx for Intel Quick sync. I don’t think it’s possible to build ffmpeg with both flags. I think libmfx is becoming deprecated.
I hope NoMachine can move towards supporting libvpl because it seems that going forward that will provide the best level of hardware acceleration support on new Intel CPU’s and it has legacy support for older CPU’s.
February 28, 2024 at 18:44 #47217BritgirlKeymasterWe’re still investigating. In the meantime, can you take a look at the following link and try the steps there? This will at least check that everything is functional (without NoMachine in the mix).
export LIBVA_DRIVER_NAME=iHD wget https://github.com/lu-zero/fate-samples/raw/master/h264-conformance/AUD_MW_E.264 # Decode H.264 video stream w/ maximum speed /usr/share/mfx/samples/sample_decode h264 -i AUD_MW_E.264 # Decode H.264 video stream and dump output YUV /usr/share/mfx/samples/sample_decode h264 -i AUD_MW_E.264 -o AUD_MW_E.yuv -i420 # You can verify the result comparing with the following checksum: # sha1sum AUD_MW_E.yuv e17a3f8cfeeeb1cc46218c3c797d24dd84e82b59 AUD_MW_E.yuv # Encode H.264 stream w/ Low Power encoder on gen9+ (skl+) /usr/share/mfx/samples/sample_encode h264 \ -w 176 -h 144 -f 30 -cqp -qpi 30 -qpp 30 -qpb 30 -qsv-ff \ -i AUD_MW_E.yuv -o encoded_AUD_MW_E.264
and tell us the outcome.
February 28, 2024 at 21:58 #47219sideeffectParticipantI don’t have mfx installed anymore because mfx is part of Intel Media SDK and Intel Media SDK doesn’t work with generation 12 or newer GPU’s. Intel Media SDK has been discontinued since 2022 and mfx is legacy.
Libmfx is deprecated and I think NoMachine needs to support libvpl or VA-API if it is to support hardware acceleration on newer Intel chips. When building FFmpeg you need to choose either libmfx or libvpl you can’t use both and libvpl is needed for OneVPL.
Libvpl and Onevpl are working perfectly fine on my system and I can use Quicksync in Handbrake or ffmpeg via VA-API or Vulkan. I tried hard to get mfx working and it just wouldn’t for me on this chip.
Hardware Quicksync FFmpeg – https://trac.ffmpeg.org/wiki/Hardware/QuickSync
March 27, 2024 at 10:11 #47546BritgirlKeymasterSupport for VA-API is planned and we are currently working on adding support for VPL
March 27, 2024 at 12:49 #47547BritgirlKeymasterSomething you can try on the fly: check in /usr/lib/x86_64-linux-gnu if you have libmfxhw64.so – if not please create a symbolic link to libmfxhw64.so.1 with:
cd /usr/lib/x86_64-linux-gnu/ sudo ln -s libmfxhw64.so.1 libmfxhw64.so
restart NoMachine and try again to see whether NoMachine uses Intel’s mfx hardware encoding.
July 16, 2024 at 16:12 #48812BritgirlKeymasterPlease try the latest 8.12 now that we’ve added support for Intel VPL.
July 16, 2024 at 19:42 #48834sideeffectParticipantThat’s great news I will test it out soon.
-
AuthorPosts
This topic was marked as solved, you can't post.