Muunna JSON muotoon VTT
Tai liitä tekstityksen teksti
Mitä tämä muunnos muuttaa
3 asiaa pudotetaan tai vaativat päätöksen
- Tyyli
kaikki tyylit paitsi lihavointi ja kursiivi (väri, ääriviiva, varjo, marginaalit)
- Sijoittelu
sijoittelu ruudulla (jokainen alaotsikko palaa oletussijaintiin)
- Karaoke
karaokeajoitus (tavukohtainen korostus)
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.
Sivulla JSON muuttuu VTT:ksi. Kun JSON muunnetaan VTT:ksi, lähtöformaatti tallentaa yhden alaotsikon muotoon cues-taulukon alkio, jossa on start-, end- ja lines-kentät, ja aika kirjoitetaan muodossa {"start": 1000, "end": 3500}. Kohdeformaatti VTT tallentaa saman asian muotoon cue-lohko, jonka aikakoodirivin perässä on teksti, ja aika kirjoitetaan muodossa 00:00:01.000, kun lähde on JSON. Molemmilla puolilla ovat samat sanat, mutta JSON ja VTT merkitsevät ne eri tavalla.
Tässä suunnassa JSON-tiedostosta putoaa väri, ääriviiva, varjo ja marginaalit, sijoittelu ruudulla ja karaoken ajoitus, kun se muunnetaan VTT:ksi. Kun JSON muunnetaan VTT:ksi, väri, ääriviiva, varjo ja marginaalit jäävät pois, mutta lihavointi ja kursivointi säilyvät. Luettelo on näkyvissä ennen kuin valitset JSON-tiedoston, ja se tarkentuu VTT-muunnoksen lukemisen jälkeen. Rivinsisäiset tagit säilyvät: JSON tallentaa ne muodossa merkkirajoina tallennetut tagit, ja VTT kirjoittaa ne muodossa <i>, <b> ja <font color> -tagit.
Koko JSON-kausi mahtuu samaan ajoon: tiedostot käsitellään yksi kerrallaan, ajon voi keskeyttää keskeltä ja kaikki VTT-tulokset tulevat yhtenä ZIP-tiedostona. Muunnos tapahtuu selaimessa, joten JSON-tiedostosi eivät käy palvelimella ennen VTT-versiota.
Esimerkit
Tavallinen JSON-tiedosto VTT-muunnoksessa
Syöte
{
"version": 1,
"title": "Fixture: typical",
"fps": 25,
"styles": {
"Default": {
"name": "Default",
"fontFamily": "Arial",
"fontSize": 20,
"primaryColor": "#FFFFFF",
"bold": false,
"italic": false
}
},
"generator": "subtitlematrix fixtures",
"cues": [
{
"id": "1",
"start": 0,
"end": 2000,
"lines": [
"Hello world.",
"Second line."
],
"style": "Default",
"position": {
"x": 100,
"y": 200,
"align": "center"
}
},
{
"id": "2",
"start": 2500,
"end": 4000,
"lines": [
"Plain line.",
{
"text": "Styled line.",
"tags": [
{
"kind": "italic",
"start": 0,
"end": 6
}
]
}
]
},
{
"id": "3",
"start": 4500,
"end": 6000,
"lines": [
"Roger: I am here."
],
"speaker": "Roger"
}
]
}
Tuotos
WEBVTT
1
00:00:00.000 --> 00:00:02.000
Hello world.
Second line.
2
00:00:02.500 --> 00:00:04.000
Plain line.
<i>Styled</i> line.
3
00:00:04.500 --> 00:00:06.000
Roger: I am here.
Tulosteessa JSONista VTT:hen menetetään väri ja marginaalit, sijoittelu ja karaoke; vertaa kahta puolta rivi riviltä ja katso, mikä säilyi.
Sama JSON → VTT -muunnos rikkinäisellä lähdetiedostolla
Syöte
[
{ "start": 0, "end": 1000, "lines": ["First."] },
{ "start": 1000, "end": 2000, "text": "Second." },
"not an object",
{ "start": 2000, "end": 3000, "lines": ["Third."], "class": "top" }
]
Tuotos
WEBVTT
00:00:00.000 --> 00:00:01.000
First.
00:00:01.000 --> 00:00:02.000
Second.
00:00:02.000 --> 00:00:03.000
Third.
JSON- ja VTT-tiedostot ovat usein sekaisin: ylimääräisiä rivejä, tyhjiä kenttiä ja aikoja, joita ei voi lukea. JSON-jäsennin ei kaadu vaan korjaa minkä voi ja kertoo loput raportissa, jonka VTT saa mukanaan.
Usein kysytyt kysymykset
Miten JSON ja VTT kirjoittavat aikakoodin?
JSON kirjoittaa ajan muodossa {"start": 1000, "end": 3500}: kokonaislukuina millisekunteina. VTT käyttää muotoa 00:00:01.000, eli tunnit, minuutit, sekunnit ja millisekunnit pisteellä erotettuina. Tarkkuus on molemmilla puolilla sama, joten aika itse ei muutu – vain sen kirjoitusasu vaihtuu.
Mitä JSONista menetetään, kun siitä tehdään VTT?
Kun JSON muunnetaan VTT:ksi, menetettävää on väri, ääriviiva, varjo ja marginaalit, sijoittelu ruudulla ja karaoken ajoitus. Kun JSON muunnetaan VTT:ksi, väri, ääriviiva, varjo ja marginaalit jäävät pois, mutta lihavointi ja kursivointi säilyvät. Kun JSON muunnetaan VTT:ksi, jokainen alaotsikko palaa VTT:ssä oletussijaintiin ruudulla. Alaotsikoiden teksti ja keskinäinen järjestys säilyvät.
Entä lihavointi, kursivointi ja väri – säilyvätkö ne JSONista VTT:hen?
JSON merkitsee rivinsisäisen muotoilun muodossa merkkirajoina tallennetut tagit, ja VTT kirjoittaa sen muodossa <i>, <b> ja <font color> -tagit. JSON-tiedoston dokumenttitason tyylit – fontit, värit ja ääriviivat – eivät kuitenkaan siirry, koska VTT ei tunne tyylitauluja.
Pysyvätkö JSON-tiedoston rivit erillään VTT:ssä?
Monirivisen alaotsikon rivit erotetaan JSONissa lines-taulukon erillisinä alkioina, ja VTT merkitsee ne tavallisella rivinvaihdolla.
Mitä JSON-tiedoston karaoken ajoitukselle tapahtuu VTT:ssä?
JSON tallentaa karaoken tagirakenteeseen: jokainen tavu on oma merkkiraja, jolla on kind: karaoke ja kestonsa. VTT ei tunne karaokea, joten tavut säilyvät tekstinä ja ne merkitään <c>-tageilla, mutta niiden kestot katoavat ja koko alaotsikko näytetään kerralla.
Toimiiko paluumuunnos VTT:stä JSONiin samalla tavalla?
Kyllä, mutta paluusuunnassa menetettävää on: alaotsikoiden ulkopuolinen sisältö. Kun VTT muunnetaan JSONiksi, kohteen ulkopuolelle jäävät NOTE-, STYLE- ja REGION-lohkot sekä aikakoodin jälkeiset asetukset (align, position). Edestakainen matka JSONista VTT:hen ja takaisin ei palauta sitä, mitä ensimmäinen muunnos pudotti.
Lähetetäänkö JSON-tiedostoni palvelimelle, kun teen VTT-muunnosta?
Ei. Jono käsittelee JSON-tiedostot yksi kerrallaan, ajon voi keskeyttää milloin tahansa ja tulokset tulevat yhtenä ZIP-tiedostona. Jokainen VTT-tiedosto kirjoitetaan selaimessa, joten mitään ei lähetetä palvelimelle; yksittäinen tekstitystiedosto saa olla enintään 64 Mt.