mediaproc
Locked-down media processing over SSH. Built on lockbox — no shell access, no injection, no bullshit.
For installation and deployment, see references/setup.md.
SSH Wrapper
Use scripts/mediaproc.sh for all commands. It handles host, port, and host key acceptance via MEDIAPROC_HOST and MEDIAPROC_PORT env vars.
CODEBLOCK0
Media Tools
| Command | Description |
|---|
| INLINECODE3 | Video/audio encoding, transcoding, filtering |
| INLINECODE4 |
Media file analysis |
|
sox | Audio processing |
|
soxi | Audio file info |
|
convert | Image conversion/manipulation (ImageMagick) |
|
identify | Image file info (ImageMagick) |
|
magick | ImageMagick CLI |
Upload, Process, Download
CODEBLOCK1
Video Operations
CODEBLOCK2
Audio Operations
CODEBLOCK3
Image Operations
CODEBLOCK4
File Operations
All paths relative to the work directory. Traversal blocked.
| Command | Description |
|---|
| INLINECODE10 | Upload file from stdin |
| INLINECODE11 |
Download file to stdout |
|
list-files [--json] | List directory |
|
remove-file <path> | Delete a file |
|
create-dir <path> | Create directory |
|
remove-dir <path> | Remove empty directory |
|
remove-dir-recursive <path> | Remove directory recursively |
|
move-file <src> <dst>| Move or rename |
|
copy-file <src> <dst>| Copy a file |
|
file-info <path> | Get file metadata as JSON |
|
file-exists <path> | Check if file exists (true/false) |
|
file-hash <path> | Get SHA256 hash |
|
disk-usage [path] | Get bytes used |
|
search-files <glob> | Glob search |
|
append-file <path> | Append stdin to a file |
CODEBLOCK5
Plugins
- - frei0r — Video effect plugins (used via
-vf frei0r=...) - LADSPA — Audio effect plugins: SWH, TAP, CMT (used via
-af ladspa=...) - LV2 — Audio plugins (used via
-af lv2=...)
Fonts
2200+ fonts included covering emoji, CJK, Arabic, Thai, Indic, monospace, and more. Custom fonts can be mounted to /usr/share/fonts/custom.
mediaproc
通过SSH进行锁定式媒体处理。基于lockbox构建——无shell访问、无注入、无废话。
安装和部署请参见 references/setup.md。
SSH 封装
所有命令均使用 scripts/mediaproc.sh。它通过 MEDIAPROCHOST 和 MEDIAPROCPORT 环境变量处理主机、端口和主机密钥接受。
bash
scripts/mediaproc.sh <命令> [参数]
scripts/mediaproc.sh <命令> < 输入文件
scripts/mediaproc.sh <命令> > 输出文件
媒体工具
| 命令 | 描述 |
|---|
| ffmpeg | 视频/音频编码、转码、滤镜处理 |
| ffprobe |
媒体文件分析 |
| sox | 音频处理 |
| soxi | 音频文件信息 |
| convert | 图像转换/处理(ImageMagick) |
| identify | 图像文件信息(ImageMagick) |
| magick | ImageMagick 命令行工具 |
上传、处理、下载
bash
上传
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
视频操作
bash
以JSON格式获取视频信息
scripts/mediaproc.sh ffprobe -v quiet -print
format json -showformat -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
音频操作
bash
转换音频格式
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
图像操作
bash
调整图像大小
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 <路径> | 将标准输入追加到文件 |
bash
列出文件
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。