Bea*_*eau 5 text-to-speech festival
voice_kal_diphone并且voice_ral_diphone在唱歌模式下正常工作(有声音输出,并且音高对于指定的音符是正确的).
voice_cmu_us_ahw_cg 和其他CMU声音不能正常工作 - 有声音输出,但音高不会根据指定的音符改变.
是否可以使用更高质量的CMU声音获得正确的输出?
工作(音高影响)输出的命令行是:
text2wave -mode singing -eval "(voice_kal_diphone)" -o song.wav song.xml
Run Code Online (Sandbox Code Playgroud)
非工作(音高不受影响)输出的命令行是:
text2wave -mode singing -eval "(voice_cmu_us_ahw_cg)" -o song.wav song.xml
Run Code Online (Sandbox Code Playgroud)
这是song.xml:
<?xml version="1.0"?>
<!DOCTYPE SINGING PUBLIC "-//SINGING//DTD SINGING mark up//EN" "Singing.v0_1.dtd" []>
<SINGING BPM="60">
<PITCH NOTE="A4,C4,C4"><DURATION BEATS="0.3,0.3,0.3">nationwide</DURATION></PITCH>
<PITCH NOTE="C4"><DURATION BEATS="0.3">is</DURATION></PITCH>
<PITCH NOTE="D4"><DURATION BEATS="0.3">on</DURATION></PITCH>
<PITCH NOTE="F4"><DURATION BEATS="0.3">your</DURATION></PITCH>
<PITCH NOTE="F4"><DURATION BEATS="0.3">side</DURATION></PITCH>
</SINGING>
Run Code Online (Sandbox Code Playgroud)
您可能还需要此补丁singing-mode.scm:
@@ -339,7 +339,9 @@
(defvar singing-max-short-vowel-length 0.11)
(define (singing_do_initial utt token)
- (if (equal? (item.name token) "")
+ (if (and
+ (not (equal? nil token))
+ (equal? (item.name token) ""))
(let ((restlen (car (item.feat token 'rest))))
(if singing-debug
(format t "restlen %l\n" restlen))
Run Code Online (Sandbox Code Playgroud)
为了设置我的环境,我使用了festvox fest_build脚本.您也可以单独下载voice_cmu_us_ahw_cg.
| 归档时间: |
|
| 查看次数: |
644 次 |
| 最近记录: |