注意
Whisper仓库目前更新较多,本仓库选择的是8个月以前的版本,不保证能继续使用。还有一个方案是使用讯飞星火的识别或者其他Speech To Text的服务,通过网络请求上传音频识别并获取返回结果。如有技术的大佬可以试试完善一下这些接口提提PR!
bili2text 是一个用于将 Bilibili 视频转换为文本的工具🛠️。这个项目通过一个简单的流程实现:下载视频、提取音频、分割音频,并使用 whisper 模型将语音转换为文本。整个过程是自动的,只需输入 Bilibili 视频的 av 号即可。整个过程行云流水,一步到胃😂
- 🎥下载视频:从 Bilibili 下载指定的视频。
- 🎵提取音频:从下载的视频中提取音频。
- 💬音频分割:将音频分割成小段,以便于进行高效的语音转文字处理。
- 🤖语音转文字:使用 OpenAI 的 whisper 模型将音频转换为文本。
-
克隆仓库:
git clone https://github.com/lanbinshijie/bili2text.git cd bili2text
-
安装依赖: 安装必要的 Python 库。
pip install -r requirements.txt
-
运行脚本: 使用 Python 运行
main.py
脚本。python main.py
在提示时输入 Bilibili 视频的 av 号。
-
使用UI界面:
python window.py
在弹出的窗口中输入视频链接,会自动转换为av号,点击下载视频按钮即可完成文件转换。
from downBili import download_video
from exAudio import *
from speech2text import *
av = input("请输入av号:")
filename = download_video(av)
foldername = run_split(filename)
run_analysis(foldername, prompt="以下是普通话的句子。这是一个关于{}的视频。".format(filename))
output_path = f"outputs/{foldername}.txt"
print("转换完成!", output_path)
- Python 主要编程语言,负责实现程序逻辑功能
- Whisper 语音转文字模型
- Tkiner UI界面展示相关工具
- TTKbootstrap UI界面美化库
- 生成requirements.txt
- UI化设计
![](https://private-user-images.githubusercontent.com/163615422/349756690-fd16f703-68b5-463d-abca-4ce6d627bd98.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU4MjA4MDYsIm5iZiI6MTcyNTgyMDUwNiwicGF0aCI6Ii8xNjM2MTU0MjIvMzQ5NzU2NjkwLWZkMTZmNzAzLTY4YjUtNDYzZC1hYmNhLTRjZTZkNjI3YmQ5OC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwOTA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDkwOFQxODM1MDZaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1iN2JjM2JiY2EwOWIyNzI3OWI3ZWFkZDU2ZjZmOWRhZWFmYzRiNGMwOGU1OWM4MGRmZDY1ODY2MzcxNjRkNTk0JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.gTkeukQ5nSFfYALff-6_T1TLO1CQXkoik6sGTopdeJ0)
本项目根据 MIT 许可证发布。
如果你想为这个项目做出贡献,欢迎提交 Pull Request 或创建 Issue。
再此感谢Open Teens对青少年开源社区做出的贡献!@OpenTeens