今天,我仔细地分析了一下“文章朗读工具”的功能。
感觉不是很难
首先有一个可控制的音库,所有音都有个索引,可以根据索引来找音,索引该是一个结构体,里面存放,索引的数值,音的拼音,音的位置。
第二有一个主文件加载音库,然后可以加载文章,把每个字转化成拼音之后,与音库中的拼音匹配,匹配后,记录索引值,然后排列索引值,开始朗读的时候可以根据索引找到音的位置而发音
这两个似乎是必不可少的
如果需要发音更人性化,那就需要再添加一个文件,来记录词了,记录的词可以是汉字,自写发音。然后在主文件加载文章之后,把每个字转化成拼音之前,先匹配所有的词,匹配了词之后,用记录里面的发音替换掉转换的发音,然后用记录里面的发音找索引,这样可以使每个字尽可能的根据上下文的语境来发音
我感觉,其实,需要的只是这三部分
我也想写一个可以朗读文章的工具,但是我没有一个标准一些的音库,我从baidu上下载的baidu的读音音库,里面的读音十分不适合用在文章朗读工具上。
其实,仔细地想过之后,我感觉日本的“初音未来”并不是多么神秘的东西
日文只有2个声调,中文却有5个,判断声调的地方肯定比中文容易
日文元音辅音什么乱七八糟的都算上不到110个,而中文却有201个,判断音的地方也肯定比中文容易
音乐拍子是固定的,所以唱歌速度是固定的,只要在有字的地方唱音,没有字的地方停顿,就可以做到了,声调的高低,对发音没有影响。
剩下的就是人造发音的问题(我想,难的地方,可能就是这里。)