ekho
ekho copied to clipboard
添加新声音报错
您好,老师请教一下哈,(ubantu系统)我从网站https://eguidedog.net/doc/doc_make_new_voice_cn.php按照步骤录制了0-9的wave文件,把0-9文件放在pinyin文件中,删除pinyin.index,pinyin.voice文件, 执行./ekho 123 报错: No voice data file is found in /usr/local/share/ekho-data/pinyin Fail to setVoice of dictionary Voice sample rate not set. Maybe you have not setVoice first. Audio::processorStream not init pa_simple_new() failed: Invalid argument pa_sample_spec(format=3,rate=0,channels=) Voice sample rate not set. Maybe you have not setVoice first. Voice file not found. processorStream not initialized processorStream not initialized Assertion 'p' failed at ../src/pulse/simple.c:386, function pa_simple_drain(). Aborting. 已放弃 麻烦帮我看下哈
你应该曾经运行sudo make install,之后系统就会在/usr/local/share/ekho-data里找语音数据。你试试运行一下sudo make uninstall卸载。之后再运行./ekho 123,它就会在当前目录里找ekho-data/pinyin。
按照您说的执行啦,但是还是报错
你的pinyin目录下好像没有de5.wav文件,你需要按照文档那样复制一个de5.wav,这是用于检测音频格式的固定文件。
报错:Audio::setTempo out of range: 402
你应该可以听见声音吧。这是一个警告。它从de5.wav的时长来自动调整语速。由于de5.wav并不是真正的“的”的录音,而是yi1.wav的复制,所以计算超出预期。
听不到声音啊
你把音频文件打包发上来我调试一下吧。
wav-me.zip 这个是我录的 wav-示例.zip 这个是我在文档中下载的,都试了一下,报一样的402,麻烦您啦
崩溃的问题已修复,请从git下载最新版本。
另外,你的音频文件命名有问题,文件名后面那个数字是声调,你全部都写成第一声调了,需要改一下。
老师,是只需要下载修复的文件吗?(感觉老师提醒,声调问题已经改好啦)还是直接下载master,直接替换之前的ekho-9.0目录?
下载master
下载master怎么编译啊?
和9.0一样的编译方法,见INSTALL文件。
老师,按照install方式,运行能够转语音,我把新声音放在pinyin文件夹下,删除pinyin.index,pinyin.voice文件。
sudo make uninstall卸载。之后再运行./ekho 123没有声音,也没报错
运行./ekho 123 -d,把输出贴出来看看。
我换了一个树莓派的喇叭,现在456789有声音,123播不出来,使用的wav-示例..wav录音,分段截图的哈,麻烦您帮忙看下哈
@hgneng 您好, 我也尝试使用ekho-master以及上面聊天记录中的"wav-示例.zip"中的音频,修改单个音频的音调之后,进行替换声音,然后输入./ekho '1234567890',可以正常播放,声音有点像电子音,和录的声音有差别,只能勉强听出来是自己录的声音,并且会提示Audio::setTempo out of range: 541,这是正常的吗???
截图如下:
@liunaqq 根据你的描述,我觉得情况可能是音量太低,或者时长太短导致系统声音驱动无法完整播放。你可以试试-o 123.wav输出到文件,然后把文件放在Windows或Linux上用Audacity去查看这个文件的波形是否正常。
@hanyuanzhong “Audio::setTempo out of range”是不太正常的,但也可以使用。原因是我根据"的“字的音频长度来猜测需要调整的语速。但是因为这个”的“字的音频其实是从”一“字直接复制的,时长比例不合适,导致计算不符合期望。最终的结果应该是每一个字都被调整得尽可能慢的速度读出来。你录一个时长短一些的de5.wav,效果会改善。
@hanyuanzhong“Audio::setTempo out of range”不太正常,但也可以使用。原因是我根据“字的音频长度来猜测需要调整的语速。但是因为这个”的“字的音频其实是”从“一”字直接复制的,时长比例不合适,导致计算不符合期望。最终的结果应该是每个字都被调整得需要慢速的读出来。你记录一个时长短的一些de5.wav ,效果会改善。
好的,我重新录制了de1,然后改成了de5,替换之后,已经搞定了,声音现在好很多很多了,感谢,感谢
@liunaqq 根据你的描述,我觉得情况可能是音量太低,或者时长太短导致系统声音驱动无法完整播放。你可以试试-o 123.wav输出到文件,然后把文件放在Windows或Linux上用Audacity去查看这个文件的波形是否正常。
谢谢老师,我的音标标错了。