feat:添加参赛说明
Voice2Text 是一个高效、准确的音视频字幕自动生成解决方案,通过集成先进的语音识别技术,实现对视频和音频内容的实时字幕生成和显示。系统支持多语言识别、情感识别和声学事件检测等功能,为用户提供全面的字幕生成服务。
1.本项目对应赛题:视频字幕AI自动识别显示工具。
2.本项目的初赛文档在本仓库的voice2text\提交文档文件夹中。
3.本项目的APP运行截图和视频分别放在:voice2text\软件截图和voice2text\演示录屏.mp4内。
4.本项目APP的模型和代码分别放在:voice2text\model和voice2text\py。
系统采用模块化设计,主要包括以下几个核心组件:
SenseVoice-Small是一个多语言音频理解模型,具有以下技术特点:
FSMN-Monophone VAD是达摩院语音团队提出的高效语音端点检测模型:
1.安装依赖:
pip install -r requirements.txt
2.下载模型(如果尚未包含在仓库中):
# 模型将自动下载或从指定位置加载 # 首次运行程序时会自动下载模型
cd py python player_example.py
通过界面打开视频文件:
开始处理:
字幕设置:
翻译功能:
voice2text/ ├── model/ # 语音识别模型 │ ├── SenseVoiceSmall/ # 多语言语音识别模型 │ │ ├── model.pt # 模型权重文件 │ │ ├── config.yaml # 模型配置文件 │ │ ├── tokens.json # 词表文件 │ │ └── ... # 其他模型文件 │ └── speech_fsmn_vad.../ # 语音活动检测模型 │ ├── model.pt # 模型权重文件 │ ├── config.yaml # 模型配置文件 │ └── ... # 其他模型文件 ├── py/ # Python源代码 │ ├── audio_processor.py # 音频处理模块 │ ├── model_loader.py # 模型加载模块 │ ├── player_manager.py # 播放管理模块 │ ├── player_example.py # 主应用程序 │ └── output/ # 临时输出目录 ├── resource/ # 资源文件 │ ├── subtitles/ # 生成的字幕文件 │ └── *.mp4, *.wav # 示例媒体文件 └── requirements.txt # 项目依赖 │ └── README.md
class ModelManager: def __init__(self, vad_model_path, asr_model_path, device): # 初始化模型路径和设备 def load_models(self): # 加载VAD和ASR模型 def get_models(self): # 获取已加载的模型
负责加载和管理语音识别相关的模型,提供统一的模型接口。
class AudioProcessor: def extract_audio(self, video_path, output_audio_path=None): # 从视频中提取音频 def split_audio(self, input_file, first_segment_length=60, other_segment_length=180, output_dir="./temp_segments"): # 分割音频为多个片段 def process_segment(self, audio_data, segment_start_time=0): # 处理单个音频片段
负责音频的提取、分段和处理,将视频中的音频提取出来并进行识别。
class PlayerManager: def initialize(self): # 初始化模型 def generate_subtitles(self, video_path): # 为视频生成字幕文件
协调视频播放和字幕生成过程,管理模型初始化和字幕生成。
系统针对性能进行了多方面优化:
本项目使用 Apache License 2.0 许可证。
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
Voice2Text 实时字幕生成系统
Voice2Text 是一个高效、准确的音视频字幕自动生成解决方案,通过集成先进的语音识别技术,实现对视频和音频内容的实时字幕生成和显示。系统支持多语言识别、情感识别和声学事件检测等功能,为用户提供全面的字幕生成服务。
参赛说明
1.本项目对应赛题:视频字幕AI自动识别显示工具。
2.本项目的初赛文档在本仓库的voice2text\提交文档文件夹中。
3.本项目的APP运行截图和视频分别放在:voice2text\软件截图和voice2text\演示录屏.mp4内。
4.本项目APP的模型和代码分别放在:voice2text\model和voice2text\py。
功能特点
系统架构
系统采用模块化设计,主要包括以下几个核心组件:
系统工作流程
技术栈
核心模型详情
SenseVoice-Small 模型
SenseVoice-Small是一个多语言音频理解模型,具有以下技术特点:
FSMN-Monophone VAD 模型
FSMN-Monophone VAD是达摩院语音团队提出的高效语音端点检测模型:
安装指南
环境要求
安装步骤
1.安装依赖:
2.下载模型(如果尚未包含在仓库中):
可能的问题和解决方案
使用方法
通过界面打开视频文件:
开始处理:
字幕设置:
翻译功能:
项目结构
核心代码模块说明
1. 模型加载器 (model_loader.py)
负责加载和管理语音识别相关的模型,提供统一的模型接口。
2. 音频处理器 (audio_processor.py)
负责音频的提取、分段和处理,将视频中的音频提取出来并进行识别。
3. 播放管理器 (player_manager.py)
协调视频播放和字幕生成过程,管理模型初始化和字幕生成。
应用场景
性能优化
系统针对性能进行了多方面优化:
未来计划
许可证
本项目使用 Apache License 2.0 许可证。
鸣谢