中国软件网

您现在的位置是:网站首页>软件头条

软件头条

使用PyQt GUI 写一个朗读软件

中国软件网2023-05-08软件头条北京像素软件
石材下料软件,北京像素软件,想学软件编程,使用PyQtGUI写一个朗读软件,石材下料软件,北京像素软件,想学软件编程一直想找一款能朗读的软件,需支持批量朗读本地文件(如文本/PDF等).但找了半天没有发现自己满意的.所以就初

使用PyQt GUI 写一个朗读软件

使用PyQt GUI 写一个朗读软件,

  石材下料软件,北京像素软件,想学软件编程一直想找一款能朗读的软件,需支持批量朗读本地文件(如文本/PDF等). 但找了半天没有发现自己满意的. 所以就初次尝试使用PyQt的GUI加pyttsx3库自己用Python写了一个简单的内容朗读器.支持在不联网的情况下批量朗读内容(网页/文本/可编辑式PDF),支持调用近40种语音(包括常用的国语/粤语/英文等),能够倍速/音量/朗读人物调节.另外软件支持自定义保存和加载播放列表,包括统计播放次数,朗读内容查看及文件筛选等. 这样以后朗读内容时只需先批量添加内容,然后选中单项或批量多项内容后播放即可,总之如播放音乐一样操作就可以啦. 哈哈... 终于可以摆脱每读完第一篇内容,下一篇内容又要切换的繁琐了..

  优点是:效果较好,而且支持文本/网页/PDF 缺点是:1.不能连续播放,播放完当前网页或PDF后需手动切换至下一个文档或网页播放 2.有的网页或者PDF进行阅读时会卡住,所以需要先处理下,如网页用简悦或自己用Python库处理下简化格式,针对PDF则提取出文本内容再来朗读.

  使用了两款Chrome/Edge浏览器插件,使用时需要选中网页内容再进行朗读,不能批量朗读,也不能自动朗读下一个内容,也不能支持网页外的文本类及PDF类文件朗读.

  有哪些将网页上文本转换成语音进行朗读的应用或者扩展?14 赞同 · 4 评论回答

  找了一圈,在Windows下找到一款软件,名字就是朗读女,看了一下,能阅读各类格式的文档,功能支持上还真不错,就是感觉安装配置有点麻烦,而且手上Windows用的少,暂时就没下载试了.

  只有移动端应用,没有发现桌面端的应用.而且功能上也不支持批量添加链接/文件进行朗读.就算使用模拟器在桌面能运行起来,也是实现不了我要批量添加朗读本地文件的功能.

  比较麻烦,每阅读一个文件又得去点一次播放,而且每次打开新的PDF文件,点播放时又会使用系统初始的语音设置.另外在朗读效果上相对不太满意.

  使用了mac系统的Say命令,朗读效果还行,但和pyttsx3对比了下,还是决定使用pyttsx3来实现.

  想想,自己的需求也不复杂,于是就想着能不能使用Python上的轮子自己搞搞,然后发现以下几篇有参考价值的文章 .

  由于不太想联网使用,也不想生成太多的mp3,生成耗时且文件占用磁盘.最终考虑使用了Python pyttsx3 组件库来实现.这个库的使用比较简洁,功能相当强大了,可以支持多个朗读者,朗读速度,朗读音量设置.而且支持保存朗读为mp3文件,非常nice!

  这里常见的会踩一个坑,在这里提及一下,使用pyttsx3在多线程中调用有个Bug,具体链接如下:

  所以你使用时,调用pyttsx3的runAndWait()方法时记得在UI界面的子线程另起子进程来调用.

  详细可参考以下链接,原文作者对常见的在线转换服务进行了对比,最终推荐使用的是腾讯的在线转换服务.

  另外还可以使用GitHub上有人提及推荐的谷歌TTS语音转换库,有时间可以再尝试下,作为备用.

  主要功能界面如下图,包括批量添加朗读文件/开启批量朗读/保存朗读列表/加载朗读列表/设置朗读语音/朗读数据统计/当前朗读状态展示/文本内容查看等.

  打包这一块,暂时还没有尝试,所以就先不写了.所以这里发个代码先,有时间再整个通用的独立运行包.

  由于第一次使用PyQt组件来开发小应用,所以不是很熟练,另外如果对你有用,或者测试使用中发现什么问题,也乐意欢迎你的反馈.

  我是一只热爱学习的小胖子,如果你也热爱学习,并且对SuperMemo感兴趣,欢迎你转发和评论!

很赞哦!