アプリで使用される NSSpeechSynthesizer 派生音声エンジンのカスタム発音を設定しようとしています。しかし、私は問題に直面しています。
NSSpeechSynthesizer クラス リファレンスで指定されたキーを使用して音声エンジンに追加する新しい辞書を作成していますが、ドキュメントは非常にわかりにくく、いくつかの重要な情報が欠落しています。関連するセクションは、次のリンクで「音声辞書のプロパティ キー」と題されています: https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSSpeechSynthesizer_Class/Reference/Reference.html
NSSpeechDictionaryPronunciations キーには NSSpeechDictionaryEntryPhonemes および NSSpeechDictionaryEntrySpelling と同じ情報が含まれているように見えるため、これには少し混乱しています。また、すべてのキーが必要かどうか、オプションの場合、各キーの有効なデータを構成するもの、または既に初期化された音声エンジンから既存の値を取得する方法についての情報もありません。また、新しい音声辞書をいつ追加できるかについての詳細もわかりません。
このドキュメントから収集した内容に基づいて、音声辞書は各キーがオプションであり、エンジンによって既に使用されているデータに追加され、新しく追加された辞書が既存のデータよりも優先されるということです。競合です。ドキュメントに詳述されているように、NSSpeechDictionaryPronunciations キーのみを含む辞書を定義しました。値は、キー NSSpeechDictionaryEntrySpelling および NSSpeechDictionaryEntryPhonemes を含む NSDictionary オブジェクトの配列です。-addSpeechDictionary: を呼び出すと、音声エンジンは既に初期化されています。
ただし、これはエラーをスローします。スローされる実際のエラー コードは、選択した音声によって異なりますが、常にエラーがスローされ、定義された発音は効果がありません。
私は何か間違ったことをしているとしか思えませんが、この機能の使用方法に関する情報がどこにも見つからないため (非常にあいまいなドキュメントを超えて)、少し行き詰まっています。誰かがこの機能の経験があり、私を正しい方向に向けることができますか? または、これをより詳細にカバーする本または何かの方向性を教えてください。Googleは役に立たなかった...