Need help getting hardware encoding working intel nuc 8i5

Hello, I have severl pc’s I have been trying to get hardware encoding to work, 1 nuc 1 beelink same chipset and a older dell laptop.
None of them will seem to work.
I think at this point I need to concentrate on the nuc,
I tried the drives listed but they will not install as nuc has the iris plus 655 and its not installing the drivers.
I tried 3 of the 27 drivers from intel, and none will use qsv they fall back to ffmpeg, and seem to be cpu.

I am trying to switch over to hevc h265 for my ts streems recorded from tvheadend ota.
I am unsure what to do at this point I have been running mcebuddy for quite a wile, but now I have a bigger tv and want higher quality encodes, the need for the hardware encoding is apparent.
2022 Winter Olympics E191.Biathlon, Cross-Country 2022-02-16.ts-Convert to MP4-2022-02-16T17-06-56.log (5.8 MB)

i am currently on latest beta version but ill do anything to get it working.
thanks anyone

According to your logs it’s using hardware encoding for hevc encoding. You cancelled the conversion at the end

2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Stream #0:0: Video: hevc (hevc_qsv) (hvc1 / 0x31637668), nv12, 1920x1072 [SAR 1:1 DAR 120:67], q=2-31, 1000 kb/s, 29.97 fps, 30k tbn, 29.97 tbc
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Metadata:
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → encoder : Lavc58.59.100 hevc_qsv
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Side data:
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → cpb: bitrate max/min/avg: 0/0/1000000 buffer size: 0 vbv_delay: N/A
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 160 kb/s
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Metadata:
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → encoder : Lavc58.59.100 aac
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Stream #0:2(spa): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 160 kb/s
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → Metadata:
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → encoder : Lavc58.59.100 aac
2022-02-16T17:27:42 MCEBuddy.AppWrapper.FFmpeg → frame= 30 fps=0.0 q=-0.0 size= 0kB time=00:00:01.00 bitrate= 0.4kbits/s dup=25 drop=0 speed=1.94x
2022-02-16T17:27:43 MCEBuddy.AppWrapper.FFmpeg → frame= 58 fps= 56 q=-0.0 size= 768kB time=00:00:01.89 bitrate=3313.8kbits/s dup=31 drop=0 speed=1.84x

Here are my intel HEVC MKV profiles I use on my NUC. One uses ffmpeg and the other Handbrake. Personally I feel like I get better results with the Handbrake one.

[HEVC MKV Intel handbrake]
Description=HEVC in MKV to use Intel hardware encoding in Handbrake.
order=handbrake
DisableEncoderReordering=true
AllowAllCopyRemuxing=true
handbrake-UsingHardwareEncoding=true
handbrake-DisableSoftwareEncoderFallback=true
handbrake-general=-v=2
handbrake-video=--comb-detect=Default --decomb=Default --auto-anamorphic -e qsv_h265 --encoder-preset quality -q 26 --cfr
handbrake-audio=-E copy --audio-copy-mask ac3,eac3,truehd,dts,dtshd,mp3,flac --audio-fallback ffac3 -R auto
handbrake-audioac3=-E copy -R auto
handbrake-ext=.mkv
handbrake-audiodelay=skip

[HEVC MKV Intel ffmpeg]
Description=HEVC in MKV to use Intel hardware encoding in ffmpeg.
order=ffmpeg
DisableEncoderReordering=true
AllowAllCopyRemuxing=true
ffmpeg-UsingHardwareEncoding=true
ffmpeg-DisableSoftwareEncoderFallback=true
ffmpeg-general=-threads 0 -v verbose -hwaccel qsv
ffmpeg-video=-vf yadif=0:-1:1,hqdn3d -pix_fmt qsv -c:v hevc_qsv -preset slow -global_quality 26 -look_ahead 32 -vsync 2 -map 0:v -sn
ffmpeg-audio=-c:a copy -map 0:a
ffmpeg-audioac3=-c:a copy -map 0:a
ffmpeg-ext=.mkv
ffmpeg-audiodelay=skip
1 Like

Thank you, so I copy these to my profiles config?
Thanks, Eric

OK, so it is using handbrake, and I am watching the gpu so it is using that, I am getting about 30-35 fps, how can I increase the speed. I really appreciate your help, it is already better than It was.
Should I only do 1 concurent? currently I have it set to 2 but for my testing I am running 1.

Thanks, Eric

Yes, i see that now, lol but its so slow. and it falls back to ffmpeg?
If I use the handbreak application it is much much faster, I guess thats why I thought it was not working.
I am trying to understand how to speed it up. and why Handbreak fails
Thanks, Eric

Yes, these go into your profiles.conf

I recommend only running 1. I get about 30-35 fps on mine also. With all the testing I did it’s the best I was able to get. You can try the ffmpeg profile and see if it is faster. Ensure that in the BIOS you’ve allocated as much memory as you can to the video. Mine only allowed max of 1GB. The only other thing you can adjust is the --encoder-preset parameter in the Handbrake config. Your options are quality, balanced or speed. Test these out, find your acceptable quality threshold and go with that preset. The other thing to play with is the -q parameter, you can try a higher number for lower quality. This affects speed a little but more affects file size output.

1 Like

NCIS_ Hawai’i S01E13.Spies, Part 2 2022-01-24.ts-Convert to MP4-2022-02-17T08-32-16.log (1.8 MB)

So I have seen why the handbrake is failing it is the quality setting in the hevc profile, if i remove the medium it works, however it still runs at 30-35 fps.
when it fails over to ffmpeg im getting 77 fps, better.
I set the ffmpeg to be first in the profile for now so it runs better, am i leaving something out? I see other nucs older than mine getting 120 or more.
is anything in the settings holding back the speed?
I still have to check the memory for the video, I am not home right now to physically check the bios.
Thanks, Eric

Correct, in Handbrake for Intel the quality settings are speed, balanced and quality for the HEVC encoder. Since medium (equivalent of balanced) doesn’t match a quality setting it will fail and move on to ffmpeg which does support medium as the quality setting. Since each application has it’s own settings for how it encodes, filters and processes video and audio I can’t tell you why in your case ffmpeg is faster or if it is even doing the equivalent of what Handbrake is attempting to do.

I can’t tell you why some NUCs are getting such good processing without knowing what parameters they are passing or which application they are using for processing. All I can tell you is that there are a lot of parameters to play with for both applications and you have to spend time finding which ones work best for you. Both applications have decent documentation and there is a lot of online content related to tweaking the parameters for the best result. It’s really an endless pursuit because you can have great results and feel like you finally have it locked in and a driver update can completely destroy it.

Of course, best result is subjective.

1 Like