Skip to content

feat(qsv): optional client image with Quick Sync / VAAPI-capable FFmpeg #611

Description

@cursor

Goal

Ship an optional StreamDL client image variant whose FFmpeg can use Intel Quick Sync and/or VAAPI when /dev/dri is passed through.

Context

Parent epic: #452
Depends on: #610 (Phase 1 — /dev/dri passthrough docs/compose)

Today Dockerfile.client copies binaries from mwader/static-ffmpeg, which cannot use QSV/VAAPI. Device passthrough alone is insufficient.

Note: Prefer this issue over earlier duplicate drafts (#606, #608) if those remain open — this token cannot close them.

Scope

  • Add an optional image tag (recommended: client_*-qsv or similar) based on a distro image with Intel media stack + FFmpeg (qsv and/or vaapi in ffmpeg -hwaccels)
  • Keep the current static-FFmpeg client as the default
  • Document how to pull/run the QSV variant with /dev/dri
  • Document using existing FFMPEG_EXTRA_INPUT_OPTS / FFMPEG_EXTRA_OUTPUT_OPTS and/or post_script for a working encode path
  • Manual verification checklist on Intel hardware (CI runners typically lack iGPU)

Out of scope

  • Replacing the default static client for everyone
  • First-class StreamDL hwaccel presets (follow-up)
  • NVIDIA NVENC / AMD AMF

Depends on

Acceptance

  • Optional published client image where ffmpeg -hide_banner -hwaccels lists qsv and/or vaapi
  • Default client image unchanged
  • Docs for running with /dev/dri + at least one working encode example (in-process EXTRA opts or post_script)
  • Clear failure notes when device/drivers are missing

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions