Andare al contenuto principale
SubtitleMatrix

Convertire TXT in JSON

Conversione dei formatiTrascrizione in testo semplice
Oppure incollare il testo dei sottotitoli

Opzioni

Usata quando la sorgente non ha orari di fine (testo semplice, LRC). La timeline dell’uscita è qui generata anziché convertita, quindi è questo numero che si otterrà.

Cosa cambia questa conversione

1 elemento viene scartato o richiede una decisione

  • Temporizzazione

    la timeline stessa — la sorgente non registra temporizzazioni, quindi quella dell’uscita è generata anziché convertita

Questo elenco deriva dalla matrice delle capacità di questi due formati, non dal particolare file caricato. Un file specifico può perdere di più se usa caratteristiche che il formato consente ma la matrice non modella.

Questa pagina converte un file TXT in JSON. Si trascina il file nel riquadro, oppure si incolla il testo, e si riprende indietro la versione JSON. La conversione avviene interamente nel browser: nessun file viene caricato e non serve un account.

I due formati non conservano le stesse cose, e la differenza non è cosmetica: la temporizzazione non ha dove stare in JSON. L’elenco qui sopra nasce da ciò che ciascuno dei due formati sa esprimere, non dal file che si carica, quindi la risposta è la stessa prima ancora di aprire qualcosa.

Un file va bene, e così un’intera stagione: la coda li lavora in ordine e i risultati scendono insieme in un unico ZIP.

Esempi

Un file TXT tipico, convertito in JSON

Ingresso

The quick brown fox jumps over the lazy dog.

Second paragraph, first line.
Second paragraph, second line.

Uscita

{
  "version": 1,
  "cues": [
    {
      "start": 0,
      "end": 2000,
      "lines": [
        "The quick brown fox jumps over the lazy dog."
      ]
    },
    {
      "start": 2000,
      "end": 4000,
      "lines": [
        "Second paragraph, first line."
      ]
    },
    {
      "start": 4000,
      "end": 6000,
      "lines": [
        "Second paragraph, second line."
      ]
    }
  ]
}

In questa conversione si perde: temporizzazione. Tutto il resto corrisponde riga per riga.

La stessa conversione su un input scomodo

Ingresso


Hello world.

Second block.

Uscita

{
  "version": 1,
  "cues": [
    {
      "start": 0,
      "end": 2000,
      "lines": [
        "Hello world."
      ]
    },
    {
      "start": 2000,
      "end": 4000,
      "lines": [
        "Second block."
      ]
    }
  ]
}

È il tipo di danno che hanno i file reali: fine riga misti, spazi vaganti, campi lasciati vuoti. Confronto con l’esempio ordinato qui sopra per vedere cosa il parser perdona.

Domande frequenti

I timecode vengono inventati quando un file TXT diventa JSON?

Sì, e conviene dirlo chiaramente: un file TXT non ha alcuna temporizzazione, quindi la linea temporale dell’uscita JSON viene costruita qui invece che convertita. La prima riga parte da zero e ogni riga successiva comincia dove finiva quella prima, così la spaziatura è uniforme e l’ordine è quello del file. Il campo durata di questa pagina decide quanto è larga ogni finestra.

Che aspetto ha il risultato quando TXT diventa JSON?

Come JSON: un array di oggetti blocco, ciascuno con il proprio `id`, `start` ed `end`. Ogni blocco TXT diventa un blocco JSON, nello stesso ordine, con lo stesso testo.

I blocchi TXT mantengono l’ordine nel file JSON?

Sì, e lungo la strada vengono ordinati per istante di inizio: prima il più anticipato, che è l’ordine atteso da ogni formato di questo sito e quello con cui i lettori li scorrono. Se il file TXT elencava i blocchi fuori sequenza, il JSON li rimette in ordine: è un intervento sulla struttura del file, non sul contenuto, ed è voluto.

Posso riconvertire il JSON in TXT?

Sì, e ha un elenco suo: la conversione da JSON a TXT perde tempi, stile, posizione, karaoke e a capo. Quell’elenco è diverso da quello qui sopra perché i due formati conservano cose diverse.

Il file JSON conserva la codifica del file TXT?

No: l’uscita è UTF-8, con fine riga Unix e senza BOM, qualunque codifica usasse il TXT. Un file che arriva in UTF-16 o in una codifica a byte singolo di Windows viene decodificato in ingresso (il pannello del risultato lo segnala quando accade); quello che esce è sempre lo stesso JSON in UTF-8.

Strumenti correlati