因为每天固定通勤时间约为三小时。这可是一大笔宝贵的时间,完全可以用来利用起来。智能手机是一个很好的工具。
然而,上班对着电脑,下班若还是对着屏幕,那么眼睛总归是吃不消的。所以我倾向于使用听觉,虽然效率不如阅读,但能把通勤时间有效地利用起来就已经很满足了。
常常阅读的又微信公众号,以及知乎文章。其中有写公众号以及专栏文章是自带语音播报的。这个就很方便。但是绝大多数文章是没有语言朗读功能的。
微信有个小程序叫做讯飞快读,可以免费朗读1500字,这肯定无法满足绝大多数的文章。当然也可以付费提升容量至3万字,但我犹豫了良久,最终还是没有付费。
原因是我身为一个电子信息工程人员,这些原理并不难理解,可以通过开源技术实现。自己可以做出这个功能来,当然,在途中我还能深化学习,何乐而不为呢。
BAT都有免费的AI技术API,语音识别以及合成也不是难事,虽然免费的API有字数限制,但是可以多次调用进行语音合成。我观察到讯飞快读也是分段进行语音合成的。
原理分两步,
一,通过输入的网址获取网页文本内容
二,使用百度语音合成API进行合成语音(免费版单词合成字节上限为1024byte即512个中文字符)
详细代码请见代码页。
现在可以将文字转换为mp3文件并保存在本地。
使用python自动播放保存的音频也很容易写出来。使用已有的库即可。
这样,一个粗糙的文本转语音功能便实现了。
后续加上相应的GUI就很漂亮了。
当然,如果想要商业化,那么还有很多细节需要优化,但现在自己玩一玩用一用是没问题的。