Mulai cepat: Mengonversi teks ke ucapan

Dokumentasi referensi | Paket (NuGet) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Speech SDK tersedia sebagai paket NuGet dan menerapkan .NET Standar 2.0. Anda menginstal Speech SDK di bagian berikutnya dari artikel ini, tetapi periksa terlebih dahulu panduan penginstalan SDK untuk persyaratan lainnya.

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru dan memasang Speech SDK.

  1. Buka perintah di mana Anda menginginkan proyek baru, dan buat aplikasi konsol dengan .NET CLI.

    dotnet new console
    
  2. Pasang Speech SDK di proyek baru Anda dengan .NET CLI.

    dotnet add package Microsoft.CognitiveServices.Speech
    
  3. Ganti isi Program.cs dengan kode berikut.

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    using Microsoft.CognitiveServices.Speech.Audio;
    
    class Program 
    {
        static string YourSubscriptionKey = "YourSubscriptionKey";
        static string YourServiceRegion = "YourServiceRegion";
    
        static void OutputSpeechSynthesisResult(SpeechSynthesisResult speechSynthesisResult, string text)
        {
            switch (speechSynthesisResult.Reason)
            {
                case ResultReason.SynthesizingAudioCompleted:
                    Console.WriteLine($"Speech synthesized for text: [{text}]");
                    break;
                case ResultReason.Canceled:
                    var cancellation = SpeechSynthesisCancellationDetails.FromResult(speechSynthesisResult);
                    Console.WriteLine($"CANCELED: Reason={cancellation.Reason}");
    
                    if (cancellation.Reason == CancellationReason.Error)
                    {
                        Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                        Console.WriteLine($"CANCELED: ErrorDetails=[{cancellation.ErrorDetails}]");
                        Console.WriteLine($"CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
                default:
                    break;
            }
        }
    
        async static Task Main(string[] args)
        {
            var speechConfig = SpeechConfig.FromSubscription(YourSubscriptionKey, YourServiceRegion);      
    
            // The language of the voice that speaks.
            speechConfig.SpeechSynthesisVoiceName = "en-US-JennyNeural"; 
    
            using (var speechSynthesizer = new SpeechSynthesizer(speechConfig))
            {
                // Get text from the console and synthesize to the default speaker.
                Console.WriteLine("Enter some text that you want to speak >");
                string text = Console.ReadLine();
    
                var speechSynthesisResult = await speechSynthesizer.SpeakTextAsync(text);
                OutputSpeechSynthesisResult(speechSynthesisResult, text);
            }
    
            Console.WriteLine("Press any key to exit...");
            Console.ReadKey();
        }
    }
    
  4. Di Program.cs, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Bangun dan jalankan aplikasi konsol baru Anda untuk memulai sintesis ucapan ke speaker default.

dotnet run

Masukkan beberapa teks yang ingin Anda ucapkan. Misalnya, ketik "Saya bersemangat untuk mencoba teks ke ucapan." Tekan tombol Enter untuk mendengar ucapan yang disintesis.

Enter some text that you want to speak >
I'm excited to try text to speech

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakTextAsync untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (NuGet) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Speech SDK tersedia sebagai paket NuGet dan menerapkan .NET Standar 2.0. Anda menginstal Speech SDK di bagian berikutnya dari artikel ini, tetapi periksa terlebih dahulu panduan penginstalan SDK untuk persyaratan lainnya

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru dan memasang Speech SDK.

  1. Buat proyek konsol C++ baru di Visual Studio.

  2. Pasang Speech SDK di proyek baru Anda dengan manajer paket NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  3. Ganti isi main.cpp dengan kode berikut:

    #include <iostream> // cin, cout
    #include <speechapi_cxx.h>
    
    using namespace std;
    using namespace Microsoft::CognitiveServices::Speech;
    using namespace Microsoft::CognitiveServices::Speech::Audio;
    
    auto YourSubscriptionKey = "YourSubscriptionKey";
    auto YourServiceRegion = "YourServiceRegion";
    
    int main()
    {
        auto speechConfig = SpeechConfig::FromSubscription(YourSubscriptionKey, YourServiceRegion);
    
        // The language of the voice that speaks.
        speechConfig->SetSpeechSynthesisVoiceName("en-US-JennyNeural");
    
        auto synthesizer = SpeechSynthesizer::FromConfig(speechConfig);
    
        // Get text from the console and synthesize to the default speaker.
        cout << "Enter some text that you want to speak >" << std::endl;
        std::string text;
        getline(cin, text);
    
        auto result = synthesizer->SpeakTextAsync(text).get();
    
        // Checks result.
        if (result->Reason == ResultReason::SynthesizingAudioCompleted)
        {
            cout << "Speech synthesized to speaker for text [" << text << "]" << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = SpeechSynthesisCancellationDetails::FromResult(result);
            cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;
    
            if (cancellation->Reason == CancellationReason::Error)
            {
                cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl;
                cout << "CANCELED: ErrorDetails=[" << cancellation->ErrorDetails << "]" << std::endl;
                cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl;
            }
        }
    
        cout << "Press enter to exit..." << std::endl;
        cin.get();
    }           
    
  4. Di main.cpp, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Bangun dan jalankan aplikasi konsol baru Anda untuk memulai sintesis ucapan ke speaker default.

dotnet run

Masukkan beberapa teks yang ingin Anda ucapkan. Misalnya, ketik "Saya bersemangat untuk mencoba teks ke ucapan." Tekan tombol Enter untuk mendengar ucapan yang disintesis.

Enter some text that you want to speak >
I'm excited to try text to speech

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakTextAsync untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (Go) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Pasang Speech SDK untuk Go. Periksa Panduan penginstalan SDK untuk persyaratan lainnya

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk membuat modul GO baru.

  1. Buka perintah di mana Anda menginginkan modul baru, dan buat file baru bernama speech-synthesis.go.

  2. Salin kode berikut ke dalam speech_synthesis.go:

    package main
    
    import (
    	"bufio"
    	"fmt"
    	"os"
    	"strings"
    	"time"
    
    	"github.com/Microsoft/cognitive-services-speech-sdk-go/audio"
    	"github.com/Microsoft/cognitive-services-speech-sdk-go/common"
    	"github.com/Microsoft/cognitive-services-speech-sdk-go/speech"
    )
    
    func synthesizeStartedHandler(event speech.SpeechSynthesisEventArgs) {
    	defer event.Close()
    	fmt.Println("Synthesis started.")
    }
    
    func synthesizingHandler(event speech.SpeechSynthesisEventArgs) {
    	defer event.Close()
    	fmt.Printf("Synthesizing, audio chunk size %d.\n", len(event.Result.AudioData))
    }
    
    func synthesizedHandler(event speech.SpeechSynthesisEventArgs) {
    	defer event.Close()
    	fmt.Printf("Synthesized, audio length %d.\n", len(event.Result.AudioData))
    }
    
    func cancelledHandler(event speech.SpeechSynthesisEventArgs) {
    	defer event.Close()
    	fmt.Println("Received a cancellation.")
    }
    
    func main() {
        key :=  "YourSubscriptionKey"
        region := "YourServiceRegion"
    
    	audioConfig, err := audio.NewAudioConfigFromDefaultSpeakerOutput()
    	if err != nil {
    		fmt.Println("Got an error: ", err)
    		return
    	}
    	defer audioConfig.Close()
    	speechConfig, err := speech.NewSpeechConfigFromSubscription(key, region)
    	if err != nil {
    		fmt.Println("Got an error: ", err)
    		return
    	}
    	defer speechConfig.Close()
    
    	speechConfig.SetSpeechSynthesisVoiceName("en-US-JennyNeural")
    
    	speechSynthesizer, err := speech.NewSpeechSynthesizerFromConfig(speechConfig, audioConfig)
    	if err != nil {
    		fmt.Println("Got an error: ", err)
    		return
    	}
    	defer speechSynthesizer.Close()
    
    	speechSynthesizer.SynthesisStarted(synthesizeStartedHandler)
    	speechSynthesizer.Synthesizing(synthesizingHandler)
    	speechSynthesizer.SynthesisCompleted(synthesizedHandler)
    	speechSynthesizer.SynthesisCanceled(cancelledHandler)
    
    	for {
    		fmt.Printf("Enter some text that you want to speak, or enter empty text to exit.\n> ")
    		text, _ := bufio.NewReader(os.Stdin).ReadString('\n')
    		text = strings.TrimSuffix(text, "\n")
    		if len(text) == 0 {
    			break
    		}
    
    		task := speechSynthesizer.SpeakTextAsync(text)
    		var outcome speech.SpeechSynthesisOutcome
    		select {
    		case outcome = <-task:
    		case <-time.After(60 * time.Second):
    			fmt.Println("Timed out")
    			return
    		}
    		defer outcome.Close()
    		if outcome.Error != nil {
    			fmt.Println("Got an error: ", outcome.Error)
    			return
    		}
    
    		if outcome.Result.Reason == common.SynthesizingAudioCompleted {
    			fmt.Printf("Speech synthesized to speaker for text [%s].\n", text)
    		} else {
    			cancellation, _ := speech.NewCancellationDetailsFromSpeechSynthesisResult(outcome.Result)
    			fmt.Printf("CANCELED: Reason=%d.\n", cancellation.Reason)
    
    			if cancellation.Reason == common.Error {
    				fmt.Printf("CANCELED: ErrorCode=%d\nCANCELED: ErrorDetails=[%s]\nCANCELED: Did you set the speech resource key and region values?\n",
    					cancellation.ErrorCode,
    					cancellation.ErrorDetails)
    			}
    		}
    	}
    }                                                
    
  3. Di speech-synthesis.go, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  4. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Jalankan perintah berikut untuk membuat file go.mod yang ditautkan ke komponen yang dihosting di GitHub:

go mod init speech-synthesis
go get github.com/Microsoft/cognitive-services-speech-sdk-go

Sekarang, bangun dan jalankan kode:

go build
go run speech-synthesis

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Sebelum Anda dapat melakukan tindakan apa pun, Anda harus menginstal Speech SDK. Contoh dalam mulai cepat ini berfungsi dengan Runtime Java.

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru untuk pengenalan ucapan.

  1. Buka perintah di mana Anda menginginkan proyek baru, dan buat file baru bernama SpeechSynthesis.java.

  2. Salin kode berikut ke dalam SpeechSynthesis.java:

    import com.microsoft.cognitiveservices.speech.*;
    import com.microsoft.cognitiveservices.speech.audio.*;
    
    import java.util.Scanner;
    import java.util.concurrent.ExecutionException;
    
    public class SpeechSynthesis {
        private static String YourSubscriptionKey = "YourSubscriptionKey";
        private static String YourServiceRegion = "YourServiceRegion";
    
        public static void main(String[] args) throws InterruptedException, ExecutionException {
            SpeechConfig speechConfig = SpeechConfig.fromSubscription(YourSubscriptionKey, YourServiceRegion);
    
            speechConfig.setSpeechSynthesisVoiceName("en-US-JennyNeural"); 
    
            SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer(speechConfig);
    
            // Get text from the console and synthesize to the default speaker.
            System.out.println("Enter some text that you want to speak >");
            String text = new Scanner(System.in).nextLine();
            if (text.isEmpty())
            {
                return;
            }
    
            SpeechSynthesisResult speechRecognitionResult = speechSynthesizer.SpeakTextAsync(text).get();
    
            if (speechRecognitionResult.getReason() == ResultReason.SynthesizingAudioCompleted) {
                System.out.println("Speech synthesized to speaker for text [" + text + "]");
            }
            else if (speechRecognitionResult.getReason() == ResultReason.Canceled) {
                SpeechSynthesisCancellationDetails cancellation = SpeechSynthesisCancellationDetails.fromResult(speechRecognitionResult);
                System.out.println("CANCELED: Reason=" + cancellation.getReason());
    
                if (cancellation.getReason() == CancellationReason.Error) {
                    System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode());
                    System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails());
                    System.out.println("CANCELED: Did you set the speech resource key and region values?");
                }
            }
    
            System.exit(0);
        }
    }
    
  3. Di SpeechSynthesis.java, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  4. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Jalankan aplikasi konsol baru Anda untuk memulai sintesis ucapan ke speaker default.

java SpeechSynthesis

Masukkan beberapa teks yang ingin Anda ucapkan. Misalnya, ketik "Saya bersemangat untuk mencoba teks ke ucapan." Tekan tombol Enter untuk mendengar ucapan yang disintesis.

Enter some text that you want to speak >
I'm excited to try text to speech

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakTextAsync untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (npm) | Sampel Tambahan pada kode sumber GitHub | Library

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Sebelum Anda dapat melakukan tindakan apa pun, Anda harus memasang Speech SDK untuk JavaScript. Jika Anda hanya ingin menginstal nama paket, jalankan npm install microsoft-cognitiveservices-speech-sdk. Untuk petunjuk penginstalan terpandu, lihat panduan penginstalan SDK.

Sintesis ke output file

Ikuti langkah-langkah ini untuk membuat aplikasi konsol Node.js untuk sintesis ucapan.

  1. Buka perintah di mana Anda menginginkan proyek baru, dan buat file baru bernama SpeechSynthesis.js.

  2. Instal SDK Ucapan untuk JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Salin kode berikut ke dalam SpeechSynthesis.js:

    (function() {
    
        "use strict";
    
        var sdk = require("microsoft-cognitiveservices-speech-sdk");
        var readline = require("readline");
    
        var key = "YourSubscriptionKey";
        var region = "YourServiceRegion";
        var audioFile = "YourAudioFile.wav";
    
        const speechConfig = sdk.SpeechConfig.fromSubscription(key, region);
        const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);
    
        // The language of the voice that speaks.
        speechConfig.speechSynthesisVoiceName = "en-US-JennyNeural"; 
    
        // Create the speech synthesizer.
        var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig);
    
        var rl = readline.createInterface({
          input: process.stdin,
          output: process.stdout
        });
    
        rl.question("Enter some text that you want to speak >\n> ", function (text) {
          rl.close();
          // Start the synthesizer and wait for a result.
          synthesizer.speakTextAsync(text,
              function (result) {
            if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) {
              console.log("synthesis finished.");
            } else {
              console.error("Speech synthesis canceled, " + result.errorDetails +
                  "\nDid you set the speech resource key and region values?");
            }
            synthesizer.close();
            synthesizer = null;
          },
              function (err) {
            console.trace("err - " + err);
            synthesizer.close();
            synthesizer = null;
          });
          console.log("Now synthesizing to: " + audioFile);
        });
    }());
    
  4. Di SpeechSynthesis.js, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda. Secara opsional Anda dapat mengganti nama YourAudioFile.wav menjadi nama file output lain.

  5. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Jalankan aplikasi konsol baru Anda untuk memulai sintesis ucapan ke file:

node.exe SpeechSynthesis.js

Teks yang disediakan harus dikeluarkan ke file audio:

Enter some text that you want to speak >
> I'm excited to try text to speech
Now synthesizing to: YourAudioFile.wav
synthesis finished.

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakTextAsync untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (Unduh) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Speech SDK untuk Objective-C didistribusikan sebagai bundel kerangka kerja. Kerangka kerja ini mendukung Objective-C dan Swift di iOS dan macOS.

Speech SDK dapat digunakan dalam proyek Xcode sebagai CocoaPod, atau diunduh langsung di sini dan ditautkan secara manual. Panduan ini menggunakan CocoaPod. Pasang manajer dependensi CocoaPod seperti yang dijelaskan dalam instruksi penginstalannya.

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk mensintesis ucapan dalam aplikasi macOS.

  1. Kloning repositori Azure-Samples/cognitive-services-speech-sdk untuk mendapatkan audio Synthesize di Objective-C di macOS menggunakan proyek sampel Speech SDK. Repositori juga memiliki sampel iOS.

  2. Navigasikan ke direktori aplikasi sampel yang diunduh (helloworld) di terminal.

  3. Jalankan perintah pod install. Ini akan menghasilkan ruang kerja Xcodehelloworld.xcworkspace yang berisi aplikasi sampel dan Speech SDK sebagai dependensi.

  4. Buka contoh ruang kerja helloworld.xcworkspace di Xcode.

  5. Buka file bernama AppDelegate.m dan temukan metode seperti yang buttonPressed ditunjukkan di sini.

    - (void)buttonPressed:(NSButton *)button {
        // Creates an instance of a speech config with specified subscription key and service region.
        // Replace with your own subscription key and service region (e.g., "westus").
        NSString *speechKey = @"YourSubscriptionKey";
        NSString *serviceRegion = @"YourServiceRegion";
    
        SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion];
        speechConfig.speechSynthesisVoiceName = @"en-US-JennyNeural";
        SPXSpeechSynthesizer *speechSynthesizer = [[SPXSpeechSynthesizer alloc] init:speechConfig];
    
        NSLog(@"Start synthesizing...");
    
        SPXSpeechSynthesisResult *speechResult = [speechSynthesizer speakText:[self.textField stringValue]];
    
        // Checks result.
        if (SPXResultReason_Canceled == speechResult.reason) {
            SPXSpeechSynthesisCancellationDetails *details = [[SPXSpeechSynthesisCancellationDetails alloc] initFromCanceledSynthesisResult:speechResult];
            NSLog(@"Speech synthesis was canceled: %@. Did you set the speech resource key and region values?", details.errorDetails);
        } else if (SPXResultReason_SynthesizingAudioCompleted == speechResult.reason) {
            NSLog(@"Speech synthesis was completed");
        } else {
            NSLog(@"There was an error.");
        }
    }
    
  6. Di AppDelegate.m, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  7. Secara opsional pada AppDelegate.m, sertakan nama suara sintesis ucapan seperti yang ditunjukkan di sini:

    speechConfig.speechSynthesisVoiceName = @"en-US-JennyNeural";
    
  8. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

  9. Buat output debug terlihat (Tampilan>Area Debug>Aktifkan Konsol).

  10. Buat dan jalankan kode contoh dengan memilih Product ->Run dari menu atau memilih tombol Play.

Setelah Anda memasukkan beberapa teks dan memilih tombol di aplikasi, Anda akan mendengar audio yang disintesis diputar.

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakText untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (Unduh) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Speech SDK untuk Swift didistribusikan sebagai bundel kerangka kerja. Kerangka kerja ini mendukung Objective-C dan Swift di iOS dan macOS.

Speech SDK dapat digunakan dalam proyek Xcode sebagai CocoaPod, atau diunduh langsung di sini dan ditautkan secara manual. Panduan ini menggunakan CocoaPod. Pasang manajer dependensi CocoaPod seperti yang dijelaskan dalam instruksi penginstalannya.

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk mensintesis ucapan dalam aplikasi macOS.

  1. Kloning repositori Azure-Samples/cognitive-services-speech-sdk untuk mendapatkan audio Synthesize di Swift di macOS menggunakan proyek sampel Speech SDK. Repositori juga memiliki sampel iOS.

  2. Navigasikan ke direktori aplikasi sampel yang diunduh (helloworld) di terminal.

  3. Jalankan perintah pod install. Ini akan menghasilkan ruang kerja Xcodehelloworld.xcworkspace yang berisi aplikasi sampel dan Speech SDK sebagai dependensi.

  4. Buka contoh ruang kerja helloworld.xcworkspace di Xcode.

  5. Buka file bernama AppDelegate.swift dan temukan applicationDidFinishLaunching dan metode synthesize seperti yang ditunjukkan di sini.

    import Cocoa
    
    @NSApplicationMain
    class AppDelegate: NSObject, NSApplicationDelegate, NSTextFieldDelegate {
        var textField: NSTextField!
        var synthesisButton: NSButton!
    
        var inputText: String!
    
        var sub: String!
        var region: String!
    
        @IBOutlet weak var window: NSWindow!
    
        func applicationDidFinishLaunching(_ aNotification: Notification) {
            print("loading")
            // load subscription information
            sub = "YourSubscriptionKey"
            region = "YourServiceRegion"
    
            inputText = ""
    
            textField = NSTextField(frame: NSRect(x: 100, y: 200, width: 200, height: 50))
            textField.textColor = NSColor.black
            textField.lineBreakMode = .byWordWrapping
    
            textField.placeholderString = "Type something to synthesize."
            textField.delegate = self
    
            self.window.contentView?.addSubview(textField)
    
            synthesisButton = NSButton(frame: NSRect(x: 100, y: 100, width: 200, height: 30))
            synthesisButton.title = "Synthesize"
            synthesisButton.target = self
            synthesisButton.action = #selector(synthesisButtonClicked)
            self.window.contentView?.addSubview(synthesisButton)
        }
    
        @objc func synthesisButtonClicked() {
            DispatchQueue.global(qos: .userInitiated).async {
                self.synthesize()
            }
        }
    
        func synthesize() {
            var speechConfig: SPXSpeechConfiguration?
            do {
                try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region)
            } catch {
                print("error \(error) happened")
                speechConfig = nil
            }
    
            speechConfig?.speechSynthesisVoiceName = "en-US-JennyNeural";
    
            let synthesizer = try! SPXSpeechSynthesizer(speechConfig!)
            let result = try! synthesizer.speakText(inputText)
            if result.reason == SPXResultReason.canceled
            {
                let cancellationDetails = try! SPXSpeechSynthesisCancellationDetails(fromCanceledSynthesisResult: result)
                print("cancelled, error code: \(cancellationDetails.errorCode) detail: \(cancellationDetails.errorDetails!) ")
                print("Did you set the speech resource key and region values?");
                return
            }
        }
    
        func controlTextDidChange(_ obj: Notification) {
            let textFiled = obj.object as! NSTextField
            inputText = textFiled.stringValue
        }
    }
    
  6. Di AppDelegate.m, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  7. Secara opsional pada AppDelegate.m, sertakan nama suara sintesis ucapan seperti yang ditunjukkan di sini:

    speechConfig?.speechSynthesisVoiceName = "en-US-JennyNeural";
    
  8. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

  9. Buat output debug terlihat dengan memilih Tampilan>Area Debug>Aktifkan Konsol.

  10. Buat dan jalankan kode contoh dengan memilih Product ->Run dari menu atau memilih tombol Play.

Setelah Anda memasukkan beberapa teks dan memilih tombol di aplikasi, Anda akan mendengar audio yang disintesis diputar.

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi SpeakText untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dokumentasi referensi | Paket (PyPi) | Sampel Tambahan pada GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Speech SDK untuk Python tersedia sebagai modul Indeks Paket Python (PyPI). Speech SDK untuk Python kompatibel dengan Windows, Linux, dan macOS.

Pasang versi Python dari 3.7 hingga 3.10. Periksa terlebih dahulu panduan penginstalan SDK untuk persyaratan lainnya

Mensintesis ke output speaker

Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru.

  1. Buka perintah di mana Anda menginginkan proyek baru, dan buat file baru bernama speech-synthesis.py.

  2. Jalankan perintah ini untuk menginstal SDK Ucapan:

    pip install azure-cognitiveservices-speech
    
  3. Salin kode berikut ke dalam speech_synthesis.py:

    import azure.cognitiveservices.speech as speechsdk
    
    speech_config = speechsdk.SpeechConfig(subscription="YourSubscriptionKey", region="YourServiceRegion")
    audio_config = speechsdk.audio.AudioOutputConfig(use_default_speaker=True)
    
    # The language of the voice that speaks.
    speech_config.speech_synthesis_voice_name='en-US-JennyNeural'
    
    speech_synthesizer = speechsdk.SpeechSynthesizer(speech_config=speech_config, audio_config=audio_config)
    
    # Get text from the console and synthesize to the default speaker.
    print("Enter some text that you want to speak >")
    text = input()
    
    speech_synthesis_result = speech_synthesizer.speak_text_async(text).get()
    
    if speech_synthesis_result.reason == speechsdk.ResultReason.SynthesizingAudioCompleted:
        print("Speech synthesized for text [{}]".format(text))
    elif speech_synthesis_result.reason == speechsdk.ResultReason.Canceled:
        cancellation_details = speech_synthesis_result.cancellation_details
        print("Speech synthesis canceled: {}".format(cancellation_details.reason))
        if cancellation_details.reason == speechsdk.CancellationReason.Error:
            if cancellation_details.error_details:
                print("Error details: {}".format(cancellation_details.error_details))
                print("Did you set the speech resource key and region values?")
    
  4. Di speech_synthesis.py, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Jalankan aplikasi konsol baru Anda untuk memulai sintesis ucapan ke speaker default.

python speech_synthesis.py

Masukkan beberapa teks yang ingin Anda ucapkan. Misalnya, ketik "Saya bersemangat untuk mencoba teks ke ucapan." Tekan tombol Enter untuk mendengar ucapan yang disintesis.

Enter some text that you want to speak > 
I'm excited to try text to speech

Keterangan

Sekarang setelah Anda menyelesaikan mulai cepat, berikut beberapa pertimbangan tambahan:

Mulai cepat ini menggunakan operasi speak_text_async untuk mensintesis blok pendek teks yang Anda masukkan. Anda juga bisa mendapatkan teks dari file seperti yang dijelaskan dalam panduan ini:

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Referensi REST API ucapan ke teks v3.0 | REST API ucapan ke teks untuk referensi audio singkat | Contoh Tambahan di GitHub

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Sinstesis ke file

Pada perintah, jalankan perintah cURL berikut ini. Anda harus menyisipkan nilai berikut ke dalam perintah. Ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda. Secara opsional Anda dapat mengganti nama output.mp3 menjadi nama file output lain.

key="YourSubscriptionKey"
region="YourServiceRegion"

curl --location --request POST "https://$region.tts.speech.microsoft.com/cognitiveservices/v1" \
--header "Ocp-Apim-Subscription-Key: $key" \
--header 'Content-Type: application/ssml+xml' \
--header 'X-Microsoft-OutputFormat: audio-16khz-128kbitrate-mono-mp3' \
--header 'User-Agent: curl' \
--data-raw '<speak version='\''1.0'\'' xml:lang='\''en-US'\''>
    <voice xml:lang='\''en-US'\'' xml:gender='\''Female'\'' name='\''en-US-JennyNeural'\''>
        my voice is my passport verify me
    </voice>
</speak>' > output.mp3

Teks yang disediakan harus dikeluarkan ke file audio bernama output.mp3.

Untuk mengubah bahasa sintesis ucapan, ganti en-US-JennyNeural dengan suara lain yang didukung. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur es-ES-ElviraNeural, teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Untuk informasi selengkapnya, lihat REST API teks ke ucapan.

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Dalam mulai cepat ini, Anda menjalankan aplikasi yang melakukan sintesis teks ke ucapan.

Tip

Untuk mencoba layanan Azure Cognitive Service untuk Ucapan tanpa menulis kode apa pun, buat proyek di Speech Studio.

Prasyarat

Menyiapkan lingkungan

Ikuti langkah-langkah ini dan lihat mulai cepat CLI Ucapan untuk persyaratan tambahan untuk platform Anda.

  1. Instal CLI Ucapan melalui CLI .NET dengan memasukkan perintah ini:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Konfigurasikan kunci dan wilayah sumber daya Ucapan Anda, dengan menjalankan perintah berikut. Ganti SUBSCRIPTION-KEY dengan kunci sumber daya Ucapan Anda, dan ganti REGION dengan wilayah sumber daya Ucapan Anda:

    spx config @key --set SUBSCRIPTION-KEY
    spx config @region --set REGION
    

Mensintesis ke output speaker

Jalankan perintah berikut untuk sintesis ucapan ke output speaker default. Anda dapat memodifikasi teks yang akan disintesis dan suara.

 spx synthesize --text "I'm excited to try text to speech" --voice "en-US-JennyNeural"

Jika Anda tidak menetapkan nama suara, suara default untuk en-US akan berbicara. Semua suara saraf multibahasa dan fasih dalam bahasa dan bahasa Inggris mereka sendiri. Misalnya, jika teks input dalam bahasa Inggris adalah "Saya bersemangat untuk mencoba teks ke ucapan" dan Anda mengatur --voice "es-ES-ElviraNeural", teks diucapkan dalam bahasa Inggris dengan aksen Spanyol. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak akan mengeluarkan audio yang disintesis.

Jalankan perintah ini untuk informasi tentang opsi sintesis ucapan tambahan seperti input dan output file:

spx help synthesize

Membersihkan sumber daya

Anda dapat menggunakan portal Azure atau Azure Command Line Interface (CLI) untuk menghapus sumber daya Ucapan yang Anda buat.

Langkah berikutnya