
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
docker-nvidia-cuda-ffmpeg是一个集成了FFmpeg的Docker容器,专门针对NVIDIA GPU进行优化,支持多种CUDA加速的滤镜和编码器。该镜像主要用于需要GPU加速的视频处理任务,如视频转码、实时滤镜应用、多视频拼接(Mosaic)及RTSP摄像头流处理等场景,能够显著提升视频处理效率。
scale_cuda(GPU加速缩放)、overlay_cuda(GPU加速叠加)等滤镜hevc_nvenc(H.265硬件编码)和h264_nvenc(H.264硬件编码)scale_cuda滤镜
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest -h filter=scale_cuda
overlay_cuda滤镜
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest -h filter=overlay_cuda
hevc_nvenc编码器
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest -h encoder=hevc_nvenc
h264_nvenc编码器
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest -h encoder=h264_nvenc
Mosaic功能可将4、6或9路视频源拼接成单画面输出,支持自定义输出参数和目标地址。
环境变量配置
| 变量名 | 用途 | 默认值 | 说明 |
|---|---|---|---|
| INPUT0 | 背景图像 | /etc/mosaic/1920x1080-black.png | 容器内置的黑色背景图 |
| INPUT1~INPUT9 | 视频源URL | INPUT1默认:/etc/mosaic/1920x1080.png | INPUT1-4用于4画面,INPUT5-6用于6画面,INPUT7-9用于9画面 |
| CONTAINER | 输出容器格式 | mpegts | 传递给-f参数,如mpegts、flv等 |
| OUTPUT | 输出目标地址 | udp://224.0.51.1:1234?pkt_size=188 | 输出数据的目标位置 |
| BITRATE | 输出码率 | 8M | |
| ENCODER | 编码器类型 | hevc | 支持h264或hevc |
| ENCODE_PRESET | 编码预设 | veryfast | |
| RESOLUTION | 预设分辨率 | FHD | 可选nHD、qHD、HD、HD+、FHD、DCI 2K、QHD、QHD+、4K UHD |
| WIDTH/HEIGHT | 输出宽度/高度 | 1920/1080 | 自定义输出分辨率,优先级高于RESOLUTION |
| FFMPEG_THREAD_QUEUE_SIZE | 线程队列大小 | 512 | 仅在需要时调整 |
| FFMPEG_CUDA_FORMAT | CUDA处理内部格式 | nv12 | 仅在需要时调整 |
| GENCMD | 生成FFmpeg命令(1=启用) | 0 | 设置为1可生成示例命令供自定义修改 |
Docker Compose示例
yaml--- version: '3.8' services: ffmpeg: image: ghcr.io/aperim/nvidia-cuda-ffmpeg:latest deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [gpu] restart: unless-stopped environment: PUID: 1000 PGID: 1000 TZ: Australia/Sydney NVIDIA_VISIBLE_DEVICES: all NVIDIA_DRIVER_CAPABILITIES: all NVIDIA_REQUIRE_CUDA: cuda>=11.4 INPUT1: https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/master.m3u8 INPUT2: https://d3rlna7iyyu8wu.cloudfront.net/skip_armstrong/skip_armstrong_multichannel_subs.m3u8 INPUT3: http://amssamples.streaming.mediaservices.windows.net/634cd01c-6822-4630-8444-8dd6279f94c6/CaminandesLlamaDrama4K.ism/manifest(format=m3u8-aapl) INPUT4: https://devimages.apple.com.edgekey.net/iphone/samples/bipbop/bipbopall.m3u8 volumes: - "/etc/timezone:/etc/timezone:ro" - "/etc/localtime:/etc/localtime:ro" command: mosaic
生成自定义命令示例
bashdocker run -it --rm \ -e GENCMD=1 \ -e INPUT1=https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/master.m3u8 \ -e INPUT2=https://d3rlna7iyyu8wu.cloudfront.net/skip_armstrong/skip_armstrong_multichannel_subs.m3u8 \ -e INPUT3=http://amssamples.streaming.mediaservices.windows.net/634cd01c-6822-4630-8444-8dd6279f94c6/CaminandesLlamaDrama4K.ism/manifest\(format=m3u8-aapl\) \ -e INPUT4=https://devimages.apple.com.edgekey.net/iphone/samples/bipbop/bipbopall.m3u8 \ ghcr.io/aperim/nvidia-cuda-ffmpeg:latest mosaic
Camera命令用于简化RTSP摄像头流的转码和转发,支持自定义码率、编码器和帧率。
使用语法
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest camera \ <camera_url> <destination_url> [bitrate] [encoder] [framerate]
参数说明
camera_url: 摄像头RTSP地址(需包含URL编码的用户名/密码)destination_url: 目标RTSP地址(必须使用TCP协议)bitrate (可选): 输出码率,默认8Mencoder (可选): 编码器类型,支持h264或hevc,默认hevcframerate (可选): 输出帧率示例
bashdocker run -it --rm --gpus=all -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all ghcr.io/aperim/nvidia-cuda-ffmpeg:latest camera \ rtsp://user:pass@192.0.2.1/unicast/c1/s0/live rtsp://host.docker.internal:8554/camera1 16M h264 24
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务