
tianon/handbrake本镜像包含开源视频转码工具HandBrake,从官方PPA (ppa:stebbins/handbrake-releases)安装,提供命令行版本(handbrake-cli)。容器化部署消除了本地环境依赖,可在任何支持Docker的系统中快速执行视频转码操作,适用于处理多种输入输出格式的视频文件。
将当前目录下的input.mp4转码为output.mkv,挂载本地目录作为数据卷:
bashdocker run --rm -v "$(pwd):/workdir" tianon/handbrake handbrake-cli -i /workdir/input.mp4 -o /workdir/output.mkv
转码为H.265编码,设置质量参数20,分辨率调整为720p:
bashdocker run --rm -v "$(pwd):/workdir" tianon/handbrake handbrake-cli \ -i /workdir/input.mp4 \ -o /workdir/output_h265.mp4 \ -e x265 \ # 使用H.265编码器 -q 20 \ # 质量参数(范围0-51,值越小质量越高) --width 1280 \ # 设置宽度 --height 720 \ # 设置高度 -r 30 \ # 帧率30fps -B 192 # 音频比特率192kbps
使用find命令批量处理目录下所有MP4文件:
bashfind ./source -name "*.mp4" -exec sh -c ' input="{}" output="${input%.mp4}_converted.mkv" docker run --rm -v "$(pwd):/workdir" tianon/handbrake handbrake-cli -i "/workdir/$input" -o "/workdir/$output" ' \;
| 卷路径 | 说明 |
|---|---|
/workdir | 建议挂载本地目录至该路径,用于输入源文件和输出结果的持久化存储 |
| 参数 | 说明 |
|---|---|
-i <path> | 输入文件路径 |
-o <path> | 输出文件路径 |
-e <encoder> | 视频编码器(x264/x265/mpeg4等) |
-q <value> | 恒定质量模式参数(0-51) |
-b <bitrate> | 视频比特率(kbps) |
--width/--height | 输出视频宽度/高度 |
-r <fps> | 输出帧率 |
-B <bitrate> | 音频比特率(kbps) |
-a <track> | 指定音频轨道 |
-s <track> | 指定字幕轨道 |
默认以root用户运行,如需调整输出文件权限,可指定本地用户ID:
bashdocker run --rm -u $(id -u):$(id -g) -v "$(pwd):/workdir" tianon/handbrake handbrake-cli -i /workdir/input.mp4 -o /workdir/output.mkv
资源限制:转码为CPU密集型任务,可通过--cpus限制CPU使用:
bashdocker run --rm --cpus 2 -v "$(pwd):/workdir" tianon/handbrake handbrake-cli ...
硬件加速:如主机支持,可挂载GPU设备启用硬件编码(需主机安装对应驱动):
bashdocker run --rm --device /dev/dri -v "$(pwd):/workdir" tianon/handbrake handbrake-cli -i /workdir/input.mp4 -o /workdir/output.mp4 -e nvenc_h265
获取最新版本:
bashdocker pull tianon/handbrake
查看版本信息:
bashdocker run --rm tianon/handbrake handbrake-cli --version
详细参数说明可参考HandBrake CLI官方文档






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务