Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Ebben a rövid útmutatóban próbálja ki az Azure Speech in Foundry Tools szöveg-beszéd modelljét a Microsoft Foundry használatával.
Előfeltételek
- Azure-előfizetés. Hozzon létre egyet ingyen.
- Egy Foundry-projekt. Ha létre kell hoznia egy projektet, olvassa el a Microsoft Foundry-projekt létrehozása című témakört.
Szövegfelolvasási kísérlet
Az Alábbi lépések végrehajtásával próbálkozzon szövegfelolvasással az Foundry portálon:
- Jelentkezzen be a Microsoft Foundrybe. Győződjön meg arról, hogy a New Foundry kapcsoló be van kapcsolva. Ezek a lépések a Foundryre (új) vonatkoznak.
- A jobb felső menüben válassza a Build lehetőséget .
- A bal oldali panelen válassza a Modellek lehetőséget.
- Az AI-szolgáltatások lapon láthatók az Azure AI-modellek, amelyek az Foundry portálon kívül használhatók. Válassza az Azure Speech – Text to Speech lehetőséget a Beszédszintetizátor környezet megnyitásához.
- Válasszon egy előre összeállított hangot a legördülő menüből, és igény szerint hangolja a szolgáltatói paraméter csúszkáival.
- Írja be a mintaszöveget a szövegmezőbe.
- A Lejátszás gombra kattintva hallhatja, hogy a szintetikus hang felolvassa a szöveget.
Egyéb Foundry (új) funkciók
A következő Speech-funkciók érhetők el az Foundry (új) portálon:
Referenciadokumentáció-csomag (NuGet) |
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy AI-szolgáltatási erőforrást a Speechhez az Azure Portalon.
- Szerezze meg a Speech erőforráskulcsot és a végpontot. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
A Speech SDK nuGet-csomagként érhető el, amely a .NET Standard 2.0-t implementálja. Telepítse a Speech SDK-t az útmutató későbbi részében a konzol használatával. A részletes telepítési utasításokért tekintse meg a Speech SDK telepítését ismertető cikket.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -végpont környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
ENDPOINTkörnyezeti változó beállításához cserélje le saját-végpontot az erőforrás valamelyik végpontjára.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Az alábbi lépéseket követve hozzon létre egy konzolalkalmazást, és telepítse a Speech SDK-t.
Nyisson meg egy parancssori ablakot abban a mappában, ahol az új projektet szeretné. A parancs futtatásával hozzon létre egy konzolalkalmazást a .NET CLI-vel.
dotnet new consoleA parancs létrehoz egy Program.cs fájlt a projektkönyvtárban.
Telepítse a Speech SDK-t az új projektbe a .NET CLI-vel.
dotnet add package Microsoft.CognitiveServices.SpeechCserélje le a Program.cs tartalmát a következő kódra.
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 "ENDPOINT" static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY"); static string endpoint = Environment.GetEnvironmentVariable("ENDPOINT"); 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 endpoint values?"); } break; default: break; } } async static Task Main(string[] args) { var speechConfig = SpeechConfig.FromEndpoint(new Uri(endpoint), speechKey); // The neural multilingual voice can speak different languages based on the input text. speechConfig.SpeechSynthesisVoiceName = "en-US-Ava:DragonHDLatestNeural"; 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(); } }A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a beviteli szöveg angol nyelven van, izgatottan várom, hogy kipróbálhassam a szöveget a beszédhez , és ön nyelvként van beállítva
es-ES-Ximena:DragonHDLatestNeural, a szöveg angol nyelven, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Az új konzolalkalmazás futtatásával indítsa el a beszédszintézist az alapértelmezett hangszórón.
dotnet runFontos
Győződjön meg arról, hogy beállítja a környezeti és
SPEECH_KEYaENDPOINTkörnyezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.Írjon be egy szöveget, amelyet el szeretne mondani. Írja be például, hogy szívesen kipróbálom a szövegfelolvasást. Válassza az Enter billentyűt a szintetizált beszéd meghallgatásához.
Enter some text that you want to speak > I'm excited to try text to speech
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakTextAsync művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Referenciadokumentáció-csomag (NuGet) |
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy AI-szolgáltatási erőforrást a Speechhez az Azure Portalon.
- Szerezze meg a Speech erőforráskulcsot és a végpontot. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
A Speech SDK nuGet-csomagként érhető el, amely a .NET Standard 2.0-t implementálja. Az útmutató későbbi részében telepítse a Speech SDK-t. A részletes telepítési utasításokért tekintse meg a Speech SDK telepítését ismertető cikket.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -végpont környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
ENDPOINTkörnyezeti változó beállításához cserélje le saját-végpontot az erőforrás valamelyik végpontjára.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Az alábbi lépéseket követve hozzon létre egy konzolalkalmazást, és telepítse a Speech SDK-t.
Hozzon létre egy C++ konzolprojektet a Visual Studio Communityben.
SpeechSynthesisCserélje le a SpeechSynthesis.cpp tartalmát a következő kódra:
#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 "ENDPOINT" auto speechKey = GetEnvironmentVariable("SPEECH_KEY"); auto endpoint = GetEnvironmentVariable("ENDPOINT"); if (std::string(speechKey).empty() || std::string(endpoint).empty()) { std::cout << "Please set both SPEECH_KEY and ENDPOINT environment variables." << std::endl; return -1; } auto speechConfig = SpeechConfig::FromEndpoint(endpoint, speechKey); // The neural multilingual voice can speak different languages based on the input text. speechConfig->SetSpeechSynthesisVoiceName("en-US-AriaNeural"); 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 endpoint 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 }Válassza az > Csomagkezelő konzol lehetőséget. A Csomagkezelő konzolon futtassa a következő parancsot:
Install-Package Microsoft.CognitiveServices.SpeechA beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Az alapértelmezett hangszóró beszédszintézisének elindításához hozza létre és futtassa az új konzolalkalmazást.
Fontos
Győződjön meg arról, hogy beállítja a környezeti és
SPEECH_KEYaENDPOINTkörnyezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.Írjon be egy szöveget, amelyet el szeretne mondani. Írja be például, hogy szívesen kipróbálom a szövegfelolvasást. Válassza az Enter billentyűt a szintetizált beszéd meghallgatásához.
Enter some text that you want to speak > I'm excited to try text to speech
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakTextAsync művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Referenciadokumentáció csomag (Go) |
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy Öntödei erőforrást a Speechhez az Azure Portalon.
- Kérje le a Speech erőforráskulcsát és régióját. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
Telepítse a Speech SDK-t a Go nyelvhez. A részletes telepítési utasításokért tekintse meg a Speech SDK telepítését ismertető cikket.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -régió környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
SPEECH_REGIONkörnyezeti változó beállításához cserélje le a régiót az erőforrás egyik régiójára. - A
ENDPOINTkörnyezeti változó beállításához cserélje leyour-endpointa Speech-erőforrás tényleges végpontjára.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Go-modul létrehozásához kövesse az alábbi lépéseket.
Nyisson meg egy parancssori ablakot abban a mappában, ahol az új projektet szeretné. Hozzon létre egy speech-synthesis.go nevű új fájlt.
Másolja a következő kódot a speech-synthesis.go fájlba:
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-Ava:DragonHDLatestNeural") 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) } } } }A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Futtassa a következő parancsokat egy go.mod fájl létrehozásához, amely a GitHubon üzemeltetett összetevőkre hivatkozik:
go mod init speech-synthesis go get github.com/Microsoft/cognitive-services-speech-sdk-goFontos
Győződjön meg arról, hogy beállítja a környezeti és
SPEECH_KEYaSPEECH_REGIONkörnyezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.Most hozza létre és futtassa a kódot:
go build go run speech-synthesis
Megjegyzések
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Referenciadokumentáció | További minták a GitHubon
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy AI-szolgáltatási erőforrást a Speechhez az Azure Portalon.
- Szerezze meg a Speech erőforráskulcsot és a végpontot. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
A környezet beállításához telepítse a Speech SDK-t. A rövid útmutatóban szereplő minta a Java-futtatókörnyezettel működik.
Telepítse az Apache Maven-t. Ezután futtassa
mvn -va sikeres telepítés megerősítéséhez.Hozzon létre egy pom.xml fájlt a projekt gyökerében, és másolja be a következő kódot:
<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.43.0</version> </dependency> </dependencies> </project>Telepítse a Speech SDK-t és a függőségeket.
mvn clean dependency:copy-dependencies
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -végpont környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
ENDPOINTkörnyezeti változó beállításához cserélje le saját-végpontot az erőforrás valamelyik végpontjára.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Az alábbi lépéseket követve hozzon létre egy konzolalkalmazást a beszédfelismeréshez.
Hozzon létre egy SpeechSynthesis.java nevű fájlt ugyanabban a projekt gyökérkönyvtárában.
Másolja a következő kódot a SpeechSynthesis.java:
import com.microsoft.cognitiveservices.speech.*; import com.microsoft.cognitiveservices.speech.audio.*; import java.net.URI; import java.net.URISyntaxException; import java.util.Scanner; import java.util.concurrent.ExecutionException; public class SpeechSynthesis { // This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" private static String speechKey = System.getenv("SPEECH_KEY"); private static String endpoint = System.getenv("ENDPOINT"); public static void main(String[] args) throws InterruptedException, ExecutionException, URISyntaxException { SpeechConfig speechConfig = SpeechConfig.fromEndpoint(new URI(endpoint), speechKey); speechConfig.setSpeechSynthesisVoiceName("en-US-Ava:DragonHDLatestNeural"); 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 endpoint values?"); } } System.exit(0); } }A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Futtassa a konzolalkalmazást a beszédszintézis alapértelmezett hangszóróra történő kimenetéhez.
javac SpeechSynthesis.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechSynthesisFontos
Győződjön meg arról, hogy beállítja a környezeti és
SPEECH_KEYaENDPOINTkörnyezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.Írjon be egy szöveget, amelyet el szeretne mondani. Írja be például, hogy szívesen kipróbálom a szövegfelolvasást. Válassza az Enter billentyűt a szintetizált beszéd meghallgatásához.
Enter some text that you want to speak > I'm excited to try text to speech
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakTextAsync művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy Öntödei erőforrást a Speechhez az Azure Portalon.
- Kérje le a Speech erőforráskulcsát és régióját. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
Beállítás
Hozzon létre egy új mappát
synthesis-quickstart, és lépjen a rövid útmutató mappába a következő paranccsal:mkdir synthesis-quickstart && cd synthesis-quickstartHozza létre a
package.jsonkövetkező paranccsal:npm init -yTelepítse a JavaScripthez készült Speech SDK-t a következőkkel:
npm install microsoft-cognitiveservices-speech-sdk
Erőforrásadatok lekérése
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -régió környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
SPEECH_REGIONkörnyezeti változó beállításához cserélje le a régiót az erőforrás egyik régiójára. - A
ENDPOINTkörnyezeti változó beállításához cserélje leyour-endpointa Speech-erőforrás tényleges végpontjára.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Beszédszintézis fájlba
Beszéd fordítása fájlból:
Hozzon létre egy synthesis.jsnevű új fájlt a következő tartalommal:
import { createInterface } from "readline"; import { SpeechConfig, AudioConfig, SpeechSynthesizer, ResultReason } from "microsoft-cognitiveservices-speech-sdk"; function synthesizeSpeech() { const audioFile = "YourAudioFile.wav"; // This example requires environment variables named "ENDPOINT" and "SPEECH_KEY" const speechConfig = SpeechConfig.fromEndpoint(new URL(ENDPOINT), process.env.SPEECH_KEY); const audioConfig = AudioConfig.fromAudioFileOutput(audioFile); // The language of the voice that speaks. speechConfig.speechSynthesisVoiceName = "en-US-Ava:DragonHDLatestNeural"; // Create the speech synthesizer. const synthesizer = new SpeechSynthesizer(speechConfig, audioConfig); const rl = 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 === 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(); }, function (err) { console.trace("err - " + err); synthesizer.close(); }); console.log("Now synthesizing to: " + audioFile); }); } synthesizeSpeech();A synthesis.jslehetőség szerint átnevezheti YourAudioFile.wav egy másik kimeneti fájlnévre.
A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Futtassa a konzolalkalmazást a beszédszintézis fájlba való elindításához:
node synthesis.js
Kimenet
A következő kimenetnek kell megjelennie a konzolon. Kövesse az utasításokat a szintetizálni kívánt szöveg megadásához:
Enter some text that you want to speak >
> I'm excited to try text to speech
Now synthesizing to: YourAudioFile.wav
synthesis finished.
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakTextAsync művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Referenciadokumentáció csomag (letöltés) |
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy Öntödei erőforrást a Speechhez az Azure Portalon.
- Kérje le a Speech erőforráskulcsát és régióját. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
A Speech SDK for Swift keretrendszercsomagként van elosztva. A keretrendszer támogatja az Objective-C-t és a Swiftet iOS és macOS rendszeren is.
A Speech SDK használható Xcode-projektekben CocoaPodként, vagy közvetlenül és manuálisan csatolva. Ez az útmutató egy CocoaPodot használ. Telepítse a CocoaPod függőségkezelőt a telepítési útmutatóban leírtak szerint.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -régió környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
SPEECH_REGIONkörnyezeti változó beállításához cserélje le a régiót az erőforrás egyik régiójára. - A
ENDPOINTkörnyezeti változó beállításához cserélje leyour-endpointa Speech-erőforrás tényleges végpontjára.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Az alábbi lépéseket követve szintetizálhatja a beszédet egy macOS-alkalmazásban.
Klónozza az Azure-Samples/cognitive-services-speech-sdk adattárat a Synthesize hang lekéréséhez MacOS-en a Swiftben a Speech SDK mintaprojekt használatával. Az adattár iOS-mintákkal is rendelkezik.
Lépjen a letöltött mintaalkalmazás (
helloworld) könyvtárára egy terminálban.Futtassa a következő parancsot:
pod install. Ez a parancs létrehoz egyhelloworld.xcworkspaceXcode-munkaterületet, amely függőségként tartalmazza a mintaalkalmazást és a Speech SDK-t is.Nyissa meg a munkaterületet
helloworld.xcworkspaceaz Xcode-ban.Nyissa meg az AppDelegate.swift nevű fájlt, és keresse meg az
applicationDidFinishLaunchingitt látható módszereket éssynthesizemetódusokat.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-Ava:DragonHDLatestNeural"; 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 } }Az AppDelegate.m-ben használja a Speech-erőforráskulcshoz és -régióhoz korábban beállított környezeti változókat.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]Az AppDelegate.m-ben opcionálisan szerepeljen egy beszédszintézis hangneve az itt látható módon:
speechConfig?.speechSynthesisVoiceName = "en-US-Ava:DragonHDLatestNeural";A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Ha láthatóvá szeretné tenni a hibakeresési kimenetet, válassza a Hibakeresési terület> megtekintése>lehetőséget.
A példakód létrehozásához és futtatásához válassza lehetőséget a menüből, vagy válassza a > gombot.
Fontos
Győződjön meg arról, hogy beállítja a környezeti és SPEECH_KEYa SPEECH_REGION környezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.
Miután beírt néhány szöveget, és kiválasztotta az appban a gombot, hallania kell a szintetizált hang lejátszását.
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakText művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Referenciadokumentáció csomag (PyPi) |
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy AI-szolgáltatási erőforrást a Speechhez az Azure Portalon.
- Szerezze meg a Speech erőforráskulcsot és a végpontot. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
A környezet beállítása
A PythonHoz készült Speech SDK Python-csomagindex (PyPI) modulként érhető el. A PythonHoz készült Speech SDK kompatibilis a Windows, a Linux és a macOS rendszerrel.
- Windows rendszeren telepítse a Visual Studio 2015, 2017, 2019 és 2022 Microsoft Visual C++ terjeszthető verzióját a platformhoz. A csomag telepítése újraindítást igényelhet.
- Linuxon az x64-alapú célarchitektúrát kell használnia.
Telepítse a Python 3.7-es vagy újabb verzióját. A követelményekről további információt a Speech SDK telepítése című témakörben talál.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -végpont környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
ENDPOINTkörnyezeti változó beállításához cserélje le saját-végpontot az erőforrás valamelyik végpontjára.
setx SPEECH_KEY your-key
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Az alkalmazás létrehozása
Kövesse az alábbi lépéseket egy konzolalkalmazás létrehozásához.
Nyisson meg egy parancssori ablakot abban a mappában, ahol az új projektet szeretné. Hozzon létre egy speech_synthesis.py nevű fájlt.
Futtassa ezt a parancsot a Speech SDK telepítéséhez:
pip install azure-cognitiveservices-speechMásolja a következő kódot a speech_synthesis.py:
import os import azure.cognitiveservices.speech as speechsdk # This example requires environment variables named "SPEECH_KEY" and "ENDPOINT" # Replace with your own subscription key and endpoint, the endpoint is like : "https://YourServiceRegion.api.cognitive.microsoft.com" speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), endpoint=os.environ.get('ENDPOINT')) 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-Ava:DragonHDLatestNeural' 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 endpoint values?")A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Az új konzolalkalmazás futtatásával indítsa el a beszédszintézist az alapértelmezett hangszórón.
python speech_synthesis.pyFontos
Győződjön meg arról, hogy beállítja a környezeti és
SPEECH_KEYaENDPOINTkörnyezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.Írjon be egy szöveget, amelyet el szeretne mondani. Írja be például, hogy szívesen kipróbálom a szövegfelolvasást. Válassza az Enter billentyűt a szintetizált beszéd meghallgatásához.
Enter some text that you want to speak > I'm excited to try text to speech
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a speak_text_async művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Speech to text REST API reference | Speech to text REST API for short audio reference | További minták a GitHubon
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy Öntödei erőforrást a Speechhez az Azure Portalon.
- Kérje le a Speech erőforráskulcsát és régióját. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
Környezeti változók beállítása
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -régió környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
SPEECH_REGIONkörnyezeti változó beállításához cserélje le a régiót az erőforrás egyik régiójára. - A
ENDPOINTkörnyezeti változó beállításához cserélje leyour-endpointa Speech-erőforrás tényleges végpontjára.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Beszédszintézis fájlba
Egy parancssorban futtassa a következő cURL-parancsot. Másik kimeneti fájlnévre is átnevezheti output.mp3 .
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-Ava:DragonHDLatestNeural'>my voice is my passport verify me</voice></speak>" --output output.mp3
Fontos
Győződjön meg arról, hogy beállítja a környezeti és SPEECH_KEYa SPEECH_REGION környezeti változókat. Ha nem állítja be ezeket a változókat, a minta hibaüzenettel meghiúsul.
A megadott szövegnek egy output.mp3 nevű hangfájlba kell kimenetnek lennie.
A beszédszintézis nyelvének módosításához cserélje le en-US-Ava:DragonHDLatestNeural egy másik támogatott hangra.
Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.
További információ: Text to speech REST API.
Megjegyzések
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.
Az Azure Speech in Foundry Tools használatával futtathat egy olyan alkalmazást, amely emberi hangszintézist ad a szöveg olvasásához. Módosíthatja a hangot, megadhatja a kimondandó szöveget, és meghallgathatja a kimenetet a számítógép hangszóróján.
Tipp.
A Speech Studio Voice Galleryben anélkül próbálhat szövegfelolvasást, hogy regisztrálná vagy írná a kódot.
Tipp.
Az Azure Speech Toolkit segítségével egyszerűen hozhat létre és futtathat mintákat a Visual Studio Code-on.
Előfeltételek
- Azure-előfizetés. Ingyenesen létrehozhat egyet.
- Hozzon létre egy Öntödei erőforrást a Speechhez az Azure Portalon.
- Kérje le a Speech erőforráskulcsát és régióját. A Speech-erőforrás üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget a kulcsok megtekintéséhez és kezeléséhez.
Beállítás
Hozzon létre egy új mappát
synthesis-quickstart, és lépjen a rövid útmutató mappába a következő paranccsal:mkdir synthesis-quickstart && cd synthesis-quickstartHozza létre a
package.jsonkövetkező paranccsal:npm init -yFrissítse a
package.jsonECMAScriptre a következő paranccsal:npm pkg set type=moduleTelepítse a JavaScripthez készült Speech SDK-t a következőkkel:
npm install microsoft-cognitiveservices-speech-sdkA TypeScript-hibák elkerülése érdekében telepítenie kell a Node.js típusdefiníciókat. Futtassa a következő parancsot:
npm install --save-dev @types/node
Erőforrásadatok lekérése
Az Foundry Tools eléréséhez hitelesítenie kell az alkalmazást. Ez a cikk bemutatja, hogyan tárolhatja a hitelesítő adatait környezeti változókkal. Ezután hozzáférhet a környezeti változókhoz a kódból az alkalmazás hitelesítéséhez. Éles környezetben biztonságosabban tárolhatja és érheti el a hitelesítő adatait.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
A Speech-erőforráskulcs és -régió környezeti változóinak beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.
- A
SPEECH_KEYkörnyezeti változó beállításához cserélje le a kulcsot az erőforrás egyik kulcsára. - A
SPEECH_REGIONkörnyezeti változó beállításához cserélje le a régiót az erőforrás egyik régiójára. - A
ENDPOINTkörnyezeti változó beállításához cserélje leyour-endpointa Speech-erőforrás tényleges végpontjára.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
setx ENDPOINT your-endpoint
Feljegyzés
Ha csak az aktuális konzolon kell hozzáférnie a környezeti változókhoz, a környezeti változót set ahelyett setxállíthatja be.
A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania a környezeti változók olvasásához szükséges programokat, beleértve a konzolablakot is. Ha például a Visual Studiót használja szerkesztőként, indítsa újra a Visual Studiót a példa futtatása előtt.
Beszédszintézis fájlba
Beszéd fordítása fájlból:
Hozzon létre egy synthesis.ts nevű új fájlt a következő tartalommal:
import { createInterface } from "readline"; import { SpeechConfig, AudioConfig, SpeechSynthesizer, ResultReason, SpeechSynthesisResult } from "microsoft-cognitiveservices-speech-sdk"; function synthesizeSpeech(): void { const audioFile = "YourAudioFile.wav"; // This example requires environment variables named "ENDPOINT" and "SPEECH_KEY" const speechConfig: SpeechConfig = SpeechConfig.fromEndpoint(new URL(process.env.ENDPOINT!), process.env.SPEECH_KEY!); const audioConfig: AudioConfig = AudioConfig.fromAudioFileOutput(audioFile); // The language of the voice that speaks. speechConfig.speechSynthesisVoiceName = "en-US-Ava:DragonHDLatestNeural"; // Create the speech synthesizer. const synthesizer: SpeechSynthesizer = new SpeechSynthesizer(speechConfig, audioConfig); const rl = createInterface({ input: process.stdin, output: process.stdout }); rl.question("Enter some text that you want to speak >\n> ", function (text: string) { rl.close(); // Start the synthesizer and wait for a result. synthesizer.speakTextAsync(text, function (result: SpeechSynthesisResult) { if (result.reason === 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(); }, function (err: string) { console.trace("err - " + err); synthesizer.close(); }); console.log("Now synthesizing to: " + audioFile); }); } synthesizeSpeech();A synthesis.ts tetszés szerint átnevezheti YourAudioFile.wav egy másik kimeneti fájlnévre.
A beszédszintézis nyelvének módosításához cserélje le
en-US-Ava:DragonHDLatestNeuralegy másik támogatott hangra.Minden neurális hang többnyelvű és folyékony a saját nyelvén és angolul. Ha például a bemeneti szöveg angol nyelven van , izgatott vagyok, hogy kipróbálhassam a szöveget a beszédhez , és beállítom
es-ES-Ximena:DragonHDLatestNeural, a szöveg angolul, spanyol akcentussal szólal meg. Ha a hang nem beszéli a bemeneti szöveg nyelvét, a Speech szolgáltatás nem ad ki szintetizált hangot.Hozza létre a fájlt a
tsconfig.jsonTypeScript-kód fordításához, és másolja a következő kódot az ECMAScripthez.{ "compilerOptions": { "module": "NodeNext", "target": "ES2022", // Supports top-level await "moduleResolution": "NodeNext", "skipLibCheck": true, // Avoid type errors from node_modules "strict": true // Enable strict type-checking options }, "include": ["*.ts"] }Transpilálás TypeScriptről JavaScriptre.
tscEnnek a parancsnak nem kell kimenetet létrehoznia, ha sikeres.
Futtassa a konzolalkalmazást a beszédszintézis fájlba való elindításához:
node synthesis.js
Kimenet
A következő kimenetnek kell megjelennie a konzolon. Kövesse az utasításokat a szintetizálni kívánt szöveg megadásához:
Enter some text that you want to speak >
> I'm excited to try text to speech
Now synthesizing to: YourAudioFile.wav
synthesis finished.
Megjegyzések
További beszédszintézisi lehetőségek
Ez a rövid útmutató a SpeakTextAsync művelettel szintetizál egy rövid szövegblokkot, amelyet beír. A fájlból származó hosszú formátumú szöveget is használhatja, és finomabb módon szabályozhatja a hangstílusokat, a prózát és az egyéb beállításokat.
- A beszédszintézis és a beszédszintézis korrektúranyelvének (SSML) áttekintését a fájlból származó beszédszintézisről, valamint a hangstílusok, a proszódiák és egyéb beállítások finomabb szabályozásáról olvashat.
- A hosszú formátumú szövegek beszédre való szintetizálásával kapcsolatos információkért tekintse meg a batch synthesis API-t a szövegfelolvasáshoz .
Az OpenAI szövegből beszédhangokra az Azure Speech szolgáltatásban, a Foundry Tools használatával
Az OpenAI szöveg és a beszédhangok is támogatottak. Lásd OpenAI text to speech hangokat az Azure Speech-ben és többnyelvű hangokat. Lecserélheti en-US-Ava:DragonHDLatestNeural egy támogatott OpenAI-hangnévre, például en-US-FableMultilingualNeural.
Az erőforrások eltávolítása
Az Azure Portal vagy az Azure Parancssori felület (CLI) használatával eltávolíthatja a létrehozott Speech-erőforrást.