Update README.md
本项目是一个集语音识别、字幕生成、多语言翻译、样式自定义与视频播放于一体的本地化视频字幕工具。项目兼容 GPU 加速,并支持 MPV 播放器和 FFmpeg 字幕处理。
git@code.gitlink.org.cn:YourGod/spzmazdsbxsgj.git cd SubtitleIDE
conda create -n narratoai python=3.12 -y conda activate narratoai python -V
pip install -r requirements.txt
确保以下命令行工具已安装并配置好环境变量(将.exe目录加入环境变量):
ffmpeg
mpv
ImageMagick
Faster-Whisper
Qwen1.5
OpenKylin 示例:
sudo apt update sudo apt install ffmpeg mpv
请确保将 ffmpeg/bin 与 mpv.exe 添加至 PATH。
ffmpeg/bin
mpv.exe
.mp4
.avi
moviepy
.wav
faster-whisper-base
.srt
使用 FFmpeg 将字幕嵌入视频:
# 软字幕(外挂 .srt) ffmpeg -i input.mp4 -vf subtitles=subtitles.srt -c:a copy output.mp4 # 硬字幕(烧录) ffmpeg -i input.mp4 -vf "subtitles=subtitles.srt:force_style='Fontsize=18,PrimaryColour=&HFFFFFF&'" output_hard.mp4
MPV
示例命令:
mpv input.mp4 --sub-file=subtitles.srt
也可通过 GUI 接口调用 sub_reload、set sub-scale 实现动态控制。
sub_reload
set sub-scale
可通过GUI动态调整以下字幕参数:
--sub-scale=1.5
--sub-color='#00ffcc'
--sub-pos=90
--sub-font="Microsoft YaHei"
--sub-border-color=black
--sub-border-size=2
Qwen1.5-1.8B-Chat
使用 psutil + GPUtil 采集资源数据,配合 Streamlit 实时可视化:
psutil
GPUtil
可用于调试语音识别过程中的性能表现与瓶颈定位。
# 启动 Streamlit UI sh run.sh
支持功能模块包括:
📦 SubtitleIDE ├─.github ├─app │ ├─config // 设置 │ ├─controllers │ ├─models │ │ ├─faster-whisper-large-v3 // faster-whisper模型 │ ├─services // 各种功能函数在这里 │ │ ├─llm │ │ ├─prompts │ │ ├─SDE │ │ ├─SDP │ ├─test │ ├─utils ├─MyVideos // 存放测试视频的文件夹 ├─Qwen1.5-1.8B-Chat // 千问大模型本地部署 ├─resource ├─storage // 存放临时文件 └─webui // GUI界面渲染、功能调用函数 ├─ run.sh // 启动脚本 ├─ webui.py // 总控函数,调用文件夹下的渲染、功能函数
transformers
本工具致力于为教育、研究、无障碍辅助等场景提供一套本地、可定制、开源的视频字幕智能处理方案。欢迎开发者参与改进与扩展! 感谢NarratoAI、FFMpeg、Moviepy、Qwen、Faster-Whisper等一众优秀开源模型与框架,为我们的项目开发带来了便利🤝
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
🎬 视频字幕实时多语识别
本项目是一个集语音识别、字幕生成、多语言翻译、样式自定义与视频播放于一体的本地化视频字幕工具。项目兼容 GPU 加速,并支持 MPV 播放器和 FFmpeg 字幕处理。
⚙️ 环境配置与依赖安装
1️⃣ 克隆项目
2️⃣ 创建虚拟环境(推荐)
3️⃣ 安装 Python 依赖
4️⃣ 安装系统依赖
确保以下命令行工具已安装并配置好环境变量(将.exe目录加入环境变量):
ffmpeg:音视频处理 https://www.ffmpeg.org/download.htmlmpv:字幕与视频播放 https://github.com/mpv-player/mpvImageMagick:音视频处理 https://pan.quark.cn/s/2eb2a60c9489, pswd=kwwXFaster-Whisper:支持 GPU 加速(可选) https://github.com/SYSTRAN/faster-whisperQwen1.5模型:多语言翻译(可选) git clone https://huggingface.co/Qwen/Qwen1.5-1.8B-ChatOpenKylin 示例:
请确保将
ffmpeg/bin与mpv.exe添加至 PATH。✅ 技术路线概览
📦 Step 1:基础环境设置
🔉 Step 2:视频语音识别
.mp4,.avi, 等格式)moviepy提取音频(保存为.wav)faster-whisper-base模型并使用 GPU 推理📝 Step 3:字幕生成与时间轴同步
.srt字幕文件.wav文件节省空间🔧 Step 4:烧录字幕(可选)
使用 FFmpeg 将字幕嵌入视频:
🎥 Step 5:视频字幕播放(分轨)
MPV播放器:.srt文件(如中/英/双语)示例命令:
也可通过 GUI 接口调用
sub_reload、set sub-scale实现动态控制。🎨 Step 6:字幕样式自定义
可通过GUI动态调整以下字幕参数:
--sub-scale=1.5--sub-color='#00ffcc'--sub-pos=90(靠底)--sub-font="Microsoft YaHei"--sub-border-color=black--sub-border-size=2🌐 Step 7:多语言字幕翻译与切换
Qwen1.5-1.8B-Chat模型(可部署在 CPU/GPU).srt文件📊 系统资源监控(可选)
使用
psutil+GPUtil采集资源数据,配合 Streamlit 实时可视化:可用于调试语音识别过程中的性能表现与瓶颈定位。
🚀 启动方式
支持功能模块包括:
📁 项目结构
🧠 本地大模型推荐部署方式
transformers🤝 项目愿景与致谢
本工具致力于为教育、研究、无障碍辅助等场景提供一套本地、可定制、开源的视频字幕智能处理方案。欢迎开发者参与改进与扩展! 感谢NarratoAI、FFMpeg、Moviepy、Qwen、Faster-Whisper等一众优秀开源模型与框架,为我们的项目开发带来了便利🤝