whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具

这篇具有很好参考价值的文章主要介绍了whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家新年快乐,事业生活蒸蒸日上,解封的第一个年,想必大家都回家过年,好好陪陪家人了吧,这篇文章也是我在老家码的,还记得上篇我带大家基本了解了whisper,相信大家对whisper是什么,怎么安装whisper,以及使用都有了一个认识,这次作为新年第一篇文章,我将介绍一下自己开发的基于whisper+pyqt5做的一个字幕生成工具,还挺有意思的,中间也遇到各种问题,然后解决。每次尝试做什么,最爽莫过于遇到问题,然后一一解决,最后成功的实现自己想要的,就算是一个再简单的项目,相信大家只要有成长就会很满足开心吧。话不多说,直接进入今天的主题,让我们来看看这个工具。

  • 外观

首先让我们来看看工具样子如下图所示,自我吐槽一下,界面挺丑的,不得不感叹自己没有界面审美,不过我已经尽力了,哈哈,不过自我感觉看这个界面还是挺直观的就能知道这个工具的作用,以及使用也很直接方便。主要有两个模块,如图,1为选择模块,2为运行结果显示模块。

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具 

 文章来源地址https://www.toymoban.com/news/detail-428124.html

  • 功能介绍
  • 公共选择部分

 

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具

 

如上图红色框所示,所有功能这几个选择框是公用的,文字应该写的也算清楚,简单介绍一下。

模型选择:必选项,选择一个whisper模型。

语言选择:必选项,选择一个要识别翻译成哪种语言。

计算引擎选择:非必选项,不选默认为cpu。

模型读取保存路径:非必选项,不选默认在应用目录下,如果事先下好模型,可以选择对应目录,避免应用第一次下载找不到模型从而下载模型。

输出文件保存路径:必选项,选择运行生成文件的保存路径。

结束按钮:需要停止正在执行的功能,可以点击此按钮。

 

  • 功能部分

1.生成字幕文件:音频文件或者视频文件根据选择的语言生成一个对应语言的srt字幕文件,文件内容为音频文件或者视频文件说的内容,效果如图所示

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具

 

2.视频添加字幕:视频文件根据选择的语言自动为视频添加srt字幕,效果如图所示

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具

 

3.监听声音翻译:监听window的喇叭发出的声音并且识别生成srt字幕文件,不过这个功能因为没时间弄,暂时没弄,后面有时间会加上,界面暂时如下图所示

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具 

 

  • 问题以及总结

软件已经介绍完了,在开发过程中其实遇到了很多坑,比如第一次使用pyqt5,跟主要功能模块的信息传递,以及使用pyinstaller打包成应用的时候会遇到很多坑,这里着重记录下。

使用pyinstaller -D 主程序文件打包的时候,运行会有一堆问题,然后仔细看打包过程会有很多警告,有些包没打进去,需要在打包的时候把这些包使用--copy-metadata添加指定包的元数据进来,最后打包成功后,发现python的whisper模块不在应用里,可以将python目录下的whisper复制到应用目录里,然后由于使用到了ffmpeg所以也需要把这个文件复制到应用目录中,才成功运行,本以为万事大吉,但是这个应用会自带cmd窗口,于是在打包命令中添加-w参数,但是又遇到到了挺多问题这里主要记录两个:

1.AttributeError: 'NoneType' object has no attribute 'flush'这个错误,根据提示找到对应python模块sitr-packages/transformers/utils/logging.py的如下代码段,修改如下图所示

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具 

 

2.最后运行应用的时候下载模型会一直卡住,这是由于关闭了窗口,有些代码使用了需要从cmd中获取打印消息或者显示到cmd的功能,所以这里排查到应该是whisper下载模型的时候使用了tqdm来显示进度条导致的,所以到whisper的__init__.py文件中找到这段代码将如下图所示两行代码注释掉即可。

whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具 

 

最后再附上打包命令:

pyinstaller --upx-dir=C:\Users\xxx\Desktop\upx\upx-4.0.1-win64 -D -w pythoner_league_translate.py --copy-metadata tqdm --copy-metadata regex --copy-metadata tokenizers --copy-metadata numpy --copy-metadata regex --copy-metadata packaging --copy-metadata filelock --copy-metadata requests --copy-metadata whisper

其中upx地址,可以自己下载一个upx然后替换成你自己电脑路径即可

忘记说了whisper默认的中文是繁体字,这里本人已经把它转换成简体了。

如果大家有兴趣想玩玩,应用我已经帮大家打包好了,可以直接使用,代码也有,下面是各个下载地址:

应用模型下载地址(现在只打包了exe应用,如后续有需要可以打包mac应用):

链接:https://pan.baidu.com/s/1nj174s3tyHUAsazi4tHW0g

提取码:3ugi

代码gihub地址:https://github.com/PythonerLeague/PythonerLeague_translate

最后有问题可以留言或者关注PythonerLeague公众号进行沟通,这次分享就到这里了,最后再祝大家新年开开心心,有时间记得多陪陪家人。

 

 

 

 

 

 

 

到了这里,关于whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于opencv和PyQt5的人脸识别

    目    录 一、准备工作 二、分割任务 三、代码实现阶段 1、基于opencv读取照片 2、在图片上绘制矩形 3、在读取照片成功的前提下理解视频的本质,读取视频 4、在视频上绘制矩形 5、调用人脸识别模块  6、动态调整矩形,让矩形通过人脸识别算法追踪人脸 7、调用Qt组件,创

    2024年02月03日
    浏览(35)
  • [python]基于faster whisper实时语音识别语音转文本

    语音识别转文本相信很多人都用过,不管是手机自带,还是腾讯视频都附带有此功能,今天简单说下: faster whisper地址: https://github.com/SYSTRAN/faster-whisper https://link.zhihu.com/?target=https%3A//github.com/SYSTRAN/faster-whisper 实现功能: 从麦克风获取声音进行实时语音识别转文本 代码仅仅

    2024年02月03日
    浏览(27)
  • 基于OpenAI的Whisper构建的高效语音识别模型:faster-whisper

    faster-whisper是基于OpenAI的Whisper模型的高效实现,它利用CTranslate2,一个专为Transformer模型设计的快速推理引擎。这种实现不仅提高了语音识别的速度,还优化了内存使用效率。faster-whisper的核心优势在于其能够在保持原有模型准确度的同时,大幅提升处理速度,这使得它在处理

    2024年02月02日
    浏览(39)
  • 开源C++智能语音识别库whisper.cpp开发使用入门

    whisper.cpp是一个C++编写的轻量级开源智能语音识别库,是基于openai的开源python智能语音模型whisper的移植版本,依赖项少,内存占用低,性能更优,方便作为依赖库集成的到应用程序中提供语音识别功能。 以下基于whisper.cpp的源码利用C++ api来开发实例demo演示读取本地音频文件

    2024年02月20日
    浏览(31)
  • 《AI上字幕》基于openAI研发的whisper模型,语音(视频)一键转文本/字幕/带时间轴/支持多语言/自带翻译《桌面版教程》

    OpenAI的chatGPT非常火爆,其实OpenAI旗下的另一个模型实力也十分强大,它就是开源免费的Whisper语音转文本模型,目前为止它是较为顶尖的语音转文本模型 当前github上也有许多出色的开发者根据此模型开发出桌面版语音转文字应用。较为出色的分别是Buzz和WhisperDesktop 支持将多种

    2023年04月19日
    浏览(35)
  • 基于PyQt5GUI的人脸识别系统设计与实现

    目 录 前 言 1 第 1 章 人脸识别系统概述 1 第 2 章 人脸检测技术 1 §2.1 基于 Harr 级联的人脸检测 2 §2.2 基于 face_recognition 开源库的人脸检测… 错误!未定义书签。第 3 章 人脸识别技术 5 §3.1 构造人脸数据集 5 §3.2 模型训练 7 §3.3 实时人脸识别 9 第 4 章 基于 PyQt5 的应用平台 1

    2024年02月04日
    浏览(30)
  • 基于PyQt5的图形化界面开发——队列动画演示

    本文使用PyQt5制作图形化界面演示数据结构中的 队列 操作,与上一节队列动画相对应 基于PyQt5的图形化界面开发——队列动画演示 操作系统:Windows10 专业版 开发环境:Pycahrm Comunity 2022.3 Python解释器版本:Python3.8 第三方库:PyQt5 队列(Queue)是一种常用的数据结构,类似于现

    2024年02月07日
    浏览(41)
  • 基于PyQt5的UI界面开发——信号与槽

    PyQt5采用了一种被称为“信号与槽”机制的编程模式,用于处理对象间的通信和事件处理。在PyQt5中,信号(signal)是对象发出的特定事件,例如按钮被点击、文本被修改等。而槽(slot)是与信号相关联的特定动作或函数。当信号被触发时,与之相关联的槽会被自动调用。 槽

    2024年02月16日
    浏览(31)
  • 语音翻译项目(Whisper,opencc,Baidu翻译API,edge_tts)

    定制程序开发 heguannan @ 163.com 国内天生有墙,海外与国内的视频平台不连通,视频搬运业务应运而生。 通过国内的视频搬运到海外平台或者将海外平台视频搬运到国内,以获得平台的报酬。 当然,可以直接采用成熟的API直接做到 汉语语音-英语语音。然而,大多数API都要收费

    2024年02月12日
    浏览(26)
  • 解析!1V1直播源码开发搭建技术实时语音识别翻译功能的应用

      语言是我们人类交流的工具,它的种类繁多,比如世界语言,像是中国的汉语、英国的英语、法国的法语等;又或是我们中国的方言,像是山东话、北京话、上海话等。可谓是五花八门,争奇斗艳,每一种世界语言或是方言都有他独特的风格,但语言种类繁多的同时,这也

    2024年02月16日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包