Mulai cepat: Mengenali dan menerjemahkan ucapan ke teks

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

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

Menerjemahkan ucapan dari mikrofon

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

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

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

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

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    using Microsoft.CognitiveServices.Speech.Audio;
    using Microsoft.CognitiveServices.Speech.Translation;
    
    class Program 
    {
        static string YourSubscriptionKey = "YourSubscriptionKey";
        static string YourServiceRegion = "YourServiceRegion";
    
        static void OutputSpeechRecognitionResult(TranslationRecognitionResult translationRecognitionResult)
        {
            switch (translationRecognitionResult.Reason)
            {
                case ResultReason.TranslatedSpeech:
                    Console.WriteLine($"RECOGNIZED: Text={translationRecognitionResult.Text}");
                    foreach (var element in translationRecognitionResult.Translations)
                    {
                        Console.WriteLine($"TRANSLATED into '{element.Key}': {element.Value}");
                    }
                    break;
                case ResultReason.NoMatch:
                    Console.WriteLine($"NOMATCH: Speech could not be recognized.");
                    break;
                case ResultReason.Canceled:
                    var cancellation = CancellationDetails.FromResult(translationRecognitionResult);
                    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;
            }
        }
    
        async static Task Main(string[] args)
        {
            var speechTranslationConfig = SpeechTranslationConfig.FromSubscription(YourSubscriptionKey, YourServiceRegion);        
            speechTranslationConfig.SpeechRecognitionLanguage = "en-US";
            speechTranslationConfig.AddTargetLanguage("it");
    
            using var audioConfig = AudioConfig.FromDefaultMicrophoneInput();
            using var translationRecognizer = new TranslationRecognizer(speechTranslationConfig, audioConfig);
    
            Console.WriteLine("Speak into your microphone.");
            var translationRecognitionResult = await translationRecognizer.RecognizeOnceAsync();
            OutputSpeechRecognitionResult(translationRecognitionResult);
        }
    }
    
  4. Di Program.cs, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa. Untuk detail tentang cara mengidentifikasi salah satu dari beberapa bahasa yang mungkin diucapkan, lihat identifikasi bahasa.

  6. Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.

Jalankan aplikasi konsol baru Anda untuk memulai pengenalan ucapan dari mikrofon:

dotnet run

Bicaralah ke mikrofon Saat diminta. Apa yang Anda utarakan harus ditampilkan sebagai teks yang telah diterjemahkan dalam bahasa target:

Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
TRANSLATED into 'it': Sono entusiasta di provare la traduzione vocale.

Keterangan

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

  • Contoh ini menggunakan operasi RecognizeOnceAsync untuk mentranskripsikan ucapan hingga 30 detik, atau sampai keheningan terdeteksi. Untuk informasi tentang pengenalan berkelanjutan untuk audio yang lebih panjang, termasuk percakapan multibahasa, lihat Cara menerjemahkan ucapan.
  • Untuk mengenali ucapan dari file audio, gunakan FromWavFileInput sebagai pengganti FromDefaultMicrophoneInput:
    using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
    
  • Untuk file audio terkompresi seperti MP4, instal GStreamer dan gunakan PullAudioInputStream atau PushAudioInputStream. Untuk informasi selengkapnya, lihat Cara menggunakan audio input terkompresi.

Membersihkan sumber daya

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

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

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

Menerjemahkan ucapan dari mikrofon

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

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

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

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

    #include <iostream> 
    #include <speechapi_cxx.h>
    
    using namespace Microsoft::CognitiveServices::Speech;
    using namespace Microsoft::CognitiveServices::Speech::Audio;
    using namespace Microsoft::CognitiveServices::Speech::Translation;
    
    auto YourSubscriptionKey = "YourSubscriptionKey";
    auto YourServiceRegion = "YourServiceRegion";
    
    int main()
    {
        auto speechTranslationConfig = SpeechTranslationConfig::FromSubscription(YourSubscriptionKey, YourServiceRegion);
        speechTranslationConfig->SetSpeechRecognitionLanguage("en-US");
        speechTranslationConfig->AddTargetLanguage("it");
    
        auto audioConfig = AudioConfig::FromDefaultMicrophoneInput();
        auto translationRecognizer = TranslationRecognizer::FromConfig(speechTranslationConfig, audioConfig);
    
        std::cout << "Speak into your microphone.\n";
        auto result = translationRecognizer->RecognizeOnceAsync().get();
    
        if (result->Reason == ResultReason::TranslatedSpeech)
        {
            std::cout << "RECOGNIZED: Text=" << result->Text << std::endl;
            for (auto pair : result->Translations)
            {
                auto language = pair.first;
                auto translation = pair.second;
                std::cout << "Translated into '" << language << "': " << translation << std::endl;
            }
        }
        else if (result->Reason == ResultReason::NoMatch)
        {
            std::cout << "NOMATCH: Speech could not be recognized." << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = CancellationDetails::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;
            }
        }
    }
    
  4. Di SpeechTranslation.cpp, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa. Untuk detail tentang cara mengidentifikasi salah satu dari beberapa bahasa yang mungkin diucapkan, lihat identifikasi bahasa.

  6. Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.

Bangun dan jalankan aplikasi konsol baru Anda untuk memulai pengenalan ucapan dari mikrofon.

Bicaralah ke mikrofon Saat diminta. Apa yang Anda utarakan harus ditampilkan sebagai teks yang telah diterjemahkan dalam bahasa target:

Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.

Keterangan

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

  • Contoh ini menggunakan operasi RecognizeOnceAsync untuk mentranskripsikan ucapan hingga 30 detik, atau sampai keheningan terdeteksi. Untuk informasi tentang pengenalan berkelanjutan untuk audio yang lebih panjang, termasuk percakapan multibahasa, lihat Cara menerjemahkan ucapan.
  • Untuk mengenali ucapan dari file audio, gunakan FromWavFileInput sebagai pengganti FromDefaultMicrophoneInput:
    auto audioInput = AudioConfig::FromWavFileInput("YourAudioFile.wav");
    
  • Untuk file audio terkompresi seperti MP4, instal GStreamer dan gunakan PullAudioInputStream atau PushAudioInputStream. Untuk informasi selengkapnya, lihat Cara menggunakan audio input terkompresi.

Membersihkan sumber daya

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

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

Speech SDK untuk Go tidak mendukung terjemahan ucapan. Silakan pilih bahasa pemrograman lain atau referensi Go dan sampel yang ditautkan dari awal artikel ini.

Dokumentasi referensi | Sampel Tambahan pada GitHub

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

Untuk menyelesaikan langkah-langkah dalam mulai cepat ini, Anda juga harus menginstal Apache Maven.

Menerjemahkan ucapan dari mikrofon

Untuk menyelesaikan langkah-langkah dalam mulai cepat ini, Anda juga harus menginstal Apache Maven. Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru untuk pengenalan ucapan.

  1. Buka perintah tempat Anda menginginkan proyek baru berada dan buat file pom.xml baru.

  2. Salin konten XML berikut ke pom.xml:

    <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>
        <repositories>
            <repository>
            <id>maven-cognitiveservices-speech</id>
            <name>Microsoft Cognitive Services Speech Maven Repository</name>
            <url>https://azureai.azureedge.net/maven/</url>
            </repository>
        </repositories>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.22.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Jalankan perintah Maven berikut untuk menginstal SDK Azure Cognitive Service untuk Ucapan dan dependensi.

    mvn clean dependency:copy-dependencies
    
  4. Buat file baru bernama SpeechTranslation.java dalam direktori akar proyek yang sama.

  5. Salin kode berikut ke dalam SpeechTranslation.java:

    import com.microsoft.cognitiveservices.speech.*;
    import com.microsoft.cognitiveservices.speech.audio.AudioConfig;
    import com.microsoft.cognitiveservices.speech.translation.*;
    
    import java.util.concurrent.ExecutionException;
    import java.util.concurrent.Future;
    import java.util.Map;
    
    public class SpeechTranslation {
        private static String YourSubscriptionKey = "YourSubscriptionKey";
        private static String YourServiceRegion = "YourServiceRegion";
    
        public static void main(String[] args) throws InterruptedException, ExecutionException {
            SpeechTranslationConfig speechTranslationConfig = SpeechTranslationConfig.fromSubscription(YourSubscriptionKey, YourServiceRegion);
            speechTranslationConfig.setSpeechRecognitionLanguage("en-US");
    
            String[] toLanguages = { "it" };
            for (String language : toLanguages) {
                speechTranslationConfig.addTargetLanguage(language);
            }
    
            recognizeFromMicrophone(speechTranslationConfig);
        }
    
        public static void recognizeFromMicrophone(SpeechTranslationConfig speechTranslationConfig) throws InterruptedException, ExecutionException {
            AudioConfig audioConfig = AudioConfig.fromDefaultMicrophoneInput();
            TranslationRecognizer translationRecognizer = new TranslationRecognizer(speechTranslationConfig, audioConfig);
    
            System.out.println("Speak into your microphone.");
            Future<TranslationRecognitionResult> task = translationRecognizer.recognizeOnceAsync();
            TranslationRecognitionResult translationRecognitionResult = task.get();
    
            if (translationRecognitionResult.getReason() == ResultReason.TranslatedSpeech) {
                System.out.println("RECOGNIZED: Text=" + translationRecognitionResult.getText());
                for (Map.Entry<String, String> pair : translationRecognitionResult.getTranslations().entrySet()) {
                    System.out.printf("Translated into '%s': %s\n", pair.getKey(), pair.getValue());
                }
            }
            else if (translationRecognitionResult.getReason() == ResultReason.NoMatch) {
                System.out.println("NOMATCH: Speech could not be recognized.");
            }
            else if (translationRecognitionResult.getReason() == ResultReason.Canceled) {
                CancellationDetails cancellation = CancellationDetails.fromResult(translationRecognitionResult);
                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);
        }
    }
    
  6. Di SpeechTranslation.java, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  7. Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa. Untuk detail tentang cara mengidentifikasi salah satu dari beberapa bahasa yang mungkin diucapkan, lihat identifikasi bahasa.

  8. Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.

Jalankan aplikasi konsol baru Anda untuk memulai pengenalan ucapan dari mikrofon:

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

Bicaralah ke mikrofon Saat diminta. Apa yang Anda utarakan harus ditampilkan sebagai teks yang telah diterjemahkan dalam bahasa target:

Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.

Keterangan

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

  • Contoh ini menggunakan operasi RecognizeOnceAsync untuk mentranskripsikan ucapan hingga 30 detik, atau sampai keheningan terdeteksi. Untuk informasi tentang pengenalan berkelanjutan untuk audio yang lebih panjang, termasuk percakapan multibahasa, lihat Cara menerjemahkan ucapan.
  • Untuk mengenali ucapan dari file audio, gunakan fromWavFileInput sebagai pengganti fromDefaultMicrophoneInput:
    AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
    
  • Untuk file audio terkompresi seperti MP4, instal GStreamer dan gunakan PullAudioInputStream atau PushAudioInputStream. Untuk informasi selengkapnya, lihat Cara menggunakan audio input terkompresi.

Membersihkan sumber daya

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

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

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

Menerjemahkan ucapan dari file

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

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

  2. Instal SDK Ucapan untuk JavaScript:

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

    const fs = require("fs");
    const sdk = require("microsoft-cognitiveservices-speech-sdk");
    const speechTranslationConfig = sdk.SpeechTranslationConfig.fromSubscription("YourSubscriptionKey", "YourServiceRegion");
    speechTranslationConfig.speechRecognitionLanguage = "en-US";
    
    var language = "it";
    speechTranslationConfig.addTargetLanguage(language);
    
    function fromFile() {
        let audioConfig = sdk.AudioConfig.fromWavFileInput(fs.readFileSync("YourAudioFile.wav"));
        let translationRecognizer = new sdk.TranslationRecognizer(speechTranslationConfig, audioConfig);
    
        translationRecognizer.recognizeOnceAsync(result => {
            switch (result.reason) {
                case sdk.ResultReason.TranslatedSpeech:
                    console.log(`RECOGNIZED: Text=${result.text}`);
                    console.log("Translated into [" + language + "]: " + result.translations.get(language));
    
                    break;
                case sdk.ResultReason.NoMatch:
                    console.log("NOMATCH: Speech could not be recognized.");
                    break;
                case sdk.ResultReason.Canceled:
                    const cancellation = sdk.CancellationDetails.fromResult(result);
                    console.log(`CANCELED: Reason=${cancellation.reason}`);
    
                    if (cancellation.reason == sdk.CancellationReason.Error) {
                        console.log(`CANCELED: ErrorCode=${cancellation.ErrorCode}`);
                        console.log(`CANCELED: ErrorDetails=${cancellation.errorDetails}`);
                        console.log("CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
            }
            translationRecognizer.close();
        });
    }
    fromFile();
    
  4. Di SpeechTranslation.js, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Di SpeechTranslation.js, ganti YourAudioFile.wav dengan file WAV Anda sendiri. Contoh ini hanya mengenali ucapan dari file WAV. Untuk informasi tentang format audio lainnya, lihat Cara menggunakan audio input terkompresi. Contoh ini mendukung audio hingga 30 detik.

  6. Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa. Untuk detail tentang cara mengidentifikasi salah satu dari beberapa bahasa yang mungkin diucapkan, lihat identifikasi bahasa.

  7. Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.

Jalankan aplikasi konsol baru Anda untuk memulai pengenalan ucapan dari file:

node.exe SpeechTranslation.js

Ucapan dari file audio harus ditampilkan sebagai teks yang telah diterjemahkan dalam bahasa target:

RECOGNIZED: Text=I'm excited to try speech translation.
Translated into [it]: Sono entusiasta di provare la traduzione vocale.

Keterangan

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

Contoh ini menggunakan operasi recognizeOnceAsync untuk mentranskripsikan ucapan hingga 30 detik, atau sampai keheningan terdeteksi. Untuk informasi tentang pengenalan berkelanjutan untuk audio yang lebih panjang, termasuk percakapan multibahasa, lihat Cara menerjemahkan ucapan.

Catatan

Mengenali ucapan dari mikrofon tidak didukung di Node.js. Ini hanya didukung di lingkungan JavaScript berbasis browser.

Membersihkan sumber daya

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

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

Speech SDK untuk Objective-C memang mendukung terjemahan ucapan, tetapi kami belum menyertakan panduan di sini. Silakan pilih bahasa pemrograman lain untuk memulai dan belajar tentang konsep, atau lihat referensi Objective-C dan sampel yang ditautkan dari awal artikel ini.

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

Speech SDK untuk Swift memang mendukung terjemahan ucapan, tetapi kami belum menyertakan panduan di sini. Silakan pilih bahasa pemrograman lain untuk memulai dan mempelajari tentang konsep, atau lihat referensi Swift dan sampel yang ditautkan dari awal artikel ini.

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

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

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

Menerjemahkan ucapan dari mikrofon

Ikuti langkah-langkah ini untuk membuat aplikasi konsol baru.

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

  2. Jalankan perintah ini untuk menginstal SDK Ucapan:

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

    import azure.cognitiveservices.speech as speechsdk
    
    def recognize_from_microphone():
        speech_translation_config = speechsdk.translation.SpeechTranslationConfig(subscription="YourSubscriptionKey", region="YourServiceRegion")
        speech_translation_config.speech_recognition_language="en-US"
    
        target_language="it"
        speech_translation_config.add_target_language(target_language)
    
        audio_config = speechsdk.audio.AudioConfig(use_default_microphone=True)
        translation_recognizer = speechsdk.translation.TranslationRecognizer(translation_config=speech_translation_config, audio_config=audio_config)
    
        print("Speak into your microphone.")
        translation_recognition_result = translation_recognizer.recognize_once_async().get()
    
        if translation_recognition_result.reason == speechsdk.ResultReason.TranslatedSpeech:
            print("Recognized: {}".format(translation_recognition_result.text))
            print("""Translated into '{}': {}""".format(
                target_language, 
                translation_recognition_result.translations[target_language]))
        elif translation_recognition_result.reason == speechsdk.ResultReason.NoMatch:
            print("No speech could be recognized: {}".format(translation_recognition_result.no_match_details))
        elif translation_recognition_result.reason == speechsdk.ResultReason.Canceled:
            cancellation_details = translation_recognition_result.cancellation_details
            print("Speech Recognition canceled: {}".format(cancellation_details.reason))
            if cancellation_details.reason == speechsdk.CancellationReason.Error:
                print("Error details: {}".format(cancellation_details.error_details))
                print("Did you set the speech resource key and region values?")
    
    recognize_from_microphone()
    
  4. Di speech_translation.py, ganti YourSubscriptionKey dengan kunci sumber daya Azure Cognitive Service untuk Ucapan Anda, dan ganti YourServiceRegion dengan wilayah sumber daya Azure Cognitive Service untuk Ucapan Anda.

  5. Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa. Untuk detail tentang cara mengidentifikasi salah satu dari beberapa bahasa yang mungkin diucapkan, lihat identifikasi bahasa.

  6. Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.

Jalankan aplikasi konsol baru Anda untuk memulai pengenalan ucapan dari mikrofon:

python speech_translation.py

Bicaralah ke mikrofon Saat diminta. Apa yang Anda utarakan harus ditampilkan sebagai teks yang telah diterjemahkan dalam bahasa target:

Speak into your microphone.
Recognized: I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.

Keterangan

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

  • Contoh ini menggunakan operasi recognize_once_async untuk mentranskripsikan ucapan hingga 30 detik, atau sampai keheningan terdeteksi. Untuk informasi tentang pengenalan berkelanjutan untuk audio yang lebih panjang, termasuk percakapan multibahasa, lihat Cara menerjemahkan ucapan.
  • Untuk mengenali ucapan dari file audio, gunakan filename sebagai pengganti use_default_microphone:
    audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
    
  • Untuk file audio terkompresi seperti MP4, instal GStreamer dan gunakan PullAudioInputStream atau PushAudioInputStream. Untuk informasi selengkapnya, lihat Cara menggunakan audio input terkompresi.

Membersihkan sumber daya

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

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

REST API tidak mendukung terjemahan ucapan. Silakan pilih bahasa atau alat pemrograman lain dari bagian atas halaman ini.

Di mulai cepat ini, Anda menjalankan aplikasi untuk menerjemahkan ucapan dari satu bahasa ke teks dalam bahasa lain.

Prasyarat

Menyiapkan lingkungan

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

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

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

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

Menerjemahkan ucapan dari mikrofon

Jalankan perintah berikut untuk menerjemahkan ucapan dari mikrofon dari Bahasa Inggris ke Bahasa Italia:

spx translate --source en-US --target it --microphone

Bicaralah ke mikrofon dan Anda melihat transkripsi dari ucapan Anda yang telah diterjemahkan secara real time. CLI Ucapan akan berhenti setelah periode keheningan, setelah 30 detik, atau saat Anda menekan Ctrl+C.

Connection CONNECTED...
TRANSLATING into 'it': Sono (from 'I'm')
TRANSLATING into 'it': Sono entusiasta (from 'I'm excited to')
TRANSLATING into 'it': Sono entusiasta di provare la parola (from 'I'm excited to try speech')
TRANSLATED into 'it': Sono entusiasta di provare la traduzione vocale. (from 'I'm excited to try speech translation.')

Keterangan

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

  • Untuk mendapatkan ucapan dari file audio, gunakan --file alih-alih --microphone. Untuk file audio terkompresi seperti MP4, instal GStreamer dan gunakan --format. Untuk informasi selengkapnya, lihat Cara menggunakan audio input terkompresi.
    spx translate --source en-US --target it --file YourAudioFile.wav
    spx translate --source en-US --target it --file YourAudioFile.mp4 --format any
    
  • Untuk meningkatkan akurasi pengenalan kata atau ucapan tertentu, gunakan daftar frase. Anda menyertakan daftar frase secara in-line atau dengan file teks:
    spx translate --source en-US --target it --microphone --phrases "Contoso;Jessie;Rehaan;"
    spx translate --source en-US --target it --microphone --phrases @phrases.txt
    
  • Untuk mengubah bahasa pengenalan ucapan, ganti en-US dengan bahasa lain yang didukung. Misalnya, es-ES untuk Spanyol (Spanyol). Bahasa default adalah en-US jika Anda tidak menentukan bahasa.
    spx translate --microphone --source es-ES
    
  • Untuk mengubah bahasa target penerjemahan, ganti it dengan bahasa lain yang didukung. Misalnya, es untuk Spanyol (Spanyol). Bahasa default adalah en jika Anda tidak menentukan bahasa.
    spx translate --microphone --target es
    
  • Untuk terus melakukan pengenalan audio yang lebih dari 30 detik, tambahkan --continuous:
    spx translate --source en-US --target it --microphone --continuous
    

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

spx help translate

Membersihkan sumber daya

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

Langkah berikutnya