OS X의 say
명령은 일부 작업 (예 : Skype의 '연락처가 온라인 상태가되면 알림')에 유용하지만 일부 이름을 잘못 발음하고 있습니다. say
단어를 다르게 발음 하도록 가르치는 방법이 있습니까?
예를 들어 다음을 시도하십시오.
say "Hi, Joel Spolsky"
'ol'은 'old'보다는 'ball'처럼 들립니다. 새로운 언어 규칙을 가르치려고하기보다는 "Pronounce Spolsky like this"라는 예외를 추가하고 싶습니다. 애플이 원하는대로 "iphone"을 발음 할 수있는 방법이 있다고 생각합니다.
업데이트 -몇 가지 연구를 한 후에, 내가 배운 것이 있습니다.
- 텍스트 음성 변환은 텍스트를 음소로 변환 한 다음 음성을 사용하여 음소를 오디오로 변환합니다. 음성을 변경해도 음소에는 영향을 미치지 않습니다.
- 음성 합성 관리자를 위한 몇 가지 기능이 음소에 텍스트를 회전 및 방법 음성 사전 등록 새 텍스트 - 음소지도를 추가합니다. 그러나 Apple의 음성 사전은 이진 형식이어야합니다. plist XML을 찾지 못했습니다.
- 사용하여
dtrace
실행하는 동안say
, 나는 /System/Library/PrivateFrameworks/SpeechDictionary.framework/Resources에서 열 몇 가지 흥미로운 파일을 발견했다. 아마도 음성 사전 일 수도 있지만 XML 인 Homophones를 제외하고 모두 이진입니다. Homophones에 항목을 추가해도 아무런 효과가 없습니다. 음성 텍스트로 사용됩니다. 또한 Apple에서 서명 한 코드이므로 변경하면 일부 프로그램이 작동하지 않을 수 있습니다.- 접두사 사전
- 카트 이름
- 카트라이트
- 기호 사전
- 호모 폰
- 있습니다 방법으로 응용 프로그램 인터페이스 요소의 텍스트 버전 VoiceOver를 작동하므로, 개발자가 무료로 얻을 수있는 많은 추가 할 수는 있지만, 거기에 까다로운 비트 . 여기서 표준은 필요에 따라 발음 철자를 사용하는 것으로 보입니다.
내 추측은 :
say
Speech Synthesis Manager 위에있는 간단한 코드 계층입니다. Apple 개발자는 대체 음소 매핑을 위해 음성 사전 plist로 경로를 지정하는 명령 줄 옵션을 쉽게 추가 할 수 있지만 그렇지 않았습니다. 더 나은 글을 작성하는 것이 유용한 오픈 소스 프로젝트 일 수 있습니다say
.- Skype는 음성 합성 관리자를 직접 사용하여 친구의 이름을 발음하는 방식을 바꿀 수있는 방법이 없습니다.
- 커맨드 라인 버전을 만드는 가장 쉬운 방법
say
은 JRobert가 제안한 방법입니다.
다음은 Doug Harris의 맞춤법 제안을 사용한 빠른 구현입니다.
#!/bin/sh
echo $@ | tr '[A-Z]' '[a-z]' |
sed "s/spolsky/spowlsky/g" |
/usr/bin/say
마지막으로 몇 가지 재미있는 명령 줄이 있습니다.
# Apple is weird
sqlite3 /System/Library/PrivateFrameworks/SpeechDictionary.framework/Resources/Tuples .dump
# Get too much information about what files are being opened
sudo dtrace -n 'syscall::open*:entry { printf("%s %s",execname,copyinstr(arg0)); }'
# Just fun
say -v bad "Joel Spolsky Spolsky Spolsky Spolsky Spolsky, Joel Spolsky Spolsky Spolsky Spolsky Spolsky"
echo "scale=1000; 4*a(1)" | bc -l | say
say -v alex 'Spolsky' ; say -v vicki 'Spolsky'; say -v bad 'Spolsky Spolsky Spolsky Spolsky Spolsky Spols'
. 음성 목록은 시스템 환경 설정-> 음성-> 텍스트 음성 변환에서 찾을 수 있습니다. 문제는 음성 합성이 아니라 음소 변환에 있습니다. 라이브러리를 직접 호출하는 경우 사용자 정의 음소를 설정할 수 있습니다. developer.apple.com/mac/library/documentation/Carbon/Reference/… Apple 디스크 개발자 가 .plist를 사용했는지 확인하기 위해 디스크 검색 중 ...
say
함께 사용 중인 음성 변경을 시도 했습니까-v
?