Skip to content

About

基于 FFmpeg 的 Yunzai-Bot 插件,提供图像、音视频处理及信息查询功能

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

27 Commits

Folders and files

Repository files navigation

ffmpeg-plugin

功能列表

菜单顺序与 #ff帮助 生成的帮助图片一致。

📦 更新管理(仅BOT主人可用)

命令 功能
#ff更新 / #ffmpeg-plugin更新 检查并更新插件(保留本地修改)
#ff强制更新 强制覆盖本地修改,重置到远程最新版本

ℹ️ 版本信息

命令 功能
#ff版本 / #ffmpeg版本 生成 FFmpeg 版本信息卡片(版本、构建来源、编译日期、编解码库数量统计总览)
#ff配置 生成编解码器 / 封装格式 / 硬件加速 / 编译配置的全量详情页(暗色风格)

🎵 媒体信息

命令 功能
#音频信息 查看音频文件详情(格式、时长、比特率、采样率、声道等)
#图片信息 查看图片详情(分辨率、格式、GIF 帧数/帧率等)
#视频信息 查看视频详情(编码、分辨率、码率、音频流等)

💡 使用方法:回复/引用包含媒体的消息,或直接发送带有媒体的命令。

✂️ 去黑边 / 去白边 / 去纯色

命令 功能
#去黑边 自动检测并裁剪媒体文件四周的黑边
#去白边 自动检测并裁剪媒体文件四周的白边
#去纯色 基于左上角颜色裁剪图片/GIF 四周的纯色区域(仅限图片)

💡 支持图片(含 GIF)、视频批量处理(最多 10 个),GIF 可保留动画。

🛠️ 多媒体工具箱

命令 功能
#转动图 / #转gif 将视频转换为 GIF 动图(fps=12,宽度 320,Lanczos 算法)
#转语音 提取视频中的音频并转换为 MP3 语音消息
#转mp3 将音/视频文件转换为 MP3 音频文件
#转flac 将音/视频文件转换为 FLAC 无损音频文件
#转wav 将音/视频文件转换为 WAV 音频文件
#转视频 [音频名] [秒数] GIF 转带背景音乐的 MP4,可指定音频名与时长(秒),省略则随机选曲并按 GIF 时长
#转apng 将图片/GIF/视频转换为 APNG 动图(PNG 动画)

#转视频 用法

示例 说明
#转视频 随机选曲,时长按 GIF 本身(不足 15 秒时循环补足)
#转视频 菲比 使用指定音乐,时长按 GIF 本身
#转视频 菲比 10 使用指定音乐,且视频固定为 10 秒
#转视频 10 随机选曲,视频固定为 10 秒
  • 音频文件放在 plugins/ffmpeg-plugin/resources/mp3/ 下,支持两种形式:
    • 单文件:resources/mp3/菲比.mp3
    • 文件夹:resources/mp3/菲比/001.mp3(随机取其中一条)
  • 时间单位为秒;单次时长上限 600 秒,下限 1 秒。

🖼️ 基础图片处理

命令 功能
#水平翻转 / #左翻 / #右翻 水平镜像翻转图片
#竖直翻转 / #上翻 / #下翻 竖直翻转图片(上下颠倒)
#灰度图 / #黑白 转为黑白灰度图
#旋转 [角度] 旋转指定角度,默认 90°,如 #旋转 45
#缩放 尺寸 缩放:100x100、100x、x100、50%
#裁剪 尺寸 居中裁剪:100x100、100x、2:1
#反相 / #反色 反色处理(负片效果)
#轮廓 / #浮雕 轮廓描边 / 浮雕效果
#模糊 [强度] 高斯模糊,默认 1.6,如 #模糊 5
#锐化 锐化图片细节
#像素化 / #马赛克 [强度] 像素化(马赛克),默认 8

💡 使用方法:回复/引用一条图片消息,或直接发送图片 + 命令;GIF 动图会逐帧处理并保留动画。

🎨 颜色 / 滤镜 / 生成

命令 功能
#颜色滤镜 颜色 给图片叠加指定颜色滤镜
#纯色图 颜色 [尺寸] 生成纯色图,默认 500x500,如 #纯色图 红色 300x300
#渐变图 [方向] 颜色1 颜色2 生成渐变图,如 #渐变图 上下 红 蓝、#渐变图 45 #66ccff #ff66cc

💡 颜色支持:#66ccff、red、红色、102,204,255;渐变方向:上下 / 左右 / 角度数字(默认左右)。

🎞️ GIF 动图处理

命令 功能
#gif倒放 / #倒放 将 GIF 倒序播放
#gif正放倒放 / #正放倒放 正放一遍再倒放一遍
#gif变速 倍率 调整速度:0.5x、50%、20FPS、0.05s
#gif合成 [间隔] 多张图片合成为 GIF,间隔默认 100ms
#动图分解 / #gif分解 将 GIF 分解为 PNG 帧序列(合并转发,最多 100 帧)
#动图打包 / #gif打包 将 GIF 所有帧打包为 ZIP 压缩包

💡 合成请一次发送多张图片(≥2 张,动图仅取第一帧);帧间隔需 ≥ 20ms(即 ≤ 50FPS)。

🔲 网格 / 拼接

命令 功能
#四宫格 将图片切成 2×2 四块
#九宫格 将图片切成 3×3 九块
#横向拼接 多张图片横向拼接(左→右)
#纵向拼接 多张图片纵向拼接(上→下)

💡 切图会先居中正方形裁剪;拼接至少需要 2 张图片,结果以合并转发形式发送。

📝 文字转图

命令 功能
#文字转图 文字 将文字转换为图片,支持换行,最长 1000 字

💡 如:#文字转图 你好 世界(支持换行)。

❓ 帮助菜单

命令 功能
#ff帮助 / #ffmpeg-plugin帮助 生成帮助菜单图片(每日 5 点自动刷新缓存)
#ff帮助刷新 / #ffmpeg-plugin帮助刷新 手动刷新帮助菜单缓存(仅主人)

安装

进入 Yunzai-Bot 目录,执行以下命令:

git clone --depth=1 https://github.com/anyliew/ffmpeg-plugin.git ./plugins/ffmpeg-plugin
cd ./plugins/ffmpeg-plugin
pnpm i

环境依赖

FFmpeg:必须安装并加入系统 PATH(插件依赖 ffmpeg 和 ffprobe 命令)

Windows:下载 FFmpeg 并配置环境变量

Linux:sudo apt install ffmpeg 或 yum install ffmpeg

macOS:brew install ffmpeg

图片处理基于 sharp(libvips),文字转图优先使用 puppeteer(不可用时回退 SVG 渲染)。

致谢

FFmpeg - 多媒体处理核心

About

基于 FFmpeg 的 Yunzai-Bot 插件,提供图像、音视频处理及信息查询功能

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages