Drop CUDA support from FFmpeg build — only Intel QSV/VAAPI needed #2

Open
opened 2026-02-27 23:50:03 +01:00 by timothy · 0 comments
Owner

Background

The upstream FFmpeg build includes NVIDIA CUDA/NVENC support (CUDA toolkit, nv-codec-headers). Jazz has no NVIDIA GPU — it only has Intel integrated graphics, so we only need Intel QSV (Quick Sync Video) and VAAPI for hardware transcoding.

Why this matters

  • The CUDA toolkit is one of the largest dependencies in the build (~5-10GB during build stage)
  • Removing it would significantly reduce build time and image size
  • Less attack surface and fewer dependencies to maintain

Tasks

  • Audit the Dockerfile to identify all CUDA/NVIDIA-related build steps and libraries
  • Remove CUDA toolkit, nv-codec-headers, and any NVIDIA-specific configure flags
  • Verify Intel VAAPI and QSV support is retained (libva, intel-media-driver, libvpl/libmfx)
  • Test that ErsatzTV hardware transcoding still works with the trimmed image
  • Document the removed components so we know what to re-add if NVIDIA hardware is ever introduced
## Background The upstream FFmpeg build includes NVIDIA CUDA/NVENC support (CUDA toolkit, nv-codec-headers). Jazz has no NVIDIA GPU — it only has Intel integrated graphics, so we only need Intel QSV (Quick Sync Video) and VAAPI for hardware transcoding. ## Why this matters - The CUDA toolkit is one of the largest dependencies in the build (~5-10GB during build stage) - Removing it would significantly reduce build time and image size - Less attack surface and fewer dependencies to maintain ## Tasks - [ ] Audit the Dockerfile to identify all CUDA/NVIDIA-related build steps and libraries - [ ] Remove CUDA toolkit, nv-codec-headers, and any NVIDIA-specific configure flags - [ ] Verify Intel VAAPI and QSV support is retained (libva, intel-media-driver, libvpl/libmfx) - [ ] Test that ErsatzTV hardware transcoding still works with the trimmed image - [ ] Document the removed components so we know what to re-add if NVIDIA hardware is ever introduced
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: timothy/ersatztv-ffmpeg#2