Udostępnij za pośrednictwem


Szybki start: konwertowanie tekstu na mowę

Dokumentacja referencyjna Package (NuGet) | Dodatkowe przykłady w witrynie GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zestaw SPEECH SDK jest dostępny jako pakiet NuGet, który implementuje platformę .NET Standard 2.0. Zainstaluj zestaw SDK usługi Mowa w dalszej części tego przewodnika przy użyciu konsoli programu . Aby uzyskać szczegółowe instrukcje instalacji, zobacz Instalowanie zestawu SPEECH SDK.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć aplikację konsolową i zainstalować zestaw SPEECH SDK.

  1. Otwórz okno wiersza polecenia w folderze, w którym chcesz utworzyć nowy projekt. Uruchom to polecenie, aby utworzyć aplikację konsolową przy użyciu interfejsu wiersza polecenia platformy .NET.

    dotnet new console
    

    Polecenie tworzy plik Program.cs w katalogu projektu.

  2. Zainstaluj zestaw SPEECH SDK w nowym projekcie przy użyciu interfejsu wiersza polecenia platformy .NET.

    dotnet add package Microsoft.CognitiveServices.Speech
    
  3. Zastąp zawartość pliku Program.cs poniższym kodem.

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    using Microsoft.CognitiveServices.Speech.Audio;
    
    class Program 
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY");
        static string speechRegion = Environment.GetEnvironmentVariable("SPEECH_REGION");
    
        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(speechKey, speechRegion);      
    
            // The neural multilingual voice can speak different languages based on the input text.
            speechConfig.SpeechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; 
    
            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. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural jako język, tekst jest używany w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  5. Uruchom nową aplikację konsolową, aby rozpocząć syntezę mowy do domyślnego głośnika.

    dotnet run
    

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  6. Wprowadź tekst, który chcesz mówić. Na przykład wpisz I'm podekscytowany, aby spróbować zamiany tekstu na mowę. Wybierz Enter, aby usłyszeć syntetyzowany mowę.

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

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakTextAsync operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna Package (NuGet) | Dodatkowe przykłady w witrynie GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zestaw SPEECH SDK jest dostępny jako pakiet NuGet, który implementuje platformę .NET Standard 2.0. Zainstaluj zestaw SPEECH SDK w dalszej części tego przewodnika. Aby uzyskać szczegółowe instrukcje instalacji, zobacz Instalowanie zestawu SPEECH SDK.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć aplikację konsolową i zainstalować zestaw SPEECH SDK.

  1. Utwórz projekt konsoli języka C++ w programie Visual Studio Community o nazwie SpeechSynthesis.

  2. Zastąp zawartość SpeechSynthesis.cpp następującym kodem:

    #include <iostream> 
    #include <stdlib.h>
    #include <speechapi_cxx.h>
    
    using namespace Microsoft::CognitiveServices::Speech;
    using namespace Microsoft::CognitiveServices::Speech::Audio;
    
    std::string GetEnvironmentVariable(const char* name);
    
    int main()
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        auto speechKey = GetEnvironmentVariable("SPEECH_KEY");
        auto speechRegion = GetEnvironmentVariable("SPEECH_REGION");
    
        if ((size(speechKey) == 0) || (size(speechRegion) == 0)) {
            std::cout << "Please set both SPEECH_KEY and SPEECH_REGION environment variables." << std::endl;
            return -1;
        }
    
        auto speechConfig = SpeechConfig::FromSubscription(speechKey, speechRegion);
    
        // The neural multilingual voice can speak different languages based on the input text.
        speechConfig->SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural");
    
        auto speechSynthesizer = SpeechSynthesizer::FromConfig(speechConfig);
    
        // Get text from the console and synthesize to the default speaker.
        std::cout << "Enter some text that you want to speak >" << std::endl;
        std::string text;
        getline(std::cin, text);
    
        auto result = speechSynthesizer->SpeakTextAsync(text).get();
    
        // Checks result.
        if (result->Reason == ResultReason::SynthesizingAudioCompleted)
        {
            std::cout << "Speech synthesized to speaker for text [" << text << "]" << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = SpeechSynthesisCancellationDetails::FromResult(result);
            std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;
    
            if (cancellation->Reason == CancellationReason::Error)
            {
                std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl;
                std::cout << "CANCELED: ErrorDetails=[" << cancellation->ErrorDetails << "]" << std::endl;
                std::cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl;
            }
        }
    
        std::cout << "Press enter to exit..." << std::endl;
        std::cin.get();
    }
    
    std::string GetEnvironmentVariable(const char* name)
    {
    #if defined(_MSC_VER)
        size_t requiredSize = 0;
        (void)getenv_s(&requiredSize, nullptr, 0, name);
        if (requiredSize == 0)
        {
            return "";
        }
        auto buffer = std::make_unique<char[]>(requiredSize);
        (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name);
        return buffer.get();
    #else
        auto value = getenv(name);
        return value ? value : "";
    #endif
    }  
    
  3. Wybierz pozycję Narzędzia Nuget>Menedżer pakietów> Menedżer pakietów Konsola. W konsoli Menedżer pakietów uruchom następujące polecenie:

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  5. Skompiluj i uruchom nową aplikację konsolową, aby rozpocząć syntezę mowy do domyślnego głośnika.

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  6. Wprowadź tekst, który chcesz mówić. Na przykład wpisz I'm podekscytowany, aby spróbować zamiany tekstu na mowę. Wybierz Enter, aby usłyszeć syntetyzowany mowę.

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

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakTextAsync operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna Package (Go) | Dodatkowe przykłady w witrynie GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zainstaluj zestaw SPEECH SDK dla języka Go. Aby uzyskać szczegółowe instrukcje instalacji, zobacz Instalowanie zestawu SPEECH SDK.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć moduł Języka Go.

  1. Otwórz okno wiersza polecenia w folderze, w którym chcesz utworzyć nowy projekt. Utwórz nowy plik o nazwie speech-synthesis.go.

  2. Skopiuj następujący kod do pliku 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() {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        speechKey :=  os.Getenv("SPEECH_KEY")
        speechRegion := os.Getenv("SPEECH_REGION")
    
        audioConfig, err := audio.NewAudioConfigFromDefaultSpeakerOutput()
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer audioConfig.Close()
        speechConfig, err := speech.NewSpeechConfigFromSubscription(speechKey, speechRegion)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechConfig.Close()
    
        speechConfig.SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural")
    
        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. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  4. Uruchom następujące polecenia, aby utworzyć plik go.mod , który łączy się ze składnikami hostowanymi w usłudze GitHub:

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

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  5. Teraz skompiluj i uruchom kod:

    go build
    go run speech-synthesis
    

Uwagi

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

| Dokumentacja referencyjna Dodatkowe przykłady w usłudze GitHub

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Aby skonfigurować środowisko, zainstaluj zestaw SPEECH SDK. Przykład w tym przewodniku Szybki start współpracuje ze środowiskiem uruchomieniowym Języka Java.

  1. Zainstaluj narzędzie Apache Maven. Następnie uruchom polecenie mvn -v , aby potwierdzić pomyślną instalację.

  2. Utwórz plik pom.xml w katalogu głównym projektu i skopiuj do niego następujący kod:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.40.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Zainstaluj zestaw SPEECH SDK i zależności.

    mvn clean dependency:copy-dependencies
    

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć aplikację konsolową do rozpoznawania mowy.

  1. Utwórz plik o nazwie SpeechSynthesis.java w tym samym katalogu głównym projektu.

  2. Skopiuj następujący kod do 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 {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        private static String speechKey = System.getenv("SPEECH_KEY");
        private static String speechRegion = System.getenv("SPEECH_REGION");
    
        public static void main(String[] args) throws InterruptedException, ExecutionException {
            SpeechConfig speechConfig = SpeechConfig.fromSubscription(speechKey, speechRegion);
    
            speechConfig.setSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural"); 
    
            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 speechSynthesisResult = speechSynthesizer.SpeakTextAsync(text).get();
    
            if (speechSynthesisResult.getReason() == ResultReason.SynthesizingAudioCompleted) {
                System.out.println("Speech synthesized to speaker for text [" + text + "]");
            }
            else if (speechSynthesisResult.getReason() == ResultReason.Canceled) {
                SpeechSynthesisCancellationDetails cancellation = SpeechSynthesisCancellationDetails.fromResult(speechSynthesisResult);
                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. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  4. Uruchom aplikację konsolową, aby wyprowadzić syntezę mowy do domyślnego głośnika.

    javac SpeechSynthesis.java -cp ".;target\dependency\*"
    java -cp ".;target\dependency\*" SpeechSynthesis
    

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  5. Wprowadź tekst, który chcesz mówić. Na przykład wpisz I'm podekscytowany, aby spróbować zamiany tekstu na mowę. Wybierz Enter, aby usłyszeć syntetyzowany mowę.

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

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakTextAsync operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna | Package (npm) | Dodatkowe przykłady w kodzie źródłowym biblioteki GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Aby skonfigurować środowisko, zainstaluj zestaw SPEECH SDK dla języka JavaScript. Jeśli chcesz tylko, aby nazwa pakietu została zainstalowana, uruchom polecenie npm install microsoft-cognitiveservices-speech-sdk. Aby uzyskać szczegółowe instrukcje instalacji, zobacz Instalowanie zestawu SPEECH SDK.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć aplikację konsolową Node.js na potrzeby syntezy mowy.

  1. Otwórz okno konsoli, w którym chcesz utworzyć nowy projekt, i utwórz plik o nazwie SpeechSynthesis.js.

  2. Zainstaluj zestaw SPEECH SDK dla języka JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Skopiuj następujący kod do SpeechSynthesis.js:

    (function() {
    
        "use strict";
    
        var sdk = require("microsoft-cognitiveservices-speech-sdk");
        var readline = require("readline");
    
        var audioFile = "YourAudioFile.wav";
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        const speechConfig = sdk.SpeechConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION);
        const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);
    
        // The language of the voice that speaks.
        speechConfig.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; 
    
        // 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. W SpeechSynthesis.js opcjonalnie możesz zmienić nazwę YourAudioFile.wav na inną nazwę pliku wyjściowego.

  5. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  6. Uruchom aplikację konsolową, aby rozpocząć syntezę mowy w pliku:

    node SpeechSynthesis.js
    

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  7. Podany tekst powinien znajdować się w pliku audio:

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

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakTextAsync operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna Package (download) | Dodatkowe przykłady w usłudze GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zestaw SPEECH SDK dla języka Objective-C jest dystrybuowany jako pakiet platformy. Platforma obsługuje język Objective-C i Swift zarówno w systemach iOS, jak i macOS.

Zestaw SPEECH SDK może być używany w projektach Xcode jako cocoaPod lub pobierany bezpośrednio i połączony ręcznie. W tym przewodniku jest używany program CocoaPod. Zainstaluj menedżera zależności CocoaPod zgodnie z opisem w instrukcjach instalacji.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby zsyntetyzować mowę w aplikacji systemu macOS.

  1. Sklonuj repozytorium Azure-Samples/cognitive-services-speech-sdk , aby uzyskać przykładowy projekt Syntetyzowanie dźwięku w języku Objective-C w systemie macOS przy użyciu przykładowego projektu zestawu Speech SDK . Repozytorium zawiera również przykłady dla systemu iOS.

  2. Otwórz katalog pobranej przykładowej aplikacji (helloworld) w terminalu.

  3. Uruchom polecenie pod install. To polecenie generuje helloworld.xcworkspace obszar roboczy Xcode, który zawiera zarówno przykładową aplikację, jak i zestaw SPEECH SDK jako zależność.

  4. Otwórz obszar roboczy w programie helloworld.xcworkspace Xcode.

  5. Otwórz plik o nazwie AppDelegate.m i znajdź metodę buttonPressed , jak pokazano tutaj.

    - (void)buttonPressed:(NSButton *)button {
        // Creates an instance of a speech config with specified subscription key and service region.
        NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
        NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
        SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion];
        speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
        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. W pliku AppDelegate.m użyj zmiennych środowiskowych ustawionych wcześniej dla klucza zasobu usługi Mowa i regionu.

    NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
    NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
  7. Opcjonalnie w pliku AppDelegate.m dołącz nazwę głosu syntezy mowy, jak pokazano poniżej:

    speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
    
  8. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  9. Aby wyświetlić dane wyjściowe debugowania, wybierz pozycję Wyświetl>obszar>debugowania Aktywuj konsolę.

  10. Aby skompilować i uruchomić przykładowy kod, wybierz pozycję Product Run (Uruchom produkt>) z menu lub wybierz przycisk Play (Odtwórz).

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

Po wprowadzeniu tekstu i wybraniu przycisku w aplikacji powinien zostać wyświetlony syntetyzowany dźwięk.

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakText operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna Package (download) | Dodatkowe przykłady w usłudze GitHub |

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zestaw SPEECH SDK dla języka Swift jest dystrybuowany jako pakiet platformy. Platforma obsługuje język Objective-C i Swift zarówno w systemach iOS, jak i macOS.

Zestaw SPEECH SDK może być używany w projektach Xcode jako cocoaPod lub pobierany bezpośrednio i połączony ręcznie. W tym przewodniku jest używany program CocoaPod. Zainstaluj menedżera zależności CocoaPod zgodnie z opisem w instrukcjach instalacji.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby zsyntetyzować mowę w aplikacji systemu macOS.

  1. Sklonuj repozytorium Azure-Samples/cognitive-services-speech-sdk , aby uzyskać przykładowy projekt Syntetyzowanie dźwięku w języku Swift w systemie macOS przy użyciu przykładowego projektu zestawu Speech SDK . Repozytorium zawiera również przykłady dla systemu iOS.

  2. Przejdź do katalogu pobranej przykładowej aplikacji (helloworld) w terminalu.

  3. Uruchom polecenie pod install. To polecenie generuje helloworld.xcworkspace obszar roboczy Xcode, który zawiera zarówno przykładową aplikację, jak i zestaw SPEECH SDK jako zależność.

  4. Otwórz obszar roboczy w programie helloworld.xcworkspace Xcode.

  5. Otwórz plik o nazwie AppDelegate.swift i znajdź applicationDidFinishLaunching metody i synthesize , jak pokazano tutaj.

    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 = ProcessInfo.processInfo.environment["SPEECH_KEY"]
            region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
            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-AvaMultilingualNeural";
    
            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. W pliku AppDelegate.m użyj zmiennych środowiskowych ustawionych wcześniej dla klucza zasobu usługi Mowa i regionu.

    sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
    region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
  7. Opcjonalnie w pliku AppDelegate.m dołącz nazwę głosu syntezy mowy, jak pokazano poniżej:

    speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
    
  8. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  9. Aby wyświetlić dane wyjściowe debugowania, wybierz pozycję Wyświetl>obszar>debugowania Aktywuj konsolę.

  10. Aby skompilować i uruchomić przykładowy kod, wybierz pozycję Product Run (Uruchom produkt>) z menu lub wybierz przycisk Play (Odtwórz).

Ważne

Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

Po wprowadzeniu tekstu i wybraniu przycisku w aplikacji powinien zostać wyświetlony syntetyzowany dźwięk.

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto SpeakText operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dokumentacja referencyjna | Package (PyPi) | Dodatkowe przykłady w witrynie GitHub

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Zestaw SPEECH SDK dla języka Python jest dostępny jako moduł PyPI (Python Package Index). Zestaw SPEECH SDK dla języka Python jest zgodny z systemami Windows, Linux i macOS.

Zainstaluj wersję języka Python z wersji 3.7 lub nowszej. Aby uzyskać informacje o wszelkich wymaganiach, zobacz Instalowanie zestawu SPEECH SDK.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Tworzenie aplikacji

Wykonaj następujące kroki, aby utworzyć aplikację konsolową.

  1. Otwórz okno wiersza polecenia w folderze, w którym chcesz utworzyć nowy projekt. Utwórz plik o nazwie speech_synthesis.py.

  2. Uruchom to polecenie, aby zainstalować zestaw SPEECH SDK:

    pip install azure-cognitiveservices-speech
    
  3. Skopiuj następujący kod do speech_synthesis.py:

    import os
    import azure.cognitiveservices.speech as speechsdk
    
    # This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
    speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION'))
    audio_config = speechsdk.audio.AudioOutputConfig(use_default_speaker=True)
    
    # The neural multilingual voice can speak different languages based on the input text.
    speech_config.speech_synthesis_voice_name='en-US-AvaMultilingualNeural'
    
    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. Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

    Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

  5. Uruchom nową aplikację konsolową, aby rozpocząć syntezę mowy do domyślnego głośnika.

    python speech_synthesis.py
    

    Ważne

    Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

  6. Wprowadź tekst, który chcesz mówić. Na przykład wpisz I'm podekscytowany, aby spróbować zamiany tekstu na mowę. Wybierz Enter, aby usłyszeć syntetyzowany mowę.

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

Uwagi

Więcej opcji syntezy mowy

W tym przewodniku Szybki start użyto speak_text_async operacji , aby zsyntetyzować krótki blok wprowadzonego tekstu. Możesz również użyć tekstu długiego z pliku i uzyskać dokładnszą kontrolę nad stylami głosu, prosodią i innymi ustawieniami.

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Interfejs API REST zamiany mowy na tekst — dokumentacja | interfejsu API REST zamiany mowy na tekst w celu uzyskania krótkiej dokumentacji | audio Dodatkowe przykłady w usłudze GitHub

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Ustawianie zmiennych środowiskowych

Aby uzyskać dostęp do usług Azure AI, musisz uwierzytelnić aplikację. W tym artykule pokazano, jak używać zmiennych środowiskowych do przechowywania poświadczeń. Następnie możesz uzyskać dostęp do zmiennych środowiskowych z kodu w celu uwierzytelnienia aplikacji. W przypadku środowiska produkcyjnego użyj bezpieczniejszego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu.

Ważne

Zalecamy uwierzytelnianie za pomocą identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi dla zasobów platformy Azure, aby uniknąć przechowywania poświadczeń przy użyciu aplikacji uruchamianych w chmurze.

Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.

Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.

Aby ustawić zmienne środowiskowe dla klucza i regionu zasobu usługi Mowa, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  • Aby ustawić zmienną SPEECH_KEY środowiskową, zastąp klucz jednym z kluczy zasobu.
  • Aby ustawić zmienną SPEECH_REGION środowiskową, zastąp region jednym z regionów zasobu.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Uwaga

Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej konsoli, możesz ustawić zmienną środowiskową z wartością set setxzamiast .

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich programów, które muszą odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Syntetyzowanie mowy do pliku

W wierszu polecenia uruchom następujące polecenie cURL. Opcjonalnie możesz zmienić nazwę output.mp3 na inną nazwę pliku wyjściowego.

curl --location --request POST "https://%SPEECH_REGION%.tts.speech.microsoft.com/cognitiveservices/v1" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_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-AvaMultilingualNeural'>my voice is my passport verify me</voice></speak>" --output output.mp3

Ważne

Upewnij się, że ustawiono SPEECH_KEY zmienne środowiskowe i SPEECH_REGION . Jeśli nie ustawisz tych zmiennych, przykład zakończy się niepowodzeniem z komunikatem o błędzie.

Podany tekst powinien być wyjściowy do pliku audio o nazwie output.mp3.

Aby zmienić język syntezy mowy, zastąp en-US-AvaMultilingualNeural element innym obsługiwanym głosem.

Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić es-ES-ElviraNeural, tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

Aby uzyskać więcej informacji, zobacz Interfejs API REST zamiany tekstu na mowę.

Uwagi

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Dzięki usłudze Azure AI Speech możesz uruchomić aplikację, która syntetyzuje głos podobny do człowieka w celu odczytywania tekstu. Możesz zmienić głos, wprowadzić tekst, który ma być mówiony, i słuchać danych wyjściowych na głośniku komputera.

Napiwek

Możesz spróbować zamiany tekstu na mowę w galerii głosowej usługi Speech Studio bez rejestracji ani pisania jakiegokolwiek kodu.

Napiwek

Wypróbuj zestaw narzędzi Azure AI Speech Toolkit , aby łatwo kompilować i uruchamiać przykłady w programie Visual Studio Code.

Wymagania wstępne

  • Subskrypcja platformy Azure. Możesz utworzyć go bezpłatnie.
  • Utwórz zasób usługi Mowa w witrynie Azure Portal.
  • Pobierz klucz zasobu usługi Mowa i region. Po wdrożeniu zasobu usługi Mowa wybierz pozycję Przejdź do zasobu , aby wyświetlić klucze i zarządzać nimi.

Konfigurowanie środowiska

Wykonaj następujące kroki i zapoznaj się z przewodnikiem Szybki start interfejsu wiersza polecenia usługi Mowa, aby uzyskać inne wymagania dotyczące platformy.

  1. Uruchom następujące polecenie interfejsu wiersza polecenia platformy .NET, aby zainstalować interfejs wiersza polecenia usługi Mowa:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Uruchom następujące polecenia, aby skonfigurować klucz zasobu usługi Mowa i region. Zastąp SUBSCRIPTION-KEY ciąg kluczem zasobu usługi Mowa i zastąp REGION element regionem zasobu usługi Mowa.

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

Wysyłanie mowy do osoby mówiącej

Uruchom następujące polecenie, aby wyprowadzić syntezę mowy do domyślnego głośnika. Możesz zmodyfikować głos i tekst, który ma zostać zsyntetyzowany.

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

Jeśli nie ustawisz nazwy głosu, domyślny głos mówi en-US .

Wszystkie neuronowe głosy są wielojęzyczne i płynne we własnym języku i języku angielskim. Jeśli na przykład tekst wejściowy w języku angielskim jest podekscytowany, aby spróbować zamiany tekstu na mowę i ustawić --voice "es-ES-ElviraNeural", tekst jest mówiony w języku angielskim z hiszpańskim akcentem. Jeśli głos nie mówi w języku tekstu wejściowego, usługa rozpoznawania mowy nie generuje syntetyzowanego dźwięku.

Uruchom to polecenie, aby uzyskać więcej informacji na temat opcji syntezy mowy, takich jak dane wejściowe i wyjściowe pliku:

spx help synthesize

Uwagi

Obsługa języka SSML

Możesz mieć dokładną kontrolę nad stylami głosu, prosodią i innymi ustawieniami przy użyciu języka SSML (Speech Synthesis Markup Language).

OpenAI text to speech voices in Azure AI Speech

Obsługiwane są również głosy zamiany tekstu openAI na mowę. Zobacz tekst OpenAI na głosy mowy w usłudze Azure AI Speech i wielojęzyczne głosy. Możesz zastąpić en-US-AvaMultilingualNeural obsługiwaną nazwą głosową openAI, taką jak en-US-FableMultilingualNeural.

Czyszczenie zasobów

Aby usunąć utworzony zasób usługi Mowa, możesz użyć witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Następny krok