Siirry pääsisältöön
SubtitleMatrix

Muunna TTML muotoon LRC

MuunnoksetTTML / DFXP
Tai liitä tekstityksen teksti

Mitä tämä muunnos muuttaa

5 asiaa pudotetaan tai vaativat päätöksen

  • Ajoitus

    alaotsikoiden loppuajat (tuotosmuoto tallentaa vain alaotsikon alkamisen)

  • Tyyli

    kaikki tyylit (lihavointi, kursiivi, väri, ääriviiva, varjo)

  • Sijoittelu

    sijoittelu ruudulla (jokainen alaotsikko palaa oletussijaintiin)

  • Tarkkuus

    ajoituksen tarkkuus — tuotoksen kello on karkeampi, joten jokainen aikaleima pyöristetään lähimpään 10 ms:ään

  • Muotokohtainen sisältö

    sisältö, jonka lähdemuoto pitää alaotsikoidensa ulkopuolella (ei-alaotsikkolohkot, otsikkoteksti, alaotsikkokohtaiset asetukset, kommentoidut tapahtumat) — kohdemuodossa ei ole sille paikkaa

Tämä luettelo tulee näiden kahden muodon kyvykkyysmatriisista, ei lataamastasi tiedostosta. Tietty tiedosto voi menettää enemmän, jos se käyttää ominaisuuksia, jotka muoto sallii mutta matriisi ei mallinna.

Kun TTML muunnetaan LRC:ksi, jokainen TTML-tiedoston alaotsikko kirjoitetaan uudelleen muotoon, jossa yksi alaotsikko on yksi aikaleimattu tekstirivi. Aikakoodi vaihtaa muotoa: TTML kirjoittaa sen muodossa begin="00:00:01.000" end="00:00:03.500", LRC puolestaan muodossa [00:12.00]. Sanoja ei muuteta, vaan TTML-tiedoston teksti siirretään LRC:hen sellaisenaan.

Tässä suunnassa TTML-tiedostosta putoaa alaotsikoiden loppuajat, dokumenttitason tyylit: fontit, koot, värit, ääriviivat ja varjot, sijoittelu ruudulla, aikojen tarkkuus ja alaotsikoiden ulkopuolinen sisältö, kun se muunnetaan LRC:ksi. Kun TTML muunnetaan LRC:ksi, loppuaika johdetaan seuraavan rivin alusta ja viimeinen rivi saa oletuskeston. Luettelo on näkyvissä ennen kuin valitset TTML-tiedoston, ja se tarkentuu LRC-muunnoksen lukemisen jälkeen.

Yksi tiedosto tai sata: TTML-jono käsittelee ne peräkkäin, keskeytät milloin tahansa ja lataat kaikki LRC-tulokset kerralla. LRC-tiedostot syntyvät selaimessa eikä TTML-tiedoston sisältö poistu koneeltasi.

Esimerkit

Tavallinen TTML-tiedosto LRC-muunnoksessa

Syöte

<?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>

Tuotos

[00:01.00]Hello there.
[00:03.50]How are you?
[00:03.50]Fine, thanks.

Tulosteessa TTML:stä LRC:hen menetetään loppuajat, dokumenttitason tyylit, sijoittelu, aikojen tarkkuus ja muotokohtainen sisältö; vertaa kahta puolta rivi riviltä ja katso, mikä säilyi.

Hankala TTML-tiedosto ja LRC-muunnos

Syöte

<?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>

Tuotos

[00:01.50]Loaded from an offset and a duration.
[00:04.00]A coarser clock spelling.
[00:07.00]Frames, at 25fps.
[00:09.00]Half-open and Tom &amp; Jerry.

TTML- ja LRC-tiedostot ovat usein sekaisin: ylimääräisiä rivejä, tyhjiä kenttiä ja aikoja, joita ei voi lukea. TTML-jäsennin ei kaadu vaan korjaa minkä voi ja kertoo loput raportissa, jonka LRC saa mukanaan.

Usein kysytyt kysymykset

Miten TTML ja LRC kirjoittavat aikakoodin?

TTML kirjoittaa ajan muodossa begin="00:00:01.000" end="00:00:03.500": XML-määritteinä millisekunnin tarkkuudella. LRC käyttää muotoa [00:12.00], eli minuutit, sekunnit ja sadasosat hakasulkeissa, vain alkukohta. LRC tallentaa vain alkukohdan sadasosan tarkkuudella, joten loppuaika johdetaan seuraavasta rivistä ja viimeinen rivi saa oletuskeston.

Mitkä ominaisuudet eivät mahdu LRC:hen, kun lähde on TTML?

Kun TTML muunnetaan LRC:ksi, menetettävää on alaotsikoiden loppuajat, dokumenttitason tyylit: fontit, koot, värit, ääriviivat ja varjot, sijoittelu ruudulla, aikojen tarkkuus ja alaotsikoiden ulkopuolinen sisältö. Kun TTML muunnetaan LRC:ksi, kohteen ulkopuolelle jäävät prologi, head-osion tyylitaulu ja alueet sekä div-rakenne. Kun TTML muunnetaan LRC:ksi, loppuaika johdetaan seuraavan rivin alusta ja viimeinen rivi saa oletuskeston. Alaotsikoiden teksti ja keskinäinen järjestys säilyvät.

Säilyykö TTML-tiedoston tekstin sisäinen muotoilu LRC:ssä?

TTML merkitsee rivinsisäisen muotoilun muodossa <span>-elementit ja <br/>, mutta LRC ei tunne rivinsisäisiä tageja, joten muotoilu katoaa ja jäljelle jää pelkkä teksti.

Miten TTML-tiedoston moniriviset alaotsikot käyttäytyvät LRC:ssä?

Monirivisen alaotsikon rivit erotetaan TTML:ssä <br/>-elementillä, ja LRC merkitsee ne antamalla jokaiselle riville oman aikaleiman. LRC:ssä jokainen rivi saa oman aikaleimansa, joten yhdestä alaotsikosta tulee useita peräkkäisiä rivejä.

Mihin TTML-tiedoston sijoittelu ruudulla katoaa LRC:ssä?

TTML sijoittaa tekstin alueisiin: region määritellään layout-osiossa ja p-elementti viittaa siihen. LRC ei tallenna sijaintia lainkaan, joten jokainen alaotsikko palaa oletussijaintiin eikä koordinaatteja siirretä tiedostoon edes kommenttina.

Toimiiko paluumuunnos LRC:stä TTML:hen samalla tavalla?

Kyllä, mutta paluusuunnassa menetettävää on: alaotsikoiden loppuajat, jotka joudutaan laskemaan. Kun LRC muunnetaan TTML:ksi, alkukohdat ovat oikeita, mutta loppuajat lasketaan seuraavasta rivistä ja viimeinen saa oletuskeston. Edestakainen matka TTML:stä LRC:hen ja takaisin ei palauta sitä, mitä ensimmäinen muunnos pudotti.

Voinko muuntaa koko kauden TTML:stä LRC:hen yhdellä ajolla?

Kyllä. Jono käsittelee TTML-tiedostot yksi kerrallaan, ajon voi keskeyttää milloin tahansa ja tulokset tulevat yhtenä ZIP-tiedostona. Jokainen LRC-tiedosto kirjoitetaan selaimessa, joten mitään ei lähetetä palvelimelle; yksittäinen tekstitystiedosto saa olla enintään 64 Mt.

Aiheeseen liittyvät työkalut