Software (CPU only):
docker run linuxserver/ffmpeg:7.1.1 \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-pix_fmt yuv420p \
-map 0:v:0 -f null - -benchmark -statsHardware-accelerated (iGPU QuickSync):
docker run --device /dev/dri/renderD128 linuxserver/ffmpeg:7.1.1 \
-hwaccel qsv \
-hwaccel_output_format qsv \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "hwdownload,format=nv12" -pix_fmt nv12 \
-map 0:v:0 -f null - -benchmark -statsSoftware:
docker run linuxserver/ffmpeg:7.1.1 \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "fps=2" -pix_fmt yuv420p \
-map 0:v:0 -f null - -benchmark -statsHardware-accelerated:
docker run --device /dev/dri/renderD128 linuxserver/ffmpeg:7.1.1 \
-hwaccel qsv \
-hwaccel_output_format qsv \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "vpp_qsv=framerate=2:format=nv12,hwdownload,format=nv12" -pix_fmt nv12 \
-map 0:v:0 -f null - -benchmark -statsSoftware:
docker run linuxserver/ffmpeg:7.1.1 \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "scale=960:540" -pix_fmt yuv420p \
-map 0:v:0 -f null - -benchmark -statsHardware-accelerated:
docker run --device /dev/dri/renderD128 linuxserver/ffmpeg:7.1.1 \
-hwaccel qsv \
-hwaccel_output_format qsv \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "vpp_qsv=w=960:h=540:format=nv12,hwdownload,format=nv12" -pix_fmt nv12 \
-map 0:v:0 -f null - -benchmark -statsSoftware:
docker run linuxserver/ffmpeg:7.1.1 \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "fps=2,scale=960:540" -pix_fmt yuv420p \
-map 0:v:0 -f null - -benchmark -statsHardware-accelerated:
docker run --device /dev/dri/renderD128 linuxserver/ffmpeg:7.1.1 \
-hwaccel qsv \
-hwaccel_output_format qsv \
-rtsp_transport tcp -timeout 5000000 \
-allowed_media_types video \
-flags low_delay \
-fflags +discardcorrupt \
-an \
-t 30 \
-i "rtsp://<your_camera_stream>" \
-vf "vpp_qsv=framerate=2:w=960:h=540:format=nv12,hwdownload,format=nv12" -pix_fmt nv12 \
-map 0:v:0 -f null - -benchmark -statsHardware acceleration flags:
--device /dev/dri/renderD128: Exposes Intel iGPU to Docker container-hwaccel qsv: Enables Intel QuickSync hardware decoding-hwaccel_output_format qsv: Keeps decoded frames on GPU memoryvpp_qsv: Hardware video processing (scaling, frame rate conversion)hwdownload,format=nv12: Downloads from GPU to CPU memory for measurement
Software processing:
- Uses CPU-only
libavcodecdecoder andlibswscalefor resizing fps=2: CPU-based frame rate reduction (decodes all frames, then drops)scale=960:540: CPU-based spatial scaling
Common parameters:
-rtsp_transport tcp: Reliable transport for IP camera streams-t 30: Run for exactly 30 seconds for consistent measurement-f null -: Discard output (pure processing benchmark)-benchmark -stats: Enable FFmpeg's built-in performance reporting