
unifiedstreaming/unified_capture本镜像集合为Unified Streaming命令行工具提供Docker化部署,包含mp4split、cpix_verify、manifest_edit等多个工具,用于媒体文件处理、CPIX验证、DASH/HLS manifest编辑、输入流推送等媒体相关任务。无需本地安装依赖,通过容器化方式便捷运行,适用于媒体服务开发、测试及生产环境。
Docker镜像发布于Docker Hub,格式为unifiedstreaming/<tool>,包含以下工具:
unifiedstreaming/mp4split:媒体文件处理工具unifiedstreaming/cpix_verify:CPIX文档验证工具unifiedstreaming/manifest_edit:DASH/HLS manifest编辑工具(需安装Python及相关包)unifiedstreaming/push_input_stream:输入流推送工具unifiedstreaming/unified_capture:媒体捕获工具unifiedstreaming/unified_remix:媒体重混工具latest,指定版本格式为<version>(如1.11.9)<version>-beta(如1.11.10-beta)mp4split镜像构建,减少冗余依赖/data,并设为工作目录UspLicenseKey环境变量,实现授权验证mp4split进行MP4文件分割、加密、碎片化等操作cpix_verify验证DRM相关的CPIX文档有效性manifest_edit修改DASH/HLS的manifest文件属性push_input_stream推送媒体输入流至处理系统unified_capture捕获实时媒体流,unified_remix进行媒体内容重混UspLicenseKey授权密钥(部分工具功能需要)推荐将以下shell函数添加至bash、zsh等shell配置文件(如~/.bashrc、~/.zshrc),简化工具调用:
bash#!/bin/sh # Unified Streaming 命令行工具 Docker 辅助函数 mp4split() { BASE_IMAGE=docker.io/unifiedstreaming/mp4split case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" } cpix_verify() { BASE_IMAGE=docker.io/unifiedstreaming/cpix_verify case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" } manifest_edit() { BASE_IMAGE=docker.io/unifiedstreaming/manifest_edit case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" } push_input_stream() { BASE_IMAGE=docker.io/unifiedstreaming/push_input_stream case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" } unified_capture() { BASE_IMAGE=docker.io/unifiedstreaming/unified_capture case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" } unified_remix() { BASE_IMAGE=docker.io/unifiedstreaming/unified_remix case $1 in 1.[0-9]*.[0-9]* ) IMAGE=${BASE_IMAGE}:$1; shift ;; * ) IMAGE=${BASE_IMAGE}:latest; docker pull $IMAGE ;; esac docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data $IMAGE "$@" }
添加后执行source ~/.bashrc使函数生效。
直接调用工具名称,默认拉取并运行latest标签镜像:
bash# 查看mp4split版本和许可证信息 mp4split --show_license
将版本号作为第一个参数传递:
bash# 运行mp4split 1.11.9版本 mp4split 1.11.9 --show_license
版本号后添加-beta:
bash# 运行mp4split 1.11.10-beta版本 mp4split 1.11.10-beta --show_license
未使用shell函数时,可直接通过docker run命令运行:
bash# 运行mp4split最新版本 docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data docker.io/unifiedstreaming/mp4split --show_license # 运行指定版本的cpix_verify docker run --rm -it -e UspLicenseKey -v ${PWD}:/data --workdir /data docker.io/unifiedstreaming/cpix_verify:1.11.9 --input sample.cpix.xml
UspLicenseKey用于传递授权密钥,支持工具功能授权-v ${PWD}:/data将本地当前目录挂载至容器/data,实现文件访问--workdir /data设置容器工作目录,便于直接操作挂载的本地文件latest:最新稳定GA版本<version>(如1.11.9):指定GA版本<version>-beta(如1.11.10-beta):指定Beta版本manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务