Synchronized Accessible Media Interchange
As legendas da Microsoft para o Windows Media Player, de 1998: HTML com uma sincronização antes de cada legenda, e uma folha de estilos cujas classes são idiomas, para que um só arquivo possa conter vários. Raramente visto em outros lugares, ainda é o arquivo de legenda habitual na Coreia.
Resumo
| Extensão | .smi |
|---|---|
| Tipo de mídia | Nenhum registrado |
| Especificação | Microsoft, Understanding SAMI 1.0 (2001, atualizada em 2003). Aberta, sem taxas de licença. |
| Precisão de tempo | Milissegundos |
| Codificação do texto | Não declarada. Arquivos coreanos mais antigos são em sua maioria CP949, os mais novos em UTF-8; o Subtitld detecta qualquer um. |
| Estilo | Tags inline do HTML e CSS: itálico, negrito, sublinhado, tachado, cor, fontes |
| Posicionamento | Nenhum na imagem: as legendas aparecem em uma área própria |
| Falantes | Uma linha Source (ID=Source), mostrada acima da legenda |
| Idiomas | Vários em um arquivo, uma classe CSS para cada um |
| Em contêineres | Nenhum. Um arquivo ao lado do vídeo, com o mesmo nome. |
Anatomia de um arquivo
Um documento HTML: uma folha de estilos que nomeia os idiomas, depois uma sincronização para cada instante em que as legendas mudam.
<SAMI><HEAD><STYLE><!-- .KRCC {lang:ko-KR;} .ENCC {lang:en-US;} --></STYLE></HEAD><BODY> <SYNC Start=23000> <P Class=KRCC>넌 정말 못됐어. <P Class=ENCC>You're a jerk. <SYNC Start=24500> <P Class=KRCC> <P Class=ENCC>
- 1 · Cabeçalho
A folha de estilos: uma classe para cada idioma, com seu
lange umNameque os players mostram. A primeira classe é o idioma com que os players começam. - 2 · Sincronização
O instante, em milissegundos a partir do início do vídeo.
- 3 · Legendas
Um parágrafo para cada idioma. Cada um permanece até a próxima sincronização que tenha um na sua classe;
o apaga.
Tempo
Uma sincronização tem um início e nada mais. Uma legenda termina quando começa a próxima legenda do seu idioma, ou quando começa uma em branco; por isso cada pausa precisa de uma sincronização própria.
As tags de fechamento são opcionais. O exemplo oficial da Microsoft não fecha nem <P> nem <SYNC>, e os players o leem de qualquer forma. O Windows Media Player pode exigir as tags em maiúsculas, como o exemplo as escreve.
Estilos
O texto do SAMI é HTML, e sua folha de estilos é CSS. Uma legenda recebe o estilo de P, depois o da sua classe, depois seu atributo style, depois as tags dentro dela.
| Escrito como | Efeito | No Subtitld |
|---|---|---|
<I>, <EM> |
Itálico | Mantido |
<B>, <STRONG> |
Negrito | Mantido |
<U>, <S>, <STRIKE> |
Sublinhado, tachado | Mantidos |
<FONT color="#FFD700"> |
Cor do texto | Mantida |
color, font-style, font-weight, text-decoration |
O mesmo, pela folha de estilos ou por um style |
Mantidos |
<BR> |
Quebra de linha | Mantida |
<FONT face>, font-size, margin |
Fonte, tamanho, espaçamento | Não mantidos |
<RUBY>…<RT> |
Uma leitura acima do texto | O texto é mantido; a leitura, não |
Idiomas
Cada classe é um idioma. Os players os oferecem pelo seu Name, mostram o primeiro definido até que se diga o contrário, e mostram um parágrafo sem classe qualquer que seja o idioma. Um arquivo coreano pode trazer inglês ao lado do coreano, e o espectador escolhe.
Quando o Subtitld abre um arquivo com vários, o primeiro idioma é o das legendas, e cada outro é uma tradução, na legenda com que ele mais se sobrepõe. Exportar o original e uma tradução os grava de volta como dois idiomas, com as legendas da tradução apenas onde ela as tem.
Falantes
<SYNC Start=23000>
<P Class=ENCC ID=Source>Celia
<P Class=ENCC>You're a jerk.
Um parágrafo com ID=Source não é uma legenda. Ele diz quem fala, em uma linha acima da legenda, e permanece até que outro o substitua. O Subtitld o lê como o falante de cada legenda sobre a qual está, e grava os falantes assim quando pedido.
Os players diferem aqui. O FFmpeg, e os players construídos sobre ele, mostram a linha Source em itálico acima da legenda. O MPlayer a junta à primeira linha da legenda. Nomes antes do texto (Celia: …) se leem igual em todo lugar.
SAMI no Subtitld
- O texto e as quebras de linha de cada legenda
- Itálico, negrito, sublinhado, tachado e cor
- Traduções, como idiomas próprios
- Falantes, como linhas Source
- Início e fim, até o milissegundo, em ordem
- Onde a legenda fica: o SAMI não tem lugar na imagem
- Fontes, tamanhos e margens
- As leituras do ruby
- Dublagens, rostos e cores dos falantes
Salve um projeto .usfx para manter o que é próprio do Subtitld.
Abrindo um arquivo SAMI
O Subtitld abre .smi e .sami, e:
- lê o SAMI como os navegadores leem HTML: tags em maiúsculas ou não, fechadas ou não, atributos entre aspas ou não, sincronizações fora de ordem, texto fora de um parágrafo;
- lê cada idioma: o primeiro como o das legendas, os outros como suas traduções;
- mantém itálico, negrito, sublinhado, tachado e cor, das tags e da folha de estilos;
- toma as linhas Source como falantes, prontos para dublagem;
- encerra a última legenda onde o
Metricsdo arquivo diz que o vídeo termina, ou após quatro segundos; - decodifica qualquer codificação, inclusive CP949.
Exportando SAMI
Exportar, depois Legendas e SAMI, oferece:
- TextoO original, uma tradução, ou os dois como dois idiomas.
- Nomes dos falantesOmitidos, antes do texto (Thom: …), ou como linhas Source, a forma própria do SAMI.
- FormataçãoMantida, ou removida.
- Deslocar horáriosCada legenda antes ou depois, pelo mesmo intervalo.
- CodificaçãoUTF-8, com ou sem byte order mark, UTF-16, Windows-1252, ou CP949 para players coreanos mais antigos.
- Quebras de linhaLinux e macOS, ou Windows.
O arquivo é SAMI 1.0 como o exemplo da Microsoft o escreve, com as tags em maiúsculas: uma classe para cada idioma, uma sincronização onde cada legenda começa e uma em branco onde ela termina, e a formatação como <I>, <B>, <U>, <S> e <FONT color>.
Dê ao arquivo o nome do vídeo: tears-of-steel.smi ao lado de tears-of-steel.mp4. O Windows Media Player encontra um .smi assim (um .sami, não), e a maioria dos players também.
Curiosidades
A Microsoft lançou o SAMI no verão de 1998, como parte de seu trabalho em acessibilidade: legendas no PC, para pessoas surdas ou com deficiência auditiva.
A especificação da Microsoft apaga uma legenda com um espaço sem quebra. O FFmpeg descarta qualquer sincronização que contenha um, então, quando outro idioma continua, o Subtitld escreve um parágrafo vazio.
Muitos arquivos coreanos nomeiam a classe pelo país, e não pelo idioma: KRCC, onde os exemplos da Microsoft têm ENUSCC.
Formatos relacionados
Abra no Subtitld com o vídeo e reajuste-o na forma de onda.