Ana içeriğe geç
SubtitleMatrix

TTML’den SBV’ye dönüştürücü

Ya da altyazı metnini yapıştırın

Bu dönüşüm neyi değiştirir

3 şey atılır ya da bir karar gerektirir

  • Stil

    tüm biçimlendirme (kalın, italik, renk, kontur, gölge)

  • Konumlandırma

    ekrandaki konumlandırma (her replik varsayılan konuma döner)

  • Biçime özgü içerik

    kaynak formatın repliklerinin dışında tuttuğu içerik (replik olmayan bloklar, başlık metni, replik başına ayarlar, yorum satırına alınmış olaylar) — hedef formatın bunun için yeri yok

Bu liste, yüklediğiniz belirli dosyadan değil, bu iki formatın yetenek matrisinden gelir. Belirli bir dosya, formatın izin verdiği ama matrisin modellemediği özellikler kullanıyorsa daha fazlasını kaybedebilir.

Bu dönüştürücü TTML dosyasını tarayıcıda okuyup SBV biçiminde yeniden yazar. TTML’de 1,25 saniye begin="00:00:01.250" diye yazılır; SBV’de aynı an 00:00:01.250 olur. Satır sonları ve metin olduğu gibi geçer.

Kayıp listesi kısa ama gerçek: biçimlendirmenin tamamı düşer (kalın, italik, renk, kontur, gölge); ekran konumu düşer; her replik varsayılan konuma döner; replik dışındaki içerik düşer: prolog ve <head> bölümü. SBV çıktısında her repliğin iki zamanı tek satırda, virgülle ayrılmış olarak yazılır. Metin ve zaman çizelgesi etkilenmez, düşen şey bunların çevresindeki bilgidir.

Tek dosyayı sürükleyip bırakın ya da metni yapıştırın; çıktı hemen iner. Toplu işlemde kuyruk dosyaları sırayla işler, ilerlemeyi gösterir ve tüm sonuçları tek ZIP’te toplar. Dosyalar cihazınızdan çıkmaz.

Örnekler

TTML’den SBV’ye geçen tipik bir dosya

Girdi

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling" xml:lang="en">
  <head>
    <styling>
      <style xml:id="s1" tts:color="#FFFF00" tts:fontWeight="bold"/>
    </styling>
    <layout>
      <region xml:id="bottom" tts:origin="10% 80%" tts:extent="80% 20%"/>
    </layout>
  </head>
  <body>
    <div>
      <p begin="00:00:01.000" end="00:00:03.500" region="bottom" style="s1">Hello <span tts:fontStyle="italic">there</span>.</p>
      <p begin="00:00:03.500" end="00:00:06.000" region="bottom">How are you?<br/>Fine, thanks.</p>
    </div>
  </body>
</tt>

Çıktı

0:00:01.000,0:00:03.500
Hello <i>there</i>.

0:00:03.500,0:00:06.000
How are you?
Fine, thanks.

Bu dönüşümde kaybedilenler: biçimlendirme düşer; konum düşer; replik dışı içerik düşer. Replik sayısı ve sırası değişmez; kayıp yalnızca yukarıdaki listede adı geçen özelliklerdedir.

Dağınık bir TTML dosyası, yine de SBV çıktısı

Girdi

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling"
    xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
    ttp:frameRate="25" xml:lang="en">
  <body>
    <div>
      <p begin="1.5s" dur="2s">Loaded from an offset and a duration.</p>
      <p begin="4s" end="00:00:06.50">A coarser clock spelling.</p>
      <p begin="00:00:07:00" end="00:00:08:12">Frames, at 25fps.</p>
      <p begin="9s"><span tts:color="#FF0000">Half-open</span> and Tom &amp; Jerry.</p>
    </div>
  </body>
</tt>

Çıktı

0:00:01.500,0:00:03.500
Loaded from an offset and a duration.

0:00:04.000,0:00:06.500
A coarser clock spelling.

0:00:07.000,0:00:08.480
Frames, at 25fps.

0:00:09.000,0:00:11.000
<font color="#FF0000">Half-open</font> and Tom &amp; Jerry.

Dağınık girdi dönüşümü bozmaz. Karışık satır sonları ve fazladan boşluklar okuma sırasında temizlenir; tanınmayan bloklar atlanır ve sayılır, böylece çıktının ne kadar güvenilir olduğunu bilirsiniz.

Sık sorulan sorular

TTML’den SBV’ye dönüşümde ne korunur, ne değişir?

Replik metni, sırası ve zaman çizelgesi TTML’den SBV’ye olduğu gibi geçer. Değişen şey sarmalayıcıdır: TTML’de 1,25 saniye begin="00:00:01.250" diye yazılır; SBV’de aynı an 00:00:01.250 olur. Bununla birlikte biçimlendirmenin tamamı düşer (kalın, italik, renk, kontur, gölge); ekran konumu düşer; her replik varsayılan konuma döner; replik dışındaki içerik düşer: prolog ve <head> bölümü.

TTML’de zaman kodu SBV’de nasıl yazılır?

TTML’de bir an begin="00:00:01.250" diye yazılır; SBV’de aynı an 00:00:01.250 olur.

TTML’de yazı tipi, renk ve kontur SBV’ye geçer mi?

TTML’den SBV’ye geçişte yazı tipi, renk ve kontur korunmaz. SBV yalnızca metni ve iki zamanı saklar; renk, kontur, gölge ve kenar boşlukları için dosyada bir alan yoktur. Metnin içindeki <b> ve <i> etiketleri metnin parçası sayıldığı için kalır, ama onlar da biçim değil, karakter dizisidir.

TTML dosyasını SBV’ye dönüştürdükten sonra onu hangi oynatıcılar açar?

TTML dosyasından üretilen SBV dosyasını şu araçlar açar: SBV’yi YouTube ve eski altyazı araçları okur; modern oynatıcıların çoğu bu biçimi tercih etmez.

BOM ve CRLF içeren bir TTML dosyası SBV’ye dönüşürken sorun çıkarır mı?

Çıkarmaz. TTML dosyası okunurken BOM ve karışık satır sonları temizlenir, SBV çıktısı tek tip satır sonuyla yazılır. Tanınmayan bölümler atlanır ve sayılır; dönüşüm hiçbir zaman hata verip durmaz, anlaşılmayan her şey raporda görünür.

TTML dosyalarımı toplu olarak SBV’ye dönüştürebilir miyim?

Evet. Birden çok TTML dosyasını bir seferde sürükleyip bırakabilirsiniz; kuyruk hepsini sırayla işler, istediğiniz an durdurabilirsiniz ve SBV çıktıları tek bir ZIP olarak iner. Dosyalar tarayıcıdan çıkmaz, sunucuya hiçbir şey yüklenmez.

SBV dosyasını yeniden TTML’ye dönüştürürsem aynı dosyayı elde eder miyim?

TTML → SBV → TTML gidiş-dönüşünde şunlar geri gelmez: biçimlendirme, ekran konumu, replik dışındaki içerik. Metin, replik sırası ve başlangıç anları geri gelir, ama bu özellikler ikinci dönüşümde yeniden üretilemez. Gidiş-dönüşü bir yedek olarak değil, biçim değişikliği olarak düşünün.

İlgili araçlar