iOS17で自分の声を作ってみました

この秋にリリースされる予定の iOS17では、Personal Voiceという新機能が搭載されています。 自分の声をiPhone に学習させ、どんな文章でも自分の声で読んでもらうことができる機能です。

Personal Voiceの作り方

まず、iOS17のiPhoneで、言語設定を英語にしてください。 設定の「Accessibility」のメニューの「Personal Voice」という項目から「Create a Personal Voice」を選び、あとは画面の指示に従いましょう。

15分ほどずっと英文を読み続けなくてはいけないので、ちょっとつらいです。 周囲に騒音がない場所でやってくださいね。

あとは端末を電源につないで、一晩待ちましょう。 (音声はiPhone内部で生成されますが、だいぶ時間がかかります。気長に待ちましょう。)

Personal Voiceの使い方

Personal Voiceは、iOS17の新機能Live Speechなどで使えます。

また、開発者はspeech APIを使うことによって、好きな文章を読ませることもできます。

AVSpeechSynthesizer.requestPersonalVoiceAuthorizationで、Personal Voiceを使うためのAuthをとり、AVSpeechUtteranceを作ってそのvoiceに取得したPersonal Voiceを付加するだけなので、簡単です。

import AVFoundation

    func speechMyVoice(){

        let synthesizer = AVSpeechSynthesizer()

        AVSpeechSynthesizer.requestPersonalVoiceAuthorization(completionHandler: { status in
            if status == .authorized {
                let personalVoices = AVSpeechSynthesisVoice.speechVoices().filter{$0.voiceTraits.contains(.isPersonalVoice)}
                let myUtterance = AVSpeechUtterance(string: "He was an old man ...")
                myUtterance.voice = personalVoices.first
                synthesizer.speak(myUtterance)
    }

作ってみたPersonal Voice

さっそく、自分でもPersonal Voiceを作って、ヘミングウェイを読ませてみました。 自分の英語の声を聞く機会がないんですが、かなり似ているような気がします。 (英語の発音が悪いのはご容赦ください。)

iPhone が作ってくれた私の音声

自分で直接読んでみた音声(時々文を間違えて読んでたりします……。)

iOS17のパブリックベータはそろそろ配布されるはずですので、一般の方も試せるようになると思います。

「発話できない、または発話能力を失いつつある人々のために開発された機能」なのですが、いろいろと応用がききそうな気もします。 今は英語だけですが、日本語にも対応してほしいですよね。