Ir para o conteúdo principal
SubtitleMatrix

Converter SMI para SBV

Ou cole o texto da legenda

O que esta conversão altera

3 coisas são descartadas ou precisam de uma decisão

  • Estilo

    todo o estilo (negrito, itálico, cor, contorno, sombra)

  • Posição

    a posição na tela (cada bloco volta à posição padrão)

  • Conteúdo específico do formato

    conteúdo que o formato de origem guarda fora de seus blocos (blocos que não são cue, texto de cabeçalho, configurações por bloco, eventos comentados) — o formato de destino não tem lugar para ele

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 SMI em SBV. Arraste um arquivo — ou cole o texto — e receba de volta a versão SBV. A conversão roda inteiramente no seu navegador, então nada é enviado e não é preciso criar conta.

Os dois formatos não guardam as mesmas coisas, e a diferença não é cosmética: estilo, posicionamento e conteúdo específico do formato não têm onde ficar no SBV, que escreve os dois horários numa única linha separada por vírgula. A lista acima vem do que cada formato consegue expressar, não do seu arquivo, então a resposta é a mesma antes de você carregar qualquer coisa.

Um arquivo só está ótimo, e uma temporada inteira também: a fila processa na ordem, você pode parar no meio e os resultados descem juntos num único ZIP.

Exemplos

Um arquivo SMI típico, convertido para SBV

Entrada

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial; }
.ENCC { Name: English; lang: en-US; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P Class=ENCC>Hello there.
<SYNC Start=3000>
<P Class=ENCC>&nbsp;
<SYNC Start=3500>
<P Class=ENCC>How are you?<br>Fine, thanks.
<SYNC Start=6000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Saída

0:00:01.000,0:00:03.000
Hello there.

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

Perdidos nesta saída: estilo, posicionamento e conteúdo específico do formato. Todo o resto bate linha por linha.

A mesma conversão num arquivo problemático

Entrada

<SAMI>
<HEAD>
<TITLE>Episode 1</TITLE>
<STYLE TYPE="text/css">
<!--
.ENCC { Name: English; }
-->
</STYLE>
</HEAD>
<BODY>
<sync start="00:00:02,500">
<P Class=ENCC>Line one<br>Line two
<sync start=9000>
<P Class=ENCC>Tom &amp; Jerry
<SYNC Start=12000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Saída

0:00:02.500,0:00:09.000
Line one
Line two

0:00:09.000,0:00:12.000
Tom &amp; Jerry

É o tipo de dano que arquivos reais têm — fim de linha misturado, espaço solto, campo vazio. Compare com o exemplo organizado acima para ver o que o analisador perdoa.

Perguntas frequentes

Negrito e itálico sobrevivem de SMI para SBV?

A ênfase sobrevive; o bloco `<STYLE>` do SAMI não. A formatação que pertence a um trecho de texto — negrito, itálico, sublinhado, uma cor — é escrita no texto do SBV como tags (`<i>`, `<b>`, `<u>`, `<font color="…">`), porque esse é o único tipo de estilo que um formato por bloco ainda carrega. O que se perde é tudo o que o arquivo SMI dizia globalmente: a fonte, o tamanho, o contorno, a sombra e as margens.

O que acontece com a posição na tela de SMI para SBV?

O SBV não sabe dizer onde uma legenda é desenhada, então os atributos de parágrafo e o CSS para onde eles apontam são descartados na saída do SMI, e cada bloco volta à posição padrão que o reprodutor escolhe — para a maioria deles, a parte de baixo do quadro, centralizada.

O que acontece com o bloco `<STYLE>`, o `<TITLE>` e os atributos `Class=` do SAMI no SBV?

São descartados. O SAMI diz como suas legendas se parecem fora do texto do bloco: um bloco `<STYLE>` com CSS para os parágrafos, um `<TITLE>` e o marcador de canal que cada parágrafo carrega — `Class=ENCC`, que aponta para uma dessas regras. O SBV guarda blocos, não um documento, então não há onde nada disso ficar. A ênfase escrita dentro do texto do próprio bloco não é afetada — ela pertence à linha —, e os blocos chegam com texto e tempos inteiros.

Como fica a saída quando SMI vira SBV?

Como SBV: sem números de bloco e sem cabeçalho — uma linha com os dois horários e, abaixo dela, o texto. Cada bloco SMI vira um bloco SBV, na mesma ordem e com o mesmo texto.

Os tempos SMI ficam exatos no arquivo SBV?

Sim, ao milissegundo — que é o máximo dos dois formatos. O SMI escreve um instante como `Start=4126` e o SBV escreve o mesmo instante como `0:00:04.126`; nada é arredondado nem deslocado entre os dois, e um bloco que ficou 2,9 segundos na tela continua com 2,9 segundos.

Como sai um bloco SMI de duas linhas no SBV?

Como duas linhas, uma debaixo da outra. O par sobrevive — as duas linhas SMI ainda pertencem a uma legenda só na saída SBV, e o reprodutor mostra as duas juntas.

Os blocos SMI mantêm a ordem na saída SBV?

Mantêm, e são ordenados pelo horário de início no caminho — o mais cedo primeiro, que é como todo formato daqui espera e como os reprodutores leem. Se o seu arquivo SMI listava os blocos fora de sequência, a saída SBV os põe em ordem; isso muda a estrutura do arquivo, não o conteúdo, e é de propósito.

Dá para converter o SBV de volta para SMI?

Dá, e essa direção não custa nada: um arquivo SBV guarda menos do que o SMI consegue, então nada mais se perde no caminho de volta. O que esta direção perdeu continua perdido, porém — estilo, posicionamento e conteúdo específico do formato não podem ser reconstruídos a partir de um SBV, porque nada nele registra o que eram.

A saída SBV preserva a codificação do arquivo SMI?

Não — a saída é UTF-8, com fim de linha Unix e sem marca de ordem de bytes, seja qual for a codificação do arquivo SMI. Um arquivo em UTF-16 ou numa codificação Windows de um byte é decodificado na entrada (o painel de resultado avisa quando isso acontece); o que sai é sempre o mesmo SBV em UTF-8.

Ferramentas relacionadas