# B站视频下载及字幕翻译分析小程序 **Repository Path**: yyy113/Bdownload ## Basic Information - **Project Name**: B站视频下载及字幕翻译分析小程序 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2025-04-27 - **Last Updated**: 2025-05-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # B站视频下载及视频分析工具 这是一个功能强大的B站视频下载、字幕生成和内容分析工具,具有用户友好的图形界面。可以帮助您下载B站视频、生成字幕、提取文本内容并生成结构化的Markdown笔记。 ## 主要功能 - **视频下载**:从B站网址下载视频,支持多种格式和质量选择 - **字幕生成**:使用Whisper AI模型从视频生成高质量字幕 - **Markdown生成**:将字幕内容转换为结构化的Markdown文档,自动添加标题和格式 - **多语言支持**:支持中文、英文等多种语言处理 - **字幕翻译**:支持多种语言翻译,包括英文到中文、繁体中文到简体中文等 - **SRT字幕处理**:专业处理SRT格式字幕,支持分段翻译和双语字幕生成 ## 系统架构 ## 安装和配置 ### 系统要求 - **操作系统**:Windows - **Python版本**:Python 3.12 - **依赖库**:PyQt5、openai、yt-dlp、ffmpeg等 - **外部依赖**:需要安装FFmpeg和Whisper 1. **克隆仓库**: ```bash git clone https://gitee.com/yyy113/Bdownload.git cd Bdownload ``` 2. **安装依赖**: ```bash pip install -r requirements.txt ``` 3. **安装外部依赖**: - 安装FFmpeg:访问[FFmpeg官网](https://ffmpeg.org/download.html)下载并安装 - 安装Whisper:`pip install openai-whisper` 4. **配置API密钥**(用于字幕翻译和Markdown生成): - 在应用程序内设置通义千问、DeepSeek密钥 ## 使用方法 ### 启动程序 ```bash python -m bilibili_tool.main ``` ### 下载视频 1. 打开"视频下载"标签页 2. 输入B站视频链接(例如:https://www.bilibili.com/video/BV1xx411c7mD) 3. 设置下载选项(格式、质量等) 4. 选择保存路径 5. 点击"下载"按钮开始下载 ### 生成字幕 1. 打开"字幕生成"标签页 2. 选择已下载的视频或本地视频文件 3. 选择Whisper模型和语言设置 4. 设置输出格式和GPU选项 5. 点击"生成字幕"按钮 6. 生成完成后可以直接跳转到翻译标签页或保存字幕 ### 字幕翻译 1. 打开"字幕翻译"标签页 2. 加载已生成的字幕文件或直接粘贴文本内容 3. 选择源语言和目标语言 4. 设置API类型和填写API密钥 5. 选择翻译选项(保留格式、上下文感知、双语字幕) 6. 点击"开始翻译"按钮 7. 翻译完成后,可以在输出目录中找到翻译后的字幕文件 ### 生成Markdown文档 1. 打开"Markdown生成"标签页 2. 加载已生成的字幕文件或直接粘贴文本内容 3. 输入文档标题和文件名 4. 设置API类型和填写API密钥 5. 点击"生成Markdown"按钮 6. 生成完成后可查看完整的提示词和生成结果 ## 字幕模块详解 ### 字幕生成功能 字幕生成模块使用OpenAI的Whisper模型,支持多种语言的语音识别: - **支持的语言**:中文、英文、日语、韩语等多种语言,支持自动检测 - **模型选择**:支持多种Whisper模型规格,从tiny到large - **GPU加速**:可选择启用GPU加速,显著提升转录速度 - **输出格式**:支持SRT、VTT等多种字幕格式 - **时间戳精度**:支持词级别的时间戳 - **实时进度**:转录过程中实时显示进度和状态 - **取消功能**:支持中途取消转录任务 字幕生成流程: 1. 视频文件转交给WhisperTranscriber处理器 2. 执行Whisper命令行工具转录音频 3. 实时解析输出并更新进度 4. 生成SRT字幕文件并自动打开所在目录 5. 提供直接跳转到翻译功能的链接 ### 字幕翻译功能 字幕翻译模块支持多种翻译API和丰富的字幕处理功能: - **多API支持**: - DeepSeek - 通义千问 - **SRT专业处理**: - 解析SRT格式,保留时间戳 - 分批处理大量字幕 - 上下文感知翻译,保持一致性 - 生成双语字幕和纯翻译字幕 - **智能分段技术**: - 按批次(默认50行)分组处理字幕 - 长文本自动切分为多个段落 - 超长段落按句子级别拆分 - 保持分段间的上下文连贯性 - **定制化选项**: - 自定义翻译提示词模板 - 调整批处理大小 - 启用/禁用上下文感知 - 双语字幕生成选项 - **增强的分隔符处理**: - 使用专用"(分割)"标记分隔字幕行 - 强化的提示词确保标记精确保留 - 自适应解析多种可能的分隔符变体 - 低temperature设置(0.1)确保更精确的输出 翻译处理流程: 1. 解析SRT格式,提取字幕文本和时间戳 2. 按批次划分字幕(默认每批50行) 3. 为每批生成专用提示词,包含上下文信息 4. 调用选定的API进行翻译 5. 解析API响应,将翻译结果与原文匹配 6. 生成翻译后的SRT文件和双语字幕文件 ## 系统架构 ## 许可证 本项目采用MIT许可证 - 详情请见LICENSE文件 ## 最新更新 - **存在问题**: - 1.字幕翻译界面日志输出过于复杂 - 2.增加自动生成字幕视频的功能 - 3.增加自动生成封面的功能 - 4.增加自动上传B站视频的功能 - **2025-05-21**: 修复了语音识别的BUG - 1.不再使用 whisper 命令行工具,而是直接使用 Python 的 -m whisper 模块方式调用,这样可以避免命令行工具的路径问题 - **2025-05-18**: 优化了字幕翻译功能 - 1.删除了字幕翻译中不使用的代码,重构了代码结构 - 2.增加了专业英语的提示工程,进一步提高翻译精准程度 - 3.增加了检测专业英语翻译冲突的问题 - 4.取消了系统提示词中的专业英语个数限制 - **2025-05-17**: 优化了大模型通用功能和字幕翻译功能 - 1.删除了使用亚马逊大模型的功能代码 - 2.字幕翻译界面删除了一些不必要的输出 - 3.修改了向大模型上传字幕时的分段策略 - **2025-05-16**: 优化了字幕生成功能 - 1.删除了字幕内容最后面的标点符号 - **2025-05-07**: 优化了视频下载功能和字幕生成功能 - 1.修复了下载视频前的检查网络连接的功能 - 2.修改了视频下载界面日志输出内容 - 3.删除了视频下载时的设置代理功能 - 4.修复了在字幕生成界面无法选择字幕语言的问题 - 5.修复了语音识别时无法使用GPU加速的问题 ## 联系方式(请注明来意) - QQ:1132759952 - 微信:Y113275