Konuşmayı metne dönüştüren resim yazısı
Bu kılavuzda, konuşmayı metne dönüştüren resim yazıları oluşturmayı öğreneceksiniz. Açıklamalı alt yazı, bir televizyon yayınının, web yayınının, filmin, videonun, canlı etkinliğin veya başka bir yayının ses içeriğini metne dönüştürme ve ardından metni bir ekranda, monitörde veya başka bir görsel görüntü sisteminde görüntüleme işlemidir.
Kavramlar, açıklamalı altyazıları giriş sesinizle eşitlemeyi, küfür filtreleri uygulamayı, kısmi sonuçlar almayı, özelleştirmeleri uygulamayı ve çok dilli senaryolar için konuşulan dilleri belirlemeyi içerir. Bu kılavuz konuşma için açıklamalı alt yazıları kapsar, ancak konuşmacı kimliğini veya zil çalma gibi ses efektlerini içermez.
Bazı yaygın açıklamalı alt yazı senaryoları şunlardır:
- Çevrimiçi kurslar ve eğitim videoları
- Spor etkinlikleri
- Sesli ve görüntülü aramalar
Açıklamalı alt yazı kullanırken dikkate alınması gereken yönler şunlardır:
- Hedef kitlenize açıklamalı alt yazıların otomatik bir hizmet tarafından oluşturulduğunu bildirin.
- Resim yazılarını ekranda yatay olarak, büyük ve göze çarpan bir yazı tipinde ortalar.
- Kısmi sonuçların kullanılıp kullanılmayacağını, açıklamalı alt yazıları görüntülemeye ne zaman başlayacağını ve aynı anda gösterilecek sözcük sayısını göz önünde bulundurun.
- SMPTE-TT gibi açıklamalı alt yazı protokolleri hakkında bilgi edinin.
- SRT (SubRip Text) ve WebVTT (Web Video Metin Parçaları) gibi çıkış biçimlerini göz önünde bulundurun. Bunlar VLC gibi video oynatıcıların çoğuna yüklenebilir ve videonuza otomatik olarak açıklamalı alt yazılar eklenebilir.
İ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.
Açıklamalı alt yazılar gerçek zamanlı veya önceden kaydedilmiş konuşmalara eşlik edebilir. Açıklamalı alt yazıları gerçek zamanlı olarak veya bir kayıtla gösterirken, konuşmayı tanımak ve transkripsiyonları almak için Konuşma SDK'sını veya Konuşma CLI'sini kullanabilirsiniz. Önceden kaydedilmiş video için Batch transkripsiyon API'sini de kullanabilirsiniz.
Resim yazısı çıkış biçimi
Konuşma hizmeti SRT (SubRip Text) ve WebVTT (Web Video Metin Parçaları) gibi çıkış biçimlerini destekler. Bunlar VLC gibi video oynatıcıların çoğuna yüklenebilir ve videonuza otomatik olarak açıklamalı alt yazılar eklenebilir.
İpucu
Konuşma hizmeti küfür filtresi seçenekleri sağlar. Küfürlerin maskeleneceğini, kaldırılacağını veya gösterileceğini belirtebilirsiniz.
SRT (SubRip Text) zaman aralığı çıkış biçimi şeklindedirhh:mm:ss,fff
.
1
00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.
WebVTT (Web Video Metin Parçaları) zaman aralığı çıkış biçimidirhh:mm:ss.fff
.
WEBVTT
00:00:00.180 --> 00:00:03.230
Welcome to applied Mathematics course 201.
{
"ResultId": "8e89437b4b9349088a933f8db4ccc263",
"Duration": "00:00:03.0500000"
}
Konuşma hizmetine ses girişi
Gerçek zamanlı açıklamalı alt yazılar için dosya girişi yerine bir mikrofon veya ses giriş akışı kullanın. Mikrofondan konuşmayı tanıma örnekleri için Konuşmayı metne dönüştürme hızlı başlangıcına ve Konuşma tanıma belgelerine bakın. Akış hakkında daha fazla bilgi için bkz . Ses giriş akışını kullanma.
Önceden kaydedilmiş bir resim yazısı için Konuşma hizmetine dosya girişi gönderin. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.
Resim yazısı ve konuşma eşitleme
İster gerçek zamanlı ister önceden kaydedilmiş olsun, resim yazılarını ses parçasıyla eşitlemek istiyorsunuz.
Konuşma tanıma hizmeti, tanınan konuşmanın uzaklığını ve süresini döndürür.
- Uzaklık: Tanınan ses akışına uzaklık, süre olarak ifade edilir. Uzaklık, (sıfır) onay işaretinden
0
başlayarak, SDK tarafından işlenen ilk ses baytıyla ilişkili değer değerlerinde ölçülür. Örneğin, tanımayı başlattığınızda uzaklık başlar, çünkü SDK ses akışını işlemeye başlar. Bir değer, yüz nanosaniyeyi veya saniyenin on milyonda birini temsil eder. - Süre: Tanınmakta olan konuşmanın süresi. Kenelerdeki süre, sondaki veya öndeki sessizliği içermez.
Daha fazla bilgi için bkz . Konuşma tanıma sonuçlarını alma.
Kısmi sonuçlar alma
Resim yazılarını görüntülemeye ne zaman başlayacağınız ve aynı anda gösterilecek sözcük sayısını göz önünde bulundurun. Konuşma tanıma sonuçları, konuşma tanınmaya devam ederken değiştirilebilir. Kısmi sonuçlar her Recognizing
olayla birlikte döndürülür. Her sözcük işlenirken Konuşma tanıma hizmeti yeni bağlamda bir konuşmayı yeniden değerlendirir ve en iyi sonucu döndürür. Yeni sonucun önceki sonuçla aynı olacağı garanti değildir. Bir konuşmanın tam ve son transkripsiyonu olayla birlikte Recognized
döndürülür.
Not
Kısmi sonuçların noktalama işaretleri kullanılamaz.
Önceden kaydedilmiş konuşmaların açıklamalı alt yazıları için veya gecikme süresinin önemli olmadığı durumlarda, herhangi bir sözcüğü görüntülemeden önce her konuşmanın tam dökümünü bekleyebilirsiniz. Bir konuşmadaki her sözcüğün son uzaklığı ve süresi göz önüne alındığında, sonraki sözcüklerin film müziğiyle ne zaman hızlı bir şekilde gösterileceğini bilirsiniz.
Gerçek zamanlı açıklamalı alt yazılar, gecikme süresi ve doğruluk bakımından ödünler sunar. Her Recognizing
olayın metnini mümkün olan en kısa sürede gösterebilirsiniz. Ancak, biraz gecikmeyi kabul edebilirseniz, olaydaki Recognized
metni görüntüleyerek resim yazısının doğruluğunu geliştirebilirsiniz. "Kararlı kısmi sonuçlar" olarak adlandırılan bir orta alan da vardır.
Konuşma hizmetinin daha doğru olan daha Recognizing
az olay döndürmesini isteyebilirsiniz. Bu, özelliği ile 2147483647
arasında 0
bir değere ayarlanarak SpeechServiceResponse_StablePartialResultThreshold
yapılır. Ayarladığınız değer, Konuşma hizmeti bir olay döndürmeden Recognizing
önce bir sözcüğün kaç kez tanınması gerektiğini belirtir. Örneğin, özellik değerini olarak 5
ayarlarsanız SpeechServiceResponse_StablePartialResultThreshold
Konuşma hizmeti, kısmi sonuçları bir olayla Recognizing
size döndürmeden önce sözcüğün tanınmasını en az beş kez onaylar.
speechConfig.SetProperty(PropertyId.SpeechServiceResponse_StablePartialResultThreshold, 5);
speechConfig->SetProperty(PropertyId::SpeechServiceResponse_StablePartialResultThreshold, 5);
speechConfig.SetProperty(common.SpeechServiceResponseStablePartialResultThreshold, 5)
speechConfig.setProperty(PropertyId.SpeechServiceResponse_StablePartialResultThreshold, 5);
speechConfig.setProperty(sdk.PropertyId.SpeechServiceResponse_StablePartialResultThreshold, 5);
[self.speechConfig setPropertyTo:5 byId:SPXSpeechServiceResponseStablePartialResultThreshold];
self.speechConfig!.setPropertyTo(5, by: SPXPropertyId.speechServiceResponseStablePartialResultThreshold)
speech_config.set_property(property_id = speechsdk.PropertyId.SpeechServiceResponse_StablePartialResultThreshold, value = 5)
spx recognize --file caption.this.mp4 --format any --property SpeechServiceResponse_StablePartialResultThreshold=5 --output vtt file - --output srt file -
Daha kararlı kısmi sonuçlar istemek, "titreyen" veya değişen metni azaltır, ancak daha yüksek güvenilirlik sonuçlarını beklerken gecikme süresini artırabilir.
Kararlı kısmi eşik örneği
Kararlı bir kısmi eşik ayarlamadan aşağıdaki tanıma dizisinde "matematik" bir sözcük olarak kabul edilir, ancak son metin "matematik" olur. Başka bir noktada "kurs 2" tanınır, ancak son metin "kurs 201"dir.
RECOGNIZING: Text=welcome to
RECOGNIZING: Text=welcome to applied math
RECOGNIZING: Text=welcome to applied mathematics
RECOGNIZING: Text=welcome to applied mathematics course 2
RECOGNIZING: Text=welcome to applied mathematics course 201
RECOGNIZED: Text=Welcome to applied Mathematics course 201.
Önceki örnekte transkripsiyonlar ekliydi ve metin geri çekilmedi. Ancak bazı durumlarda kısmi sonuçların yanlış olduğunu fark edebilirsiniz. Her iki durumda da kararsız kısmi sonuçlar görüntülendiğinde "titreyen" olarak algılanabilir.
Bu örnekte, kararlı kısmi sonuç eşiği olarak 5
ayarlanırsa hiçbir sözcük değiştirilmez veya geri izlenmez.
RECOGNIZING: Text=welcome to
RECOGNIZING: Text=welcome to applied
RECOGNIZING: Text=welcome to applied mathematics
RECOGNIZED: Text=Welcome to applied Mathematics course 201.
Dil belirleme
Sesteki dil değişebiliyorsa sürekli dil belirlemeyi kullanın. Dil belirleme, desteklenen diller listesiyle karşılaştırıldığında seste konuşulan dilleri tanımlamak için kullanılır. En az biri seste beklenen 10'a kadar aday dil sağlarsınız. Konuşma hizmeti sesteki en olası dili döndürür.
Doğruluğu geliştirmek için özelleştirmeler
Tümcecik listesi , konuşma tanımaya başlamadan hemen önce sağladığınız sözcüklerin veya tümceciklerin listesidir. Tümcecik listesine tümcecik eklemek önemini artırır ve bu nedenle tanınma olasılığını artırır.
Tümceciklere örnek olarak şunlar verilebilir:
- Adlar
- Coğrafi konumlar
- Eş adlılar
- Sektörünüz veya kuruluşunuza özgü sözcükler veya kısaltmalar
Özel modeli eğitmek, doğruluğu artırmak için en iyi seçenek olabilir. Örneğin, ortodontik derslerin açıklamalı alt yazılarını kullanıyorsanız, ilgili etki alanı verileriyle özel bir model eğitmek isteyebilirsiniz.