Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
xuning
/
sherpaonnx
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
Fangjun Kuang
2025-09-04 14:00:14 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
GitHub
2025-09-04 14:00:14 +0800
Commit
e254c38f08e2ef8e21d37accb1b4ad9c60d65b71
e254c38f
1 parent
0823ddcb
Fix cantonese vits tts (#2558)
显示空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
10 行增加
和
7 行删除
sherpa-onnx/csrc/lexicon.cc
sherpa-onnx/csrc/offline-tts-vits-impl.h
sherpa-onnx/csrc/lexicon.cc
查看文件 @
e254c38
...
...
@@ -150,7 +150,7 @@ std::vector<TokenIDs> Lexicon::ConvertTextToTokenIds(
return
ConvertTextToTokenIdsNotChinese
(
text
);
default
:
SHERPA_ONNX_LOGE
(
"Unknown language: %d"
,
static_cast
<
int32_t
>
(
language_
));
exit
(
-
1
);
SHERPA_ONNX_EXIT
(
-
1
);
}
return
{};
...
...
@@ -171,7 +171,7 @@ std::vector<TokenIDs> Lexicon::ConvertTextToTokenIdsChinese(
os
<<
"Input text in bytes:"
;
for
(
uint8_t
c
:
text
)
{
os
<<
" 0x"
<<
std
::
setfill
(
'0'
)
<<
std
::
setw
(
2
)
<<
std
::
right
<<
std
::
hex
<<
c
;
<<
static_cast
<
int32_t
>
(
c
)
;
}
os
<<
"
\n
"
;
os
<<
"After splitting to words:"
;
...
...
@@ -261,7 +261,10 @@ std::vector<TokenIDs> Lexicon::ConvertTextToTokenIdsChinese(
if
(
eos
!=
-
1
)
{
this_sentence
.
push_back
(
eos
);
}
if
(
!
this_sentence
.
empty
())
{
ans
.
emplace_back
(
std
::
move
(
this_sentence
));
}
return
ans
;
}
...
...
@@ -280,7 +283,7 @@ std::vector<TokenIDs> Lexicon::ConvertTextToTokenIdsNotChinese(
os
<<
"Input text in bytes:"
;
for
(
uint8_t
c
:
text
)
{
os
<<
" 0x"
<<
std
::
setfill
(
'0'
)
<<
std
::
setw
(
2
)
<<
std
::
right
<<
std
::
hex
<<
c
;
<<
static_cast
<
int32_t
>
(
c
)
;
}
os
<<
"
\n
"
;
os
<<
"After splitting to words:"
;
...
...
sherpa-onnx/csrc/offline-tts-vits-impl.h
查看文件 @
e254c38
...
...
@@ -367,7 +367,7 @@ class OfflineTtsVitsImpl : public OfflineTtsImpl {
SHERPA_ONNX_LOGE
(
"Not a model using characters as modeling unit. Please provide "
"--vits-lexicon if you leave --vits-data-dir empty"
);
exit
(
-
1
);
SHERPA_ONNX_EXIT
(
-
1
);
}
frontend_
=
std
::
make_unique
<
Lexicon
>
(
...
...
@@ -382,13 +382,13 @@ class OfflineTtsVitsImpl : public OfflineTtsImpl {
if
(
meta_data
.
jieba
&&
config_
.
model
.
vits
.
dict_dir
.
empty
())
{
SHERPA_ONNX_LOGE
(
"Please provide --vits-dict-dir for Chinese TTS models using jieba"
);
exit
(
-
1
);
SHERPA_ONNX_EXIT
(
-
1
);
}
if
(
!
meta_data
.
jieba
&&
!
config_
.
model
.
vits
.
dict_dir
.
empty
())
{
SHERPA_ONNX_LOGE
(
"Current model is not using jieba but you provided --vits-dict-dir"
);
exit
(
-
1
);
SHERPA_ONNX_EXIT
(
-
1
);
}
if
(
meta_data
.
frontend
==
"characters"
)
{
...
...
@@ -419,7 +419,7 @@ class OfflineTtsVitsImpl : public OfflineTtsImpl {
SHERPA_ONNX_LOGE
(
"Not a model using characters as modeling unit. Please provide "
"--vits-lexicon if you leave --vits-data-dir empty"
);
exit
(
-
1
);
SHERPA_ONNX_EXIT
(
-
1
);
}
frontend_
=
std
::
make_unique
<
Lexicon
>
(
config_
.
model
.
vits
.
lexicon
,
config_
.
model
.
vits
.
tokens
,
...
...
请
注册
或
登录
后发表评论