Ir para o conteúdo principal
SubtitleMatrix

Converter TXT para TTML

Conversão de formatosTranscrição em texto simples
Ou cole o texto da legenda

Opções

Usada quando a origem não tem horas de término (texto simples, LRC). A linha do tempo do resultado é gerada aqui em vez de convertida, então este número é o que você obtém.

O que esta conversão altera

1 coisa é descartada ou precisa de uma decisão

  • Tempos

    a própria linha do tempo — a origem não registra tempos, então a da saída é gerada em vez de convertida

Esta lista vem da matriz de capacidades destes dois formatos, não do arquivo específico que você carregou. Um arquivo específico pode perder mais se usar recursos que o formato permite mas a matriz não modela.

Esta página converte TXT em TTML. Arraste um arquivo — ou cole o texto — e receba a versão TTML de volta. A conversão roda inteiramente no seu navegador, então nada é enviado e nenhuma conta é necessária.

Estes dois formatos não guardam as mesmas coisas, e a diferença não é cosmética: a sincronização não tem para onde ir no TTML. A lista acima vem do que cada um dos formatos consegue expressar, não do seu arquivo, então a resposta é a mesma antes de você carregar qualquer coisa.

Um arquivo está bom, e uma temporada inteira também: a fila processa na ordem e os resultados descem juntos num único ZIP.

Exemplos

Um arquivo TXT típico, convertido para TTML

Entrada

The quick brown fox jumps over the lazy dog.

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

Saída

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
  <body>
<p begin="00:00:00.000" end="00:00:02.000">The quick brown fox jumps over the lazy dog.</p>
<p begin="00:00:02.000" end="00:00:04.000">Second paragraph, first line.</p>
<p begin="00:00:04.000" end="00:00:06.000">Second paragraph, second line.</p>  </body>
</tt>

Perdido nesta saída: sincronização. Todo o resto corresponde linha a linha.

A mesma conversão sobre uma entrada problemática

Entrada


Hello world.

Second block.

Saída

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
  <body>
<p begin="00:00:00.000" end="00:00:02.000">Hello world.</p>
<p begin="00:00:02.000" end="00:00:04.000">Second block.</p>  </body>
</tt>

É o tipo de dano que os arquivos reais têm: fim de linha misturado, espaço sobrando, campos vazios. Compare com o exemplo organizado acima para ver o que o analisador perdoa.

Perguntas frequentes

Os timecodes são inventados quando um TXT vira TTML?

São, e vale dizer com clareza: um arquivo TXT não tem tempo nenhum, então a linha do tempo da saída TTML é montada aqui em vez de convertida. A primeira linha começa no zero e cada linha seguinte começa onde a anterior terminou, então o espaçamento é uniforme e a ordem é a sua. O campo de duração desta página decide a largura de cada intervalo.

Como fica a saída quando TXT vira TTML?

Fica no formato TTML: sem números de bloco, cada legenda é um elemento p com os atributos begin e end, dentro de um body, e o documento inteiro abre com a declaração XML. Cada linha TXT vira uma fala TTML, na mesma ordem, com o mesmo texto.

A ordem das linhas TXT se mantém no TTML?

Se mantém, com as falas ordenadas pelo início no caminho, do mais cedo para o mais tarde, que é como os players leem. Se o seu TXT listava as linhas fora de ordem, o TTML as devolve em ordem; a mudança é de estrutura, não de conteúdo, e é proposital.

Consigo converter o TTML de volta para TXT?

Consigo, e essa direção tem lista própria: converter TTML para TXT descarta sincronização, estilo, posicionamento, quebras de linha e conteúdo específico do formato. A lista difere da de cima porque os dois formatos guardam coisas diferentes.

O TTML de saída mantém a codificação do arquivo TXT?

Não: o TTML gerado é UTF-8, com fim de linha Unix e sem BOM, qualquer que tenha sido a codificação do TXT. Um arquivo que chega em UTF-16 ou numa codificação de byte único do Windows é decodificado na leitura, e o painel de resultado avisa quando isso acontece.

Ferramentas relacionadas