나는 일반 텍스트 파일의 일부 텍스트를 말하기 위해 espeak를 사용하고 있습니다. 그러나 파일의 일부 단어는 별표("*green* beans를 의미했습니까?")로 강조되어 있으며 espeak에서는 해당 단어를 문자 그대로 읽습니다("별표 녹색 별표를 의미했습니까?").
Espeak가 강조점을 올바르게 읽으려면 별표를 무엇으로 바꿔야 합니까?
답변1
Espeak는 일반 텍스트 파일 중간에 배치할 수 있는 SSML(음성 합성 마크업 언어)을 지원합니다.모두올바른 SSML). 찾고 있는 태그는 다음과 같습니다 <emphasis level="...">
. 다른 가능한 태그는 다음과 같습니다.http://espeak.sourceforge.net/ssml.html
Espeak에서는 기본적으로 이를 사용하지 않으므로 이 플래그를 전달해야 합니다 -m
. 예를 들어 다음을 사용할 수 있습니다.espeak -m -f your_file.txt
문서는 매우 간결하므로 가능한 값과 같은 항목을 찾으려면 소스 코드를 자세히 조사해야 할 수도 있습니다. (더 나은 문서를 작성하고 싶지만 9살짜리 문서가 있습니다.병합되지 않은 패치그리고소스 저장소사용할 수 없으므로 프로젝트가 완전히 종료된 것 같습니다. ) 포커스 태그(및 기타 태그)에 대해 가능한 값을 찾으려면Github에서. 그들은:
- 전혀
- 줄이다
- 쉬움
- 강한
- 강한×
예를 들어, Did you mean the <emphasis level="strong">green</emphasis> beans?
따옴표 없이는 작동하지 않습니다( <emphasis level=strong>
HTML에서는 작동하지만 SSML/espeak에서는 따옴표 없이는 작동하지 않습니다).
또는 espeak는 플래그를 사용하여 모두 대문자로 된 단어를 다르게 읽을 수 있습니다 -k
. 명령을 사용하면 espeak -k20 -f your_file.txt
"모두 대문자"로 된 단어의 높이가 변경되는 것을 알 수 있습니다. 이 두 가지 옵션은 혼합되지 않으므로 스트레스를 받을 수 없습니다.그리고피치를 변경하려면 이 두 가지 옵션을 사용하십시오.
그러나 SSML에서는 이를 혼합할 수 있습니다. 즉, Did you mean the <emphasis level="strong"><prosody pitch="75">green</prosody></emphasis> beans?
강조하고 더 높은 음조로 읽혀집니다.