mcpField
M
media-processing

media-processing

github.com/siviter-xyz创意与媒体22148 次安装32 周前更新
代码仓库

关于 media-processing

media-processing 是一项媒体处理技能,提供基于命令行工具和 Python 脚本的图像、音频与视频处理工作流。适合需要批量转换、调整尺寸或优化视频,并希望流程可重复执行的创作者与开发者。

主要功能

  1. 01批量调整图像尺寸并生成缩略图
  2. 02按宽高比策略缩放并可加水印
  3. 03使用 FFmpeg 和 ImageMagick 转换媒体
  4. 04按 Web、归档和移动场景设置质量
  5. 05调整视频分辨率、帧率和编码

适用场景

  1. 01批量制作图像缩略图或转换格式
  2. 02将视频、音频和图像转换为其他格式
  3. 03优化视频体积并比较处理前后参数

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/siviter-xyz/dot-agent --skill media-processing

安装后在 Claude Code 中输入/media-processing确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
ffmpeg-encoding.md
ffmpeg-filters.md
ffmpeg-streaming.md
format-compatibility.md
imagemagick-batch.md
imagemagick-editing.md
scripts/
batch_resize.py
media_convert.py
requirements.txt
video_optimize.py

详细介绍

媒体处理

使用标准命令行工具(FFmpeg、ImageMagick)和 Python 辅助工具,以可重复、可脚本化的方式处理图像、音频和视频的工具与工作流。

适用场景

  • 处理成批图像(缩略图、调整大小、格式转换)
  • 在不同媒体格式之间转换(视频 ↔ 音频 ↔ 图像)
  • 在保持可接受画质的同时优化视频大小
  • 为 Web、移动设备或归档准备素材
  • 设计或改进围绕 FFmpeg/ImageMagick 的命令行工作流

核心原则

  • CLI 优先的工作流:优先使用命令行工具(FFmpeg、ImageMagick)和脚本,以便在 CI 或本地工具中自动化。
  • 确定性脚本:脚本应可安全重复运行,并具有可预测的输出路径和选项。
  • 默认不破坏原文件:默认将输出写入新文件或目录,而不是覆盖原文件。
  • 兼顾跨平台:尽可能确保示例和脚本可在 Linux、macOS 和 Windows 上使用。
  • 不依赖特定 Agent:指南应适用于任何编码 Agent(Cursor、Claude、Copilot 等),而非某个特定环境。

功能

  • 图像工作流

    • 批量调整大小并生成缩略图
    • 考虑宽高比的调整大小(适应、填充、覆盖、精确)
    • 可选添加水印
    • 格式转换(例如,PNG → WebP、JPEG)
  • 媒体转换

    • 根据扩展名检测媒体类型(视频、音频、图像)
    • 视频/音频使用 FFmpeg,图像使用 ImageMagick
    • 针对 web、archive 和 mobile 使用场景提供质量预设
    • 支持批量转换、试运行和详细模式
  • 视频优化

    • 调整分辨率和帧率
    • 单遍(CRF)或两遍编码
    • 调整音频比特率
    • 基本的前后对比(大小、比特率、分辨率、FPS)

脚本

脚本位于 scripts/ 中,可直接在 shell 中运行:

  • batch_resize.py

    • 使用多种策略(fit、fill、cover、exact、thumbnail)批量调整图像大小
    • 可选叠加水印
    • 支持并行处理和试运行模式
  • media_convert.py

    • 用于视频、音频和图像的统一转换工具
    • 自动选择 FFmpeg 或 ImageMagick
    • 使用质量预设(web、archive、mobile)
    • 支持批量转换和格式变更(例如,.mov → .mp4、.wav → .mp3)
  • video_optimize.py

    • 专注于权衡视频大小和画质
    • 分辨率上限、降低 FPS、调整 CRF、可选两遍编码
    • 可选提供原始输出与优化后输出的对比摘要

请参阅 scripts/requirements.txt,了解环境要求(Python 3.10+、FFmpeg、ImageMagick)和系统安装提示。

使用指南

  • 先检查依赖项

    • 对于视频/音频任务,确保已安装 ffmpeg 和 ffprobe,且它们位于 PATH 中。
    • 对于图像任务,确保已安装 magick(ImageMagick),且它位于 PATH 中。
  • 探索时优先试运行

    • 使用脚本的 --dry-run 和/或 --verbose 标志,在运行前检查生成的命令。
  • 保留原文件

    • 首次运行时将输出指定到单独的目录(例如,--output ./out/),以避免意外覆盖。
  • 记录工作流

    • 找到合适的命令行或脚本调用方式后,将其纳入项目脚本(例如,just、npm scripts 或 CI 任务),以便重复运行。

参考资料

如需了解更深入的工具专属说明(目前为占位内容,可按需扩展),请参阅:

  • references/ffmpeg-encoding.md – FFmpeg 编码模式和标志
  • references/ffmpeg-filters.md – 常用滤镜图(缩放、裁剪、音频滤镜)
  • references/ffmpeg-streaming.md – 适用于流媒体的设置和 HLS/DASH 提示
  • references/format-compatibility.md – 容器/编解码器兼容性说明(Web、移动端、桌面端)
  • references/imagemagick-batch.md – 使用 ImageMagick 批量处理图像的模式
  • references/imagemagick-editing.md – 图像编辑操作(裁剪、调整大小、合成、文字等)

评论

支持 Markdown