[HW Accel Support]: VAAPI Hardware Acceleration Failing on Intel J4125 post upgrade to v0.17 #22198
-
Describe the problem you are havingOn version 0.16.4 acceleration was working properly with low CPU 30-40% usage and 20-30% GPU usage on my intel Gemini Lake (Gen9) J4125. I am running Frigate in a Docker container (as an Application) as part of the TrueNAS OS (Debian Bookworm / 6.12.33 kernel). Post upgrading, same configuration, CPU usage is 100% and GPU is 0%. I was using i965 driver with general ffmpeg hwaccel_args: preset-vaapi. The Vaapi seems to not work also if changing the driver to iHD. Acceleration is somewhat restored if using the preset-intel-qsv-h264 preset but with about 60-70% CPU load. Is intel VAAPI no longer working in 0.17 version ? although it is still recommended in the documentation, perhaps something I'm missing. Version0.17 Frigate config fileenvironment_vars:
LIBVA_DRIVER_NAME: i965
# LIBVA_DRIVER_NAME: iHD
ffmpeg:
# hwaccel_args: preset-intel-qsv-h264
hwaccel_args: preset-vaapi
input_args: -avoid_negative_ts make_zero -analyzeduration 2147483647
-probesize 2147483647 -fflags +genpts+discardcorrupt -rtsp_transport tcp
-timeout 5000000 -buffer_size 10000000 -use_wallclock_as_timestamps 1
output_args:
record: -ss 40 -f segment -segment_time 30 -segment_format mp4
-reset_timestamps 1 -strftime 1 -threads 4 -c:v copy -c:a aac -profile:a
aac_low -b:a 64kdocker-compose file or Docker CLI commandUsing the container as TrueNAS App, no docker-compose.Relevant Frigate log output2026-03-01 09:41:22.862450177 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831137, current: 831042; changing to 831138. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.862740827 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831138, current: 831107; changing to 831139. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.863024777 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831201, current: 831122; changing to 831202. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.866770619 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aac @ 0x55b95edc5580] Queue input is backward in time
2026-03-01 09:41:22.877007087 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831245, current: 831163; changing to 831246. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.877595254 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [in#0/rtsp @ 0x55b95ed8c540] Error during demuxing: Connection timed out
2026-03-01 09:41:22.879473242 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aac @ 0x55b95edc5580] Queue input is backward in time
2026-03-01 09:41:22.880132545 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831328, current: 831281; changing to 831329. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.880913216 [2026-03-01 11:41:22] ffmpeg.Curte_Spate.detect ERROR : [aost#0:1/aac @ 0x55b95edc14c0] Non-monotonic DTS; previous: 831424, current: 831329; changing to 831425. This may result in incorrect timestamps in the output file.
2026-03-01 09:41:22.881509166 [2026-03-01 11:41:22] watchdog.Curte_Spate INFO : Restarting ffmpeg...
2026-03-01 09:42:00.736878646 [2026-03-01 11:42:00] frigate.video ERROR : Curte_Fata_2: Unable to read frames from ffmpeg process.
2026-03-01 09:42:00.740689671 [2026-03-01 11:42:00] frigate.video ERROR : Curte_Fata_2: ffmpeg process is not running. exiting capture thread...
2026-03-01 09:42:02.185042518 [2026-03-01 11:42:02] watchdog.Curte_Fata_2 ERROR : Ffmpeg process crashed unexpectedly for Curte_Fata_2.
2026-03-01 09:42:02.186156798 [2026-03-01 11:42:02] watchdog.Curte_Fata_2 ERROR : The following ffmpeg logs include the last 100 lines prior to exit.
2026-03-01 09:42:02.186918961 [2026-03-01 11:42:02] ffmpeg.Curte_Fata_2.detect ERROR : [aac @ 0x558265b406c0] Too many bits 8192.000000 > 6144 per frame requested, clamping to max
2026-03-01 09:42:02.194944785 [2026-03-01 11:42:02] watchdog.Curte_Fata_2 INFO : Restarting ffmpeg...Relevant go2rtc log outputNo errorsFFprobe output from your cameraStream 1
Video:
Codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
Resolution: 2592x1944 (4/3 aspect ratio)
FPS: 15/1
Audio:
Codec: PCM A-law / G.711 A-lawInstall methodDocker Compose Object DetectorCoral Network connectionWired Camera make and modelMisecu x 4 5MP / Asecam x 2 8MP. PoE enabled. Screenshots of the Frigate UI's System metrics pagesAny other information that may be helpfulNo response |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
|
Based on the symptoms you're describing—VAAPI hardware acceleration working in v0.16.4 but failing in v0.17 with 100% CPU usage and 0% GPU usage on your Intel J4125 (Gemini Lake/Gen9)—there are several troubleshooting steps to consider(1). Hardware Acceleration ConfigurationHardware acceleration is critical for reducing CPU usage when decoding video streams(1). The Your Intel J4125 has Gen9 graphics, which should support VAAPI. However, the driver selection matters:
Since you've tried both Troubleshooting Steps
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
This will confirm if VAAPI is properly detected and which driver is active.
Configuration RecommendationFor Intel integrated GPUs, the standard configuration should be(2): ffmpeg:
hwaccel_args: preset-vaapiWith the device mapping: devices:
- /dev/dri/renderD128:/dev/dri/renderD128Potential v0.17 ChangesWhile the documentation still recommends VAAPI for Intel hardware(1)(2), there may have been underlying FFmpeg version changes between v0.16.4 and v0.17 that affect VAAPI compatibility with Gen9 graphics. Next Steps
The fact that QSV partially works confirms your hardware is capable—the issue appears specific to the VAAPI code path in v0.17. 📚 Sources: Have another question? Just tag @inkeep. |
Beta Was this translation helpful? Give feedback.
-
|
vainfo seems to show that the iHD driver is loaded even though LIBVA_DRIVER_NAME: i965 is added to frigate config environment_vars section. |
Beta Was this translation helpful? Give feedback.


vainfo seems to show that the iHD driver is loaded even though LIBVA_DRIVER_NAME: i965 is added to frigate config environment_vars section.
LE: seems the solution is to add the environment variable "LIBVA_DRIVER_NAME: value" directly in the container definition / docker compose, as it no longer works while defined in Frigate config (bug? @blakeblackshear ). I know this option was intended to work for the Frigate HA addon, but this worked for rest of deployments in 0.16x versions. For J4125 CPU and GPU the combination of i965 + preset-vaapi works best, and given the i965 driver was not getting loaded, and instead only iHD (default driver) was loaded, it was not functioning properly. preset…