6个版本
0.1.0 | 2023年11月23日 |
---|---|
0.0.5 | 2023年10月29日 |
#7 in #语音合成
在 2 crate 中使用
67KB
1.5K SLoC
ssml-rs
用于编写SSML的Rust库。
目前,ssml-rs
专注于支持主要云文本转语音服务(微软Azure认知语音服务、谷歌云文本转语音、亚马逊Polly)和pyke Songbird所支持的SSML子集。
let doc = ssml::speak(Some("en-US"), ["Hello, world!"]);
use ssml::Serialize;
let str = doc.serialize_to_string(&ssml::SerializeOptions::default().flavor(Flavor::AmazonPolly))?;
assert_eq!(
str,
r#"<speak xml:lang="en-US">Hello, world!</speak>"#
);
lib.rs
:
用于编写SSML文档的实用程序。
SSML的根文档是 Speak
。使用 [speak()
] 快速创建文档。
let doc = ssml::speak(Some("en-US"), ["Hello, world!"]);
使用 Serialize
将SSML元素转换为它们的字符串XML表示形式,然后可以将其发送到您选择的语音合成服务。
use ssml::Serialize;
let str = doc.serialize_to_string(&ssml::SerializeOptions::default().pretty())?;
assert_eq!(
str,
r#"<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
Hello, world!
</speak>"#
);
依赖关系
~15KB