OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  mediaproc:在受限 SSH 容器中处理视频、音频与图像文件处理工具

mediaproc:在受限 SSH 容器中处理视频、音频与图像文件处理工具

 
  schema ·  2026-02-25 16:00:40 · 2 次点击  · 0 条评论  

名称: mediaproc
描述: 通过一个受限制的 SSH 容器处理媒体文件(视频、音频、图像),容器内包含 ffmpeg、sox 和 imagemagick。当用户需要转码视频、处理音频、操作图像或处理媒体文件时使用。
compatibility: 需要 SSH 和一个正在运行的 mediaproc 实例。必须设置 MEDIAPROC_HOST 和 MEDIAPROC_PORT 环境变量。
元数据:
author: psyb0t
homepage: https://github.com/psyb0t/docker-mediaproc


mediaproc

通过 SSH 进行受限制的媒体处理。基于 lockbox 构建 —— 无 shell 访问、无注入、无废话。

关于安装和部署,请参阅 references/setup.md

SSH 包装器

所有命令都使用 scripts/mediaproc.sh。它通过 MEDIAPROC_HOSTMEDIAPROC_PORT 环境变量处理主机、端口和主机密钥接受。

scripts/mediaproc.sh <命令> [参数]
scripts/mediaproc.sh <命令> < 输入文件
scripts/mediaproc.sh <命令> > 输出文件

媒体工具

命令 描述
ffmpeg 视频/音频编码、转码、滤镜处理
ffprobe 媒体文件分析
sox 音频处理
soxi 音频文件信息
convert 图像转换/处理 (ImageMagick)
identify 图像文件信息 (ImageMagick)
magick ImageMagick 命令行界面

上传、处理、下载

# 上传
scripts/mediaproc.sh "put input.mp4" < input.mp4

# 转码
scripts/mediaproc.sh "ffmpeg -i /work/input.mp4 -c:v libx264 /work/output.mp4"

# 下载结果
scripts/mediaproc.sh "get output.mp4" > output.mp4

# 清理
scripts/mediaproc.sh "remove-file input.mp4"
scripts/mediaproc.sh "remove-file output.mp4"

视频操作

# 获取视频信息(JSON格式)
scripts/mediaproc.sh "ffprobe -v quiet -print_format json -show_format -show_streams /work/video.mp4"

# 应用 frei0r 发光效果
scripts/mediaproc.sh "ffmpeg -i /work/in.mp4 -vf frei0r=glow:0.5 /work/out.mp4"

# 从视频中提取音频
scripts/mediaproc.sh "ffmpeg -i /work/video.mp4 -vn -acodec libmp3lame /work/audio.mp3"

# 从视频创建缩略图
scripts/mediaproc.sh "ffmpeg -i /work/video.mp4 -ss 00:00:05 -vframes 1 /work/thumb.jpg"

音频操作

# 转换音频格式
scripts/mediaproc.sh "sox /work/input.wav /work/output.mp3"

# 获取音频信息
scripts/mediaproc.sh "soxi /work/audio.wav"

# 音频标准化
scripts/mediaproc.sh "sox /work/input.wav /work/output.wav norm"

图像操作

# 调整图像大小
scripts/mediaproc.sh "convert /work/input.png -resize 50% /work/output.png"

# 创建缩略图
scripts/mediaproc.sh "convert /work/input.jpg -thumbnail 200x200 /work/thumb.jpg"

# 获取图像信息
scripts/mediaproc.sh "identify /work/image.png"

文件操作

所有路径均相对于工作目录。禁止路径遍历。

命令 描述
put <路径> 从标准输入上传文件
get <路径> 下载文件到标准输出
list-files [--json] 列出目录内容
remove-file <路径> 删除文件
create-dir <路径> 创建目录
remove-dir <路径> 删除空目录
remove-dir-recursive <路径> 递归删除目录
move-file <源> <目标> 移动或重命名文件
copy-file <源> <目标> 复制文件
file-info <路径> 获取文件元数据(JSON格式)
file-exists <路径> 检查文件是否存在(true/false)
file-hash <路径> 获取 SHA256 哈希值
disk-usage [路径] 获取已用字节数
search-files <通配符> 通配符搜索文件
append-file <路径> 将标准输入追加到文件
# 列出文件
scripts/mediaproc.sh "list-files"

# 以 JSON 格式列出(包含大小、修改时间、是否为目录、权限)
scripts/mediaproc.sh "list-files --json"

# 列出子目录
scripts/mediaproc.sh "list-files project1"

# 文件操作示例
scripts/mediaproc.sh "create-dir project1"
scripts/mediaproc.sh "move-file old.mp4 new.mp4"
scripts/mediaproc.sh "copy-file input.mp4 backup.mp4"
scripts/mediaproc.sh "file-info video.mp4"
scripts/mediaproc.sh "file-exists video.mp4"
scripts/mediaproc.sh "file-hash video.mp4"
scripts/mediaproc.sh "search-files '*.mp4'"
scripts/mediaproc.sh "disk-usage"
scripts/mediaproc.sh "remove-dir-recursive project1"

插件

  • frei0r — 视频效果插件(通过 -vf frei0r=... 使用)
  • LADSPA — 音频效果插件:SWH、TAP、CMT(通过 -af ladspa=... 使用)
  • LV2 — 音频插件(通过 -af lv2=... 使用)

字体

包含 2200 多种字体,涵盖表情符号、中日韩文字、阿拉伯文、泰文、印度文字、等宽字体等。自定义字体可以挂载到 /usr/share/fonts/custom

2 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor