Aracılığıyla paylaş


Hızlı Başlangıç: Konuşmayı metne dönüştürerek resim yazıları oluşturma

Başvuru belgeleri | Paketi (NuGet) | GitHub'da ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Konuşma SDK'sı bir NuGet paketi olarak kullanılabilir ve .NET Standard 2.0'ı uygular. Konuşma SDK'sını bu kılavuzun ilerleyen bölümlerinde yüklersiniz, ancak daha fazla gereksinim için önce SDK yükleme kılavuzunu gözden geçirin.

Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Ortam değişkenlerini belirleme

Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.

Önemli

Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.

  • Ortam değişkenini SPEECH_KEY ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin.
  • Ortam değişkenini SPEECH_REGION ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Not

Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setxile set ayarlayabilirsiniz.

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.

Konuşmadan açıklamalı alt yazılar oluşturma

Resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. GitHub'dan senaryoları/csharp/dotnetcore/captioning/ sample dosyalarını kopyalayın. Git yüklüyse, bir komut istemi açın ve Konuşma SDK'sı git clone örnekleri deposunu indirmek için komutunu çalıştırın.
    git clone https://github.com/Azure-Samples/cognitive-services-speech-sdk.git
    
  2. Bir komut istemi açın ve proje dizinine geçin.
    cd <your-local-path>/scenarios/csharp/dotnetcore/captioning/captioning/
    
  3. Projeyi .NET CLI ile oluşturun.
    dotnet build
    
  4. Uygulamayı tercih ettiğiniz komut satırı bağımsız değişkenleriyle çalıştırın. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Aşağıda bir örnek verilmiştir:
    dotnet run --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Önemli

    ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    ve SPEECH_REGION ortam değişkenlerini yukarıda açıklandığı gibi ayarladığınızdan SPEECH_KEY emin olun. Aksi takdirde ve --region bağımsız değişkenlerini kullanın--key.

Sonuçları denetleme

Yukarıdaki örnekteki realTime seçeneği kullandığınızda, olaylardaki kısmi sonuçlar Recognizing çıktıya eklenir. Bu örnekte, yalnızca son Recognized olay virgülleri içerir. ve Recognized olayları arasındaki Recognizing tek fark virgül değildir. Daha fazla bilgi için bkz . Kısmi sonuçlar alma.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

seçeneğini kullandığınızda --offline , sonuçlar son Recognized olaydan kararlı olur. Kısmi sonuçlar çıkışa dahil değildir:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: captioning --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız. SPEECH_KEY ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --key gerekir.
  • --region REGION: Konuşma kaynak bölgeniz. SPEECH_REGION ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --region gerekir. Örnekler: westus, northeurope

Önemli

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --language LANG: Karşılık gelen desteklenen yerel ayarlardan birini kullanarak bir dil belirtin. Bu, açıklamalı alt yazıları satırlara ayırırken kullanılır. Varsayılan değer en-US olarak belirlenmiştir.

Tanıma seçenekleri şunlardır:

  • --offline: Çevrimdışı sonuçlar çıktısı. geçersiz kılar --realTime. Varsayılan çıkış modu çevrimdışıdır.
  • --realTime: Gerçek zamanlı sonuçların çıktısı.

Gerçek zamanlı çıktı olay sonuçlarını içerir Recognizing . Varsayılan çevrimdışı çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --maxLineLength LENGTH: Resim yazısı için satır başına karakter sayısı üst sınırını UZUNLUK olarak ayarlayın. Minimum değer 20'dir. Varsayılan değer 37'dir (Çince için 30).
  • --lines LINES: Resim yazısı için satır sayısını DOT olarak ayarlayın. Minimum is 1. Varsayılan değer 2'dir.
  • --delay MILLISECONDS: Gerçek zamanlı bir deneyimi taklit etmek için her resim yazısının görüntülenmesini geciktirecek milisaniye. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --remainTime MILLISECONDS: Bir resim yazısı başka bir resim yazısıyla değiştirilmediyse ekranda kaç MILISECONDS kalmalıdır. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Başvuru belgeleri | Paketi (NuGet) | GitHub'da ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Konuşma SDK'sı bir NuGet paketi olarak kullanılabilir ve .NET Standard 2.0'ı uygular. Konuşma SDK'sını bu kılavuzun ilerleyen bölümlerinde yükleyebilirsiniz, ancak daha fazla gereksinim için önce SDK yükleme kılavuzunu gözden geçirin

Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Ortam değişkenlerini belirleme

Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.

Önemli

Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.

  • Ortam değişkenini SPEECH_KEY ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin.
  • Ortam değişkenini SPEECH_REGION ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Not

Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setxile set ayarlayabilirsiniz.

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.

Konuşmadan açıklamalı alt yazılar oluşturma

Windows üzerinde Visual Studio Community 2022 ile resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. Senaryoları/cpp/windows/captioning/ örnek dosyalarını GitHub'dan yerel bir dizine indirin veya kopyalayın.

  2. captioning.sln Çözüm dosyasını Visual Studio Community 2022'de açın.

  3. NuGet paket yöneticisiyle projenize Konuşma SDK'sını yükleyin.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Proje>Özellikleri Genel'i> açın. Yapılandırma'yı olarak All configurationsayarlayın. C++ Dil Standardı olarak ISO C++17 Standard (/std:c++17)ayarlayın.

  5. Derleme>Yapılandırma Yöneticisi'ne tıklayın.

    • 64 bit Windows yüklemesinde Etkin çözüm platformlarını olarak x64ayarlayın.
    • 32 bit Windows yüklemesinde Etkin çözüm platformlarını olarak x86ayarlayın.
  6. Proje>ÖzellikleriNde>Hata Ayıklama'yi açın. Komut Bağımsız Değişkenleri'ne tercih ettiğiniz komut satırı bağımsız değişkenlerini girin. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Örnek aşağıda verilmiştir:

    --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Önemli

    ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    ve SPEECH_REGION ortam değişkenlerini yukarıda açıklandığı gibi ayarladığınızdan SPEECH_KEY emin olun. Aksi takdirde ve --region bağımsız değişkenlerini kullanın--key.

  7. Konsol uygulamasını derleyin ve çalıştırın .

Sonuçları denetleme

Yukarıdaki örnekteki realTime seçeneği kullandığınızda, olaylardaki kısmi sonuçlar Recognizing çıktıya eklenir. Bu örnekte, yalnızca son Recognized olay virgülleri içerir. ve Recognized olayları arasındaki Recognizing tek fark virgül değildir. Daha fazla bilgi için bkz . Kısmi sonuçlar alma.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

seçeneğini kullandığınızda --offline , sonuçlar son Recognized olaydan kararlı olur. Kısmi sonuçlar çıkışa dahil değildir:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: captioning --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız. SPEECH_KEY ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --key gerekir.
  • --region REGION: Konuşma kaynak bölgeniz. SPEECH_REGION ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --region gerekir. Örnekler: westus, northeurope

Önemli

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --language LANG: Karşılık gelen desteklenen yerel ayarlardan birini kullanarak bir dil belirtin. Bu, açıklamalı alt yazıları satırlara ayırırken kullanılır. Varsayılan değer en-US olarak belirlenmiştir.

Tanıma seçenekleri şunlardır:

  • --offline: Çevrimdışı sonuçlar çıktısı. geçersiz kılar --realTime. Varsayılan çıkış modu çevrimdışıdır.
  • --realTime: Gerçek zamanlı sonuçların çıktısı.

Gerçek zamanlı çıktı olay sonuçlarını içerir Recognizing . Varsayılan çevrimdışı çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --maxLineLength LENGTH: Resim yazısı için satır başına karakter sayısı üst sınırını UZUNLUK olarak ayarlayın. Minimum değer 20'dir. Varsayılan değer 37'dir (Çince için 30).
  • --lines LINES: Resim yazısı için satır sayısını DOT olarak ayarlayın. Minimum is 1. Varsayılan değer 2'dir.
  • --delay MILLISECONDS: Gerçek zamanlı bir deneyimi taklit etmek için her resim yazısının görüntülenmesini geciktirecek milisaniye. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --remainTime MILLISECONDS: Bir resim yazısı başka bir resim yazısıyla değiştirilmediyse ekranda kaç MILISECONDS kalmalıdır. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Başvuru belgeleri | Paketi (Go) | GitHub'da ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Platforma özgü yükleme adımları olup olmadığını denetleyin.

Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Konuşmadan açıklamalı alt yazılar oluşturma

Resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. GitHub'dan senaryoları/go/captioning/ örnek dosyaları yerel bir dizine indirin veya kopyalayın.

  2. ile aynı dizinde captioning.gobir komut istemi açın.

  3. GitHub'da barındırılan Konuşma SDK'sı bileşenlerine bağlanan bir go.mod dosya oluşturmak için aşağıdaki komutları çalıştırın:

    go mod init captioning
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    
  4. GO modülünü oluşturun.

    go build
    
  5. Uygulamayı tercih ettiğiniz komut satırı bağımsız değişkenleriyle çalıştırın. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Örnek aşağıda verilmiştir:

    go run captioning --key YourSubscriptionKey --region YourServiceRegion --input caption.this.mp4 --format any --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    değerini YourSubscriptionKey Konuşma kaynak anahtarınız ile değiştirin ve değerini veya northeuropegibi westus Konuşma kaynağı bölgenizle değiştirinYourServiceRegion. ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    Önemli

    İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.

Sonuçları denetleme

Tam açıklamalı alt yazıları olan çıkış dosyası öğesine caption.output.txtyazılır. Ara sonuçlar konsolda gösterilir:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: go run captioning.go helper.go --key <key> --region <region> --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız.
  • --region REGION: Konuşma kaynak bölgeniz. Örnekler: westus, northeurope

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --languages LANG1,LANG2: Belirtilen diller için dil tanımlamayı etkinleştirin. Örneğin: en-US,ja-JP. Bu seçenek yalnızca C++, C# ve Python açıklamalı alt yazı örnekleriyle kullanılabilir. Daha fazla bilgi için bkz . Dil belirleme.

Tanıma seçenekleri şunlardır:

  • --recognizing: Çıkış Recognizing olayı sonuçları. Varsayılan çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Başvuru belgeleri | GitHub'da ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Herhangi bir şey yapabilmeniz için önce Konuşma SDK'sını yüklemeniz gerekir. Bu hızlı başlangıçtaki örnek, OpenJDK 17'nin Microsoft Derlemesi ile çalışır

  1. Apache Maven'ı yükleyin. Ardından başarılı yüklemeyi onaylamak için komutunu çalıştırın mvn -v .
  2. Projenizin kökünde yeni pom.xml bir dosya oluşturun ve aşağıdakini içine kopyalayın:
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.40.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Konuşma SDK'sını ve bağımlılıkları yükleyin.
    mvn clean dependency:copy-dependencies
    
  4. Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Ortam değişkenlerini belirleme

Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.

Önemli

Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.

  • Ortam değişkenini SPEECH_KEY ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin.
  • Ortam değişkenini SPEECH_REGION ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Not

Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setxile set ayarlayabilirsiniz.

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.

Konuşmadan açıklamalı alt yazılar oluşturma

Resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. Senaryoları/java/jre/captioning/ örnek dosyalarını GitHub'dan proje dizininize kopyalayın. pom.xml Ortam kurulumunda oluşturduğunuz dosya da bu dizinde olmalıdır.
  2. Proje dosyalarını derlemek için bir komut istemi açın ve bu komutu çalıştırın.
    javac Captioning.java -cp ".;target\dependency\*" -encoding UTF-8
    
  3. Uygulamayı tercih ettiğiniz komut satırı bağımsız değişkenleriyle çalıştırın. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Aşağıda bir örnek verilmiştir:
    java -cp ".;target\dependency\*" Captioning --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Önemli

    ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    ve SPEECH_REGION ortam değişkenlerini yukarıda açıklandığı gibi ayarladığınızdan SPEECH_KEY emin olun. Aksi takdirde ve --region bağımsız değişkenlerini kullanın--key.

Sonuçları denetleme

Yukarıdaki örnekteki realTime seçeneği kullandığınızda, olaylardaki kısmi sonuçlar Recognizing çıktıya eklenir. Bu örnekte, yalnızca son Recognized olay virgülleri içerir. ve Recognized olayları arasındaki Recognizing tek fark virgül değildir. Daha fazla bilgi için bkz . Kısmi sonuçlar alma.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

seçeneğini kullandığınızda --offline , sonuçlar son Recognized olaydan kararlı olur. Kısmi sonuçlar çıkışa dahil değildir:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: java -cp ".;target\dependency\*" Captioning --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız. SPEECH_KEY ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --key gerekir.
  • --region REGION: Konuşma kaynak bölgeniz. SPEECH_REGION ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --region gerekir. Örnekler: westus, northeurope

Önemli

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --language LANG: Karşılık gelen desteklenen yerel ayarlardan birini kullanarak bir dil belirtin. Bu, açıklamalı alt yazıları satırlara ayırırken kullanılır. Varsayılan değer en-US olarak belirlenmiştir.

Tanıma seçenekleri şunlardır:

  • --offline: Çevrimdışı sonuçlar çıktısı. geçersiz kılar --realTime. Varsayılan çıkış modu çevrimdışıdır.
  • --realTime: Gerçek zamanlı sonuçların çıktısı.

Gerçek zamanlı çıktı olay sonuçlarını içerir Recognizing . Varsayılan çevrimdışı çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --maxLineLength LENGTH: Resim yazısı için satır başına karakter sayısı üst sınırını UZUNLUK olarak ayarlayın. Minimum değer 20'dir. Varsayılan değer 37'dir (Çince için 30).
  • --lines LINES: Resim yazısı için satır sayısını DOT olarak ayarlayın. Minimum is 1. Varsayılan değer 2'dir.
  • --delay MILLISECONDS: Gerçek zamanlı bir deneyimi taklit etmek için her resim yazısının görüntülenmesini geciktirecek milisaniye. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --remainTime MILLISECONDS: Bir resim yazısı başka bir resim yazısıyla değiştirilmediyse ekranda kaç MILISECONDS kalmalıdır. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Başvuru belgeleri | Paketi (npm) | GitHub | Kitaplığı kaynak kodundaki ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Herhangi bir işlem gerçekleştirmeden önce JavaScript için Konuşma SDK'sını yüklemeniz gerekir. Yalnızca paket adının yüklenmesini istiyorsanız komutunu çalıştırın npm install microsoft-cognitiveservices-speech-sdk. Kılavuzlu yükleme yönergeleri için bkz . SDK yükleme kılavuzu.

Konuşmadan açıklamalı alt yazılar oluşturma

Resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. Senaryoları/javascript/node/captioning/sample dosyalarını GitHub'dan proje dizininize kopyalayın.

  2. ile aynı dizinde Captioning.jsbir komut istemi açın.

  3. JavaScript için Konuşma SDK'sını yükleyin:

    npm install microsoft-cognitiveservices-speech-sdk
    
  4. Uygulamayı tercih ettiğiniz komut satırı bağımsız değişkenleriyle çalıştırın. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Örnek aşağıda verilmiştir:

    node captioning.js --key YourSubscriptionKey --region YourServiceRegion --input caption.this.wav --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    değerini YourSubscriptionKey Konuşma kaynak anahtarınız ile değiştirin ve değerini veya northeuropegibi westus Konuşma kaynağı bölgenizle değiştirinYourServiceRegion. ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    Not

    JavaScript için Konuşma SDK'sı sıkıştırılmış giriş sesini desteklemez. Örnekte gösterildiği gibi bir WAV dosyası kullanmanız gerekir.

    Önemli

    İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.

Sonuçları denetleme

Tam açıklamalı alt yazıları olan çıkış dosyası öğesine caption.output.txtyazılır. Ara sonuçlar konsolda gösterilir:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: node captioning.js --key <key> --region <region> --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız.
  • --region REGION: Konuşma kaynak bölgeniz. Örnekler: westus, northeurope

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --languages LANG1,LANG2: Belirtilen diller için dil tanımlamayı etkinleştirin. Örneğin: en-US,ja-JP. Bu seçenek yalnızca C++, C# ve Python açıklamalı alt yazı örnekleriyle kullanılabilir. Daha fazla bilgi için bkz . Dil belirleme.

Tanıma seçenekleri şunlardır:

  • --recognizing: Çıkış Recognizing olayı sonuçları. Varsayılan çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Başvuru belgeleri | Paketi (indirme) | GitHub'da ek örnekler

Objective-C için Konuşma SDK'sı, açıklamalı alt yazılar için konuşma tanıma sonuçlarını almayı destekler, ancak buraya henüz bir kılavuz eklemedik. Başlamak ve kavramlar hakkında bilgi edinmek için lütfen başka bir programlama dili seçin veya bu makalenin başındaki Objective-C başvurusuna ve bağlantılı örneklere bakın.

Başvuru belgeleri | Paketi (indirme) | GitHub'da ek örnekler

Swift için Konuşma SDK'sı açıklamalı alt yazılar için konuşma tanıma sonuçlarını almayı destekler, ancak buraya henüz bir kılavuz eklemedik. Başlamak ve kavramlar hakkında bilgi edinmek için lütfen başka bir programlama dili seçin veya bu makalenin başından itibaren bağlantılı Swift başvurusuna ve örneklerine bakın.

Başvuru belgeleri | Paketi (PyPi) | GitHub'da ek örnekler

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Python için Konuşma SDK'sı Python Paket Dizini (PyPI) modülü olarak kullanılabilir. Python için Konuşma SDK'sı Windows, Linux ve macOS ile uyumludur.

  • Platformunuz için Microsoft Visual Studio için Visual C++ Yeniden Dağıtılabilir 2015, 2017, 2019 ve 2022'yi yüklemeniz gerekir. Bu paketi ilk kez yüklemek için yeniden başlatma gerekebilir.
  • Linux'ta x64 hedef mimarisini kullanmanız gerekir.
  1. 3.10 veya sonraki sürümlerden bir Python sürümü yükleyin. Daha fazla gereksinim için önce SDK yükleme kılavuzuna bakın
  2. Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Ortam değişkenlerini belirleme

Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.

Önemli

Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.

  • Ortam değişkenini SPEECH_KEY ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin.
  • Ortam değişkenini SPEECH_REGION ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Not

Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setxile set ayarlayabilirsiniz.

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.

Konuşmadan açıklamalı alt yazılar oluşturma

Resim yazısı hızlı başlangıç kodu örneğini derlemek ve çalıştırmak için bu adımları izleyin.

  1. Senaryoları/python/console/captioning/sample dosyalarını GitHub'dan yerel bir dizine indirin veya kopyalayın.
  2. ile aynı dizinde captioning.pybir komut istemi açın.
  3. Konuşma SDK'sını yüklemek için şu komutu çalıştırın:
    pip install azure-cognitiveservices-speech
    
  4. Uygulamayı tercih ettiğiniz komut satırı bağımsız değişkenleriyle çalıştırın. Kullanılabilir seçenekler için bkz . kullanım ve bağımsız değişkenler . Aşağıda bir örnek verilmiştir:
    python captioning.py --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Önemli

    ve --output tarafından --input belirtilen yolların geçerli olduğundan emin olun. Aksi takdirde yolları değiştirmeniz gerekir.

    ve SPEECH_REGION ortam değişkenlerini yukarıda açıklandığı gibi ayarladığınızdan SPEECH_KEY emin olun. Aksi takdirde ve --region bağımsız değişkenlerini kullanın--key.

Sonuçları denetleme

Yukarıdaki örnekteki realTime seçeneği kullandığınızda, olaylardaki kısmi sonuçlar Recognizing çıktıya eklenir. Bu örnekte, yalnızca son Recognized olay virgülleri içerir. ve Recognized olayları arasındaki Recognizing tek fark virgül değildir. Daha fazla bilgi için bkz . Kısmi sonuçlar alma.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

seçeneğini kullandığınızda --offline , sonuçlar son Recognized olaydan kararlı olur. Kısmi sonuçlar çıkışa dahil değildir:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff. Daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.

Kullanım ve bağımsız değişkenler

Kullanım: python captioning.py --input <input file>

Bağlantı seçenekleri şunlardır:

  • --key: Konuşma kaynak anahtarınız. SPEECH_KEY ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --key gerekir.
  • --region REGION: Konuşma kaynak bölgeniz. SPEECH_REGION ortam değişkenini geçersiz kılar. Ortam değişkenini ayarlamanız (önerilen) veya seçeneğini kullanmanız --region gerekir. Örnekler: westus, northeurope

Önemli

API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.

Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.

Giriş seçenekleri şunlardır:

  • --input FILE: Dosyadan ses girişi. Varsayılan giriş mikrofondur.
  • --format FORMAT: Sıkıştırılmış ses biçimini kullanın. Yalnızca ile --filegeçerlidir. Geçerli değerler , , any, flac, mp3, mulawve ogg_opusdeğerleridiralaw. Varsayılan değer şudur: any. Dosya kullanmak wav için biçimi belirtmeyin. Bu seçenek JavaScript açıklamalı alt yazı örneğiyle kullanılamaz. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.

Dil seçenekleri şunlardır:

  • --language LANG: Karşılık gelen desteklenen yerel ayarlardan birini kullanarak bir dil belirtin. Bu, açıklamalı alt yazıları satırlara ayırırken kullanılır. Varsayılan değer en-US olarak belirlenmiştir.

Tanıma seçenekleri şunlardır:

  • --offline: Çevrimdışı sonuçlar çıktısı. geçersiz kılar --realTime. Varsayılan çıkış modu çevrimdışıdır.
  • --realTime: Gerçek zamanlı sonuçların çıktısı.

Gerçek zamanlı çıktı olay sonuçlarını içerir Recognizing . Varsayılan çevrimdışı çıkış yalnızca olay sonuçlarıdır Recognized . Bunlar her zaman konsola yazılır, hiçbir zaman bir çıkış dosyasına yazılır. --quiet seçeneği bunu geçersiz kılar. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.

Doğruluk seçenekleri şunlardır:

  • --phrases PHRASE1;PHRASE2: Tanınacak tümceciklerin listesini belirtebilirsiniz, örneğin Contoso;Jessie;Rehaan. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Çıkış seçenekleri şunlardır:

  • --help: Bu yardımı göster ve durdur
  • --output FILE: Belirtilen fileöğesine açıklamalı alt yazılar çıktısı ekleyin. Bu bayrak gereklidir.
  • --srt: SRT (SubRip Metin) biçiminde çıkış açıklamalı alt yazıları. Varsayılan biçim WebVTT'dir (Web Video Metin Parçaları). SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi.
  • --maxLineLength LENGTH: Resim yazısı için satır başına karakter sayısı üst sınırını UZUNLUK olarak ayarlayın. Minimum değer 20'dir. Varsayılan değer 37'dir (Çince için 30).
  • --lines LINES: Resim yazısı için satır sayısını DOT olarak ayarlayın. Minimum is 1. Varsayılan değer 2'dir.
  • --delay MILLISECONDS: Gerçek zamanlı bir deneyimi taklit etmek için her resim yazısının görüntülenmesini geciktirecek milisaniye. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --remainTime MILLISECONDS: Bir resim yazısı başka bir resim yazısıyla değiştirilmediyse ekranda kaç MILISECONDS kalmalıdır. Minimum değer 0,0'dır. Varsayılan değer 1000'dir.
  • --quiet: Hatalar dışında konsol çıkışını gizleme.
  • --profanity OPTION: Geçerli değerler: ham, kaldır, maske. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --threshold NUMBER: Kararlı kısmi sonuç eşiğini ayarlayın. Varsayılan değer şudur: 3. Bu seçenek yalnızca bayrağını kullandığınızda realTime geçerlidir. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Bu hızlı başlangıçta, konuşmayı metne dönüştüren açıklamalı alt yazılar oluşturmak için bir konsol uygulaması çalıştıracaksınız.

İpucu

Speech Studio'yu deneyin ve gerçek zamanlı veya çevrimdışı işlenmiş açıklamalı alt yazı sonuçlarını görmek için örnek bir video klibi seçin.

Önkoşullar

Ortamı ayarlama

Bu adımları izleyin ve platformunuzun diğer gereksinimleri için Konuşma CLI'sı hızlı başlangıcına bakın.

  1. Konuşma CLI'sını yüklemek için aşağıdaki .NET CLI komutunu çalıştırın:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Konuşma kaynak anahtarınızı ve bölgenizi yapılandırmak için aşağıdaki komutları çalıştırın. değerini SUBSCRIPTION-KEY Konuşma kaynak anahtarınızla, değerini de Konuşma kaynağı bölgenizle değiştirin REGION .

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

Sıkıştırılmış giriş sesi için GStreamer'ı da yüklemeniz gerekir.

Konuşmadan açıklamalı alt yazılar oluşturma

Konuşma CLI'sı ile, ses içeren herhangi bir medya türünden hem SRT (SubRip Metni) hem de WebVTT (Web Video Metin Parçaları) açıklamalı alt yazıları çıkarabilirsiniz.

Bir dosyadan gelen sesi tanımak ve hem WebVtt () hem de SRT (vttsrt) açıklamalı alt yazıları çıkarmak için aşağıdaki adımları izleyin.

  1. Yolda adlı caption.this.mp4 bir giriş dosyanız olduğundan emin olun.

  2. Video dosyasından açıklamalı alt yazıları çıkarmak için aşağıdaki komutu çalıştırın:

    spx recognize --file caption.this.mp4 --format any --output vtt file - --output srt file - --output each file - @output.each.detailed --property SpeechServiceResponse_StablePartialResultThreshold=5 --profanity masked --phrases "Constoso;Jessie;Rehaan"
    

    SRT ve WebVTT açıklamalı alt yazıları burada gösterildiği gibi konsola gönderilir:

    1
    00:00:00,180 --> 00:00:03,230
    Welcome to applied Mathematics course 201.
    WEBVTT
    
    00:00:00.180 --> 00:00:03.230
    Welcome to applied Mathematics course 201.
    {
      "ResultId": "561a0ea00cc14bb09bd294357df3270f",
      "Duration": "00:00:03.0500000"
    }
    

Kullanım ve bağımsız değişkenler

Önceki komuttan gelen isteğe bağlı bağımsız değişkenlerle ilgili ayrıntılar aşağıdadır:

  • --file caption.this.mp4 --format any: Dosyadan ses girişi. Varsayılan giriş mikrofondur. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve bkz . Sıkıştırılmış giriş sesini kullanma.
  • --output vtt file - ve --output srt file -: WebVTT ve SRT açıklamalı alt yazılarını standart çıktıya verir. SRT ve WebVTT resim yazısı dosya biçimleri hakkında daha fazla bilgi için bkz . Resim yazısı çıkış biçimi. Bağımsız değişken hakkında --output daha fazla bilgi için bkz . Konuşma CLI çıkış seçenekleri.
  • @output.each.detailed: Olay sonuçlarını metin, uzaklık ve süreyle verir. Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.
  • --property SpeechServiceResponse_StablePartialResultThreshold=5: Konuşma hizmetinin daha doğru olan daha Recognizing az olay döndürmesini isteyebilirsiniz. Bu örnekte Konuşma hizmeti, kısmi sonuçları size döndürmeden önce bir sözcüğün tanınmasını en az beş kez doğrulamalıdır. Daha fazla bilgi için bkz . Kısmi sonuç kavramlarını alma.
  • --profanity masked: Tanıma sonuçlarında küfürlerin maskeleneceğini, kaldırılacağını veya gösterileceğini belirtebilirsiniz. Daha fazla bilgi için bkz . Küfür filtresi kavramları.
  • --phrases "Constoso;Jessie;Rehaan": Contoso, Jessie ve Rehaan gibi tanınacak tümceciklerin listesini belirtebilirsiniz. Daha fazla bilgi için bkz . Tümcecik listesiyle tanımayı geliştirme.

Kaynakları temizleme

Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.

Sonraki adımlar