首页 >>  正文

怎么把小说转成文件

来源:baiyundou.net   日期:2024-08-26

作者:网罗灯下黑

语音 AI 合成这个选题我们已经写过一篇了,对比来对比去,还是微软家的晓晓说话好听。

而正因为微软这个效果好,所以每当看到有人基于微软 TTS 搞出来的软件,我都会上手把玩一下,像 GitHub 开源的这个 edge-TTS-record,是把 Edge 浏览器里大声朗读的接口封装了过来,然后通过内录实现生成语音文件的功能。

像吾爱破解论坛上经常出现的这种易语言的写的工具,封装的则是微软语音合成 Demo 的接口,把在线生成的音频缓存给提取了出来,从而实现保存语音文件到本地的效果。

两种都是通过封装在线接口实现的白嫖,可我总觉得这些微软语音合成二次封装的工具都有一个问题——即找不到适用场景。

诚然,如果你是个不想真人念稿的视频制作者,或者有这样那样工作上的用途,这些工具已经能一定程度上的满足需求。

但对于更多的人来说,比如我,除了尝鲜和水一篇文章外,别无他用,真不如 @ag2s20150909 大佬开源的那个安卓上的 TTS 目标明确,搭配阅读器来在线听小说。

用过 TTS 听小说的小伙伴应该知道,比起传统的像朗读女那种老式语音朗读软件,或比起其他大厂的语音合成工具,效果简直是降维打击。

那电脑上或 iOS 上想用微软语音合成听书,又该怎么办呢?我研究了两天有了些心得,特来分享给大家。

微软语音听书

说起电脑上听书,我第一时间想到的就是用 Edge 浏览器的大声朗读,事实上也确实可以听,在线小说站单章就能听,本地的 txt 文件用 Edge 打开后也能听。

但问题在于前者需要我们听完一章后手动切换下一章,后者虽能整本打开,但又因为文本体积太大而导致大声朗读罢工。

直到我在吾爱破解上看到了 @xljxlj 制作的「微软语音听书」。

原理前面也提到了,就是利用 Demo 的接口在线把文字生成语音,可又因为微软 TTS 是没有提前缓存操作的。

所以微软语音听书这里加了个预加载的功能,即生成第一段语音后,会连续生成后几段的语音,以便我们能安心的连续听书。

第一次打开软件,我们要去右下角找到「打开文件」并导入本地的 txt 文件:

如果你和我一样导入的是 400 多万字近 10 MB 大小的《雪中悍刀行》,那导入过程略慢,因为它会把小说按章节切割:

切割后的文本会在软件同目录下所生成的「data」文件夹内。

此时我们要做的就是去右上角选择语音和风格,比如晓晓的撒娇风格。

然后,微软语音听书就开始干活了,注意,这里的缓存单位是段。

具体的语音文件能在软件同目录下「temp」临时缓存文件内找到。

我们只要选择「开始」,就可以听缓存好的小说了。

要说有啥注意的,微软语音听书这个工具默认的缓存上限只有 30 段,听了 1 段就会删掉 1 段的缓存。

如果需要提高这个缓存上限,可以用文本打开「config.ini」配置文件,把缓存数改高。

至于听到一半有事不听了,放心关闭软件,这个微软语音听书可以自动记录听到了哪里,但美中不足的是,每次关闭都会清干净当前音频缓存,需要再次加载。

电脑上的在线听书方案,大体上就是利用 Edge 的大声朗读听在线小说,用微软语音听书这个工具听本地小说。

那 iOS 呢?实话实话,没找到最佳的方案,我用了 iOS 上的 Edge 浏览器访问在线小说网站,或用在线阅读器打开本地文件,再使用大声朗读,也试了 Stay 2 装了与之相关的脚本。

可无一例外,效果都很差,做不到连续听书的效果,剩下的思路只有 iOS 上用安卓虚拟机再安装使用 TTS,这种旁门左道的做法。

本想着放弃,但我用微软语音听书的时候,不是发现它是缓存了多个本地音频文件嘛。

这给了我曲线救国的新思路——在线听不了,咱本地生成后导到手机上听。

曲线救国

顺着这个曲线救国的新思路研究下去,我发现我们需要一个批量文字转语音的微软 TTS 工具。

上一节的「微软语音听书」虽然可以批量缓存音频到本地,但为了稳定性,人家只能一段一段的缓存,也就是说一整本小说缓存下来,那得上万个音频文件,明显不适合现在使用。

理论上说,我们也可以用 Aspeak 这个微软语音合成的命令行工具,搭配 FFmpeg 这个音视频处理的命令行工具,编写脚本实现批量处理。

但门槛高不说,这么折腾属实没必要,因为我去吾爱破解、GitHub 等网站扒拉了俩小时后,找到了支持批量转换工具,TTS-VUE。

安装好后,我见到了胜利的曙光,这个工具可以搞定批量转换。

但也有一些坑需要避,因为是一次性生成语音文件,而微软那边的白嫖接口又有字数限制,所以分割文本这事需要我们自己解决。

我找来了一年前碰到的「TXT 杀手」,你可以按章节分割,也可以按字数分割,保险起见我这里按 2000 字切割了《雪中悍刀行》(后测试可以更多)。

于是生成了 2000 多份的文件(这怨种小说字确实多)。

但用 TXT 杀手分割出来的文本是 ANSI 编码的,微软 TTS 只支持 UTF-8 编码,所以需要批量转换一下编码。

网上搜到的批量转编码工具大多是 VBS 脚本,从吾爱上找了个 19 年的小工具,选择「添加文件夹」,然后「转换」,两千多份文本就都转成了 UTF-8 格式了。

把转好的文本添加到 TTS-VUE 内,批量生成的语音文件就搞定了。

我试了 2000 多份文本直接往里拖,结果不出意外的崩溃了,2000 字的文本 10 个 10 个往里扔,不到 1 分钟就转换好了。。。

你说这算成功了嘛?

总结

我看了下 2000 字生成的每个音频文件在 7 分钟左右,这明显还不是一个完善的解决答案,但剩下的,无非就是调一下分割字数等参数,找找音频合成的工具了(格式工厂能搞定)。

但这两天没功夫折腾了,就当挖个坑,感兴趣的小伙伴可以顺着这个思路玩下去。

这篇写得长也杂,但我的目的是想更具体的为大家提供思路,工具嘛都是好工具,无论是在线预加载的「微软语音听书」,还是批量转换的「TTS-VUE」,亦或「TXT 杀手」和「编码转换器」。

虽然这篇说成功也没那么成功,但当你碰到电脑听小说,文字转语音,TXT 文本处理的时候,别忘了这些我已经帮你踩过坑的工具,over。

本文首发于程序员不高兴,未经授权请勿转载!

一如既往感谢各位小伙伴的支持和关注!

","force_purephv":"0","gnid":"9443b66a24d66ddad","img_data":[{"flag":2,"img":[{"desc":"","height":"336","title":"","url":"https://p0.ssl.img.360kuai.com/t0124c300df80242c36.jpg","width":"600"},{"desc":"","height":"425","title":"","url":"https://p0.ssl.img.360kuai.com/t01449d620edd2a3a9a.jpg","width":"600"},{"desc":"","height":"572","title":"","url":"https://p0.ssl.img.360kuai.com/t01392228f0a069d877.jpg","width":"600"},{"desc":"","height":"293","title":"","url":"https://p0.ssl.img.360kuai.com/t0184860245a5aef62c.jpg","width":"600"},{"desc":"","height":"278","title":"","url":"https://p0.ssl.img.360kuai.com/t01f9c02c4fa803aa48.jpg","width":"600"},{"desc":"","height":"319","title":"","url":"https://p0.ssl.img.360kuai.com/t0164925b79ca92996e.jpg","width":"600"},{"desc":"","height":"320","title":"","url":"https://p0.ssl.img.360kuai.com/t018014fcd65c3406c1.jpg","width":"600"},{"desc":"","height":"262","title":"","url":"https://p0.ssl.img.360kuai.com/t01779636549f0fc07a.jpg","width":"566"},{"desc":"","height":"285","title":"","url":"https://p0.ssl.img.360kuai.com/t01971d2fe3c2c56ec9.jpg","width":"600"},{"desc":"","height":"321","title":"","url":"https://p0.ssl.img.360kuai.com/t01261cd91d822de956.jpg","width":"600"},{"desc":"","height":"263","title":"","url":"https://p0.ssl.img.360kuai.com/t012ddb23a8eec3613f.jpg","width":"566"},{"desc":"","height":"250","title":"","url":"https://p0.ssl.img.360kuai.com/t016ab16bd7edca71c5.jpg","width":"600"},{"desc":"","height":"326","title":"","url":"https://p0.ssl.img.360kuai.com/t01e0a7388c092aa02d.jpg","width":"600"},{"desc":"","height":"466","title":"","url":"https://p0.ssl.img.360kuai.com/t0184d61ac587922f84.jpg","width":"600"},{"desc":"","height":"264","title":"","url":"https://p0.ssl.img.360kuai.com/t018572698a65c6c279.jpg","width":"580"},{"desc":"","height":"246","title":"","url":"https://p0.ssl.img.360kuai.com/t019c078ce1769b534d.jpg","width":"600"},{"desc":"","height":"386","title":"","url":"https://p0.ssl.img.360kuai.com/t014426d962327d5b76.jpg","width":"600"},{"desc":"","height":"442","title":"","url":"https://p0.ssl.img.360kuai.com/t01dc654b44e0086a6f.jpg","width":"600"},{"desc":"","height":"389","title":"","url":"https://p0.ssl.img.360kuai.com/t01cd8365452413ff85.jpg","width":"600"},{"desc":"","height":"427","title":"","url":"https://p0.ssl.img.360kuai.com/t012a49a8262d4ce164.jpg","width":"600"},{"desc":"","height":"276","title":"","url":"https://p0.ssl.img.360kuai.com/t011fd340677a6bb841.jpg","width":"498"}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"hbase","pub_time":1662085810000,"pure":"","rawurl":"http://zm.news.so.com/71333302b77dad16a059677d61d5df51","redirect":0,"rptid":"d8f492bc94f53d0e","s":"t","src":"什么值得买","tag":[{"clk":"ktechnology_1:微软","k":"微软","u":""},{"clk":"ktechnology_1:ios","k":"ios","u":""}],"title":"到底怎样才能让微软萌妹帮我读小说?

易叶纪2274如何将网页中的小说转成TXT文档?? -
韦珊吕19571021036 ______ 如果网页是一章一章独立的多个网页,那好象还真没什么简便的方法,就得一页一页的复制粘贴或是把每个网页另存为纯文本格式 建议你用百度搜一下小说的TXT下载,应该有的

易叶纪2274怎样把下载的小说转换成TXT格式小说 -
韦珊吕19571021036 ______ 你可以新建文本文档,然后把你下载的小说复制到里面就可以了.在桌面点右键-新建-文本文档-复制-粘贴-保存.

易叶纪2274如何将所有格式电子书转换成txt格式,越简单越好
韦珊吕19571021036 ______ 呵呵 我也是一个爱看小说的人··我一直都是这样转的··自认为还是比较简单··希望你采纳·· 打开其他格式的小说 按ctrl+A全选 然后复制 在桌面上点右键 新建一个文本文档(就是txt的)然后把内容粘贴在里面 保存就行了·· 还是很简单吧··

易叶纪2274怎样把小说阅读下载器下载的小说变成txt格式文本? -
韦珊吕19571021036 ______ 一般下载的都是压缩文件,只要把文件解压就可以了,解压后会自动出现TXT文本,就可以直接复制文件.

易叶纪2274怎么把doc转换成txt -
韦珊吕19571021036 ______ 选择要转换的word文件打开,点击菜单栏的文件(F)按钮,在下拉菜单中点击另存为.找个合适的文件夹存放文件,注意查看要存放的文件夹所在磁盘的容量.找到另存为对话框的最下面一行的保存类型,...

易叶纪2274怎么把所有小说转换为doc格式 -
韦珊吕19571021036 ______ 打开TXT,把里面的文字全选-复制,然后到WORD里粘贴就可以了啊 求采纳啊

易叶纪2274在网页上的小说怎样才可以变成电子书弄到MP3或者手机上? -
韦珊吕19571021036 ______ 打开记事本,把你需要的网络小说复制到记事本上,保存.这样电子书就以txt格式保存起来了...推荐你个网站 www.feiku.com 上面的小说支持txt格式,还有其他的很多格式...

易叶纪2274怎么转换小说格式为txt -
韦珊吕19571021036 ______ 3种小说转换工具的利器 ( html转换为txt,jar,pdf) html转换为txt html转换为jar html转换为pdf 给大家提供一个txt转换JAR工具下载,很多手机都不能打开TXT文本的小说,使用txt转换JAR工具可以把TXT小说转换成JAR格式,再放入手机内 txt转换JAR工具使用方法:打开txt转换JAR工具选择你需要制作的文件.一般都是选择切割后的.因为JAR格式的阅读器支持不了太大的JAR文件 我们选择切割后的300K的文件吧 一般我都是选择这两项的 把序列排列正确哦! 这里需要输入大小....

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024