Konuşma Sentezi Biçimlendirme Dili (SSML) referansı (Beta)

Actions on Google platformu, Google standart SSML öğeleriyle ilgili işlemler.

Desteklenen Beta SSML özelliklerinin özeti:

  • <phoneme>: Belirli kelimelerin telaffuzunu özelleştirin.
  • <say-as interpret-as="duration">: Süreleri belirtir.
  • <voice>: Aynı istekteki sesler arasında geçiş yapın.
  • <lang>: Aynı istekte birden çok dil kullanın.
  • Zaman noktaları: Belirtilen bir zaman noktasını döndürmek için <mark> etiketini kullanın bir puan ekleyin.

<phoneme>

Kelimelerin özel telaffuzlarını oluşturmak için <phoneme> etiketini kullanabilirsiniz satır içi. Actions on Google şunları kabul eder: IPA ve X-SAMPA fonetik alfabeleri. Bkz. fonemler sayfası (desteklenen cihazlar listesi için) anlamına gelir.

<phoneme> etiketinin her uygulaması tek bir kelimenin telaffuzunu yönlendirir kelime:

  <phoneme alphabet="ipa" ph="ˌmænɪˈtoʊbə">manitoba</phoneme>
  <phoneme alphabet="x-sampa" ph='m@"hA:g@%ni:'>mahogany</phoneme>

Stres işaretçileri

Transkripte yerleştirilebilen üçe kadar stres düzeyi vardır:

  1. Birincil stres: IPA'da ˈ ve X-SAMPA'da " ile gösterilir.
  2. İkincil stres: IPA'da ˌ ve X-SAMPA'da % ile gösterilir.
  3. Stressiz: Bir sembolle belirtilmez (her iki gösterimde de).

Bazı dillerde üçten daha az düzey olabilir veya stres yerleşimini göstermeyebilir mümkün değil. İlgili işlevleri görmek için fonemler sayfasına doğru dengeyi bulun. Stres işaretçileri her vurgulu hecenin başını döndürür. Örneğin, ABD İngilizcesi için:

Örnek kelime IPA X-SAMPA
su ˈwɑːtɚ "wA:t@`
su altı ˌʌndɚˈwɑːtɚ %Vnd@"wA:t@

Geniş veya dar metne dönüştürmeler

Genel bir kural olarak, çeviri yazılarınızın doğası gereği daha geniş ve fonetik olmasına dikkat edin. Örneğin, ABD İngilizcesinde t ( dokunun):

Örnek kelime IPA X-SAMPA
tereyağ ˈbʌɾɚ yerine ˈbʌtɚ "bV4@` yerine "bVt@`

Fonetik gösterimi kullanmanın TTS'nizi değiştirdiği bazı durumlar vardır sonuçlar doğal değildir (örneğin, fonemlerin sırası anatomik olarak telaffuz edilmesi zor).

Bunun bir örneği, İngilizcede s için asimilasyonun seslendirilmesidir. Bu durumda asimilasyon, transkriptte yansıtılmalıdır:

Örnek kelime IPA X-SAMPA
kediler ˈkæts "k{ts
köpekler ˈdɑːgs yerine ˈdɑːgz "dA:gs yerine "dA:gz

Düşüş

Her hece bir (yalnızca bir) sesli harf içermelidir. Bu durumda heceli ünlemlerden kaçının ve daha kısa bir sesli harf kullanarak bunları metne dönüştürün. Örneğin:

Örnek kelime IPA X-SAMPA
yavru kedi ˈkɪtn yerine ˈkɪtən "kitn yerine "kIt@n
su ısıtıcı ˈkɛtl yerine ˈkɛtəl "kEtl yerine "kEt@l

Hece oluşturma

İsterseniz . kullanarak hece sınırları belirtebilirsiniz. Her hece yalnızca bir (yalnızca bir) sesli harf içeren Örneğin:

Örnek kelime IPA X-SAMPA
okunabilirlik ˌɹiː.də.ˈbɪ.lə.tiː %r\i:.d@."bI.l@.ti:

Süreler

Actions on Google platformu, <say-as interpret-as="duration"> işlemlerinin doğru şekilde yapılmasını destekler. okuma süresi sağlar. Örneğin, aşağıdaki örnek "beş saat otuz dakika":

<say-as interpret-as="duration" format="h:m">5:30</say-as>

Biçim dizesi, aşağıdaki değerleri destekler:

Kısaltma Değer
sa. saat
dk. dakika
s saniye
ms milisaniye

<voice>

<voice> etiketi, tek bir SSML'de birden fazla ses kullanmanıza olanak tanır isteğinde bulunabilirsiniz. Aşağıdaki örnekte varsayılan ses İngilizce bir erkek sesidir. "qu'est-ce qui t'amène" dışında tüm kelimeler bu ses kullanılarak sentezlenir yerine kadın sesi kullanılarak seslendirilecek olan varsayılan dil (İngilizce) ve cinsiyet (erkek).

<speak>And then she asked, <voice language="fr-FR" gender="female">qu'est-ce qui
t'amène ici</voice><break time="250ms"/> in her sweet and gentle voice.</speak>

Alternatif olarak, tek bir sesi belirtmek için bir <voice> etiketi de kullanabilirsiniz ( sesin adı desteklenen sesler ve diller sayfası) (bir language ve/veya gender belirtmek yerine):

<speak>The dog is friendly<voice name="fr-CA-Wavenet-B">mais la chat est
mignon</voice><break time="250ms"/> said a pet shop
owner</speak>

<voice> etiketini kullandığınızda, Actions on Google ikisinden birini almayı bekler name ( kullandığınız sesin adı özellikler) veya aşağıdaki özelliklerin bir kombinasyonunu kullanın. Üçü de özellikleri isteğe bağlıdır, ancak name

  • gender: male, female veya neutral değerlerinden biri.
  • variant: Birden fazla anlaşmanın olduğu durumlarda, aradaki sürprizleri ortadan kaldırmak için kullanılır. yapılandırmanıza bağlı olarak hangi sesin kullanılabileceği hakkında daha fazla bilgi edinin.
  • language: Tercih ettiğiniz dil. Bir <voice> etiketi. Dilinizi BCP-47 biçiminde belirtin. Daha fazla dilinizin BCP-47 kodunu aşağıdaki dil kodu sütununda bulabilirsiniz: desteklenen sesler ve diller sayfasını ziyaret edin.

Ayrıca, her bir gender, variant ve öğenin göreli önceliğini kontrol edebilirsiniz. ve language özellikleri olmak üzere iki ek etiket kullanıyor: required ve ordering.

  • required: Bir özellik required olarak tanımlanmışsa ve yapılandırılmamışsa istek başarısız olur.
  • ordering: ordering etiketinden sonra listelenen tüm özellikler tercih edilen özellikleri seçin. SSML en iyi çaba esasına göre, tercih edilen özellikleri listelendikleri sırayla ordering etiketinden sonra gelir. Tercih edilen özelliklerin yapılandırılıp yapılandırılmadığı yanlış bir şekilde, Actions on Google'da geçerli bir ses döndürebilir ancak hata ayıklamayı devre dışı bırakabilirsiniz.

required ve ordering etiketlerinin kullanıldığı yapılandırma örnekleri:

<speak>And there it was <voice language="en-GB" gender="male" required="gender"
ordering="gender language">a flying bird </voice>roaring in the skies for the
first time.</speak>
<speak>Today is supposed to be <voice language="en-GB" gender="female"
ordering="language gender">Sunday Funday.</voice></speak>

<lang>

Aynı SSML'de birden çok dilde metin eklemek için <lang> öğesini kullanabilirsiniz. isteğinde bulunabilirsiniz. Sesi açıkça değiştirmek için <voice> etiketini kullanın. xml:lang dizesinde şunlar bulunmalıdır: BCP-47 biçiminde hedef dil (bu değer desteklenen sesler tablosunda gösterilir. Aşağıdaki örnekte "chat" yerine Fransızca sözcüğe dönüştürülecek varsayılan dil (İngilizce):

<speak>The french word for cat is <lang xml:lang="fr-FR">chat</lang></speak>

Actions on Google platformunda en iyi çaba esasına göre <lang> etiketi desteklenir. Bazı taraflar, Dil kombinasyonları, aynı SSML isteği. Bazı durumlarda bir dil kombinasyonu insanların fark edilebilir ancak belirsiz veya olumsuz olarak algılanır. Bilinen sorunlar:

  • <lang> etiketi, Kanji karakterlerinin kullanıldığı Japonca için desteklenmez. İlgili içeriği oluşturmak için kullanılan giriş harf çevirisi yapılıp Çince karakterler olarak okunur.
  • Arapça, İbranice ve Farsça gibi Sami dilleri desteklenmemektedir. <lang> etiketine sahiptir ve sessize alınır. Bunlardan herhangi birini şu dildeki bir sese geçmek için <voice> etiketini kullanmanızı öneririz: istediğiniz dili (varsa) söyler.