imprimir

SPUMUX - Manual traduzido





NOME


Spumux - gera e multiplexa (multiplexes) legendas em uma faixa programável existente de um MPEG2

SINOPSE


   Spumux [ -m dvd | -m cvd | -m svcd ] [ -s faixa ] [ -v nível ] [ -P  ]
       arquivo < mpeg-de-entrada > mpeg-de-saída-com-legendas 



DESCRIÇÃO


O Spumux codifica as legendas e as multiplexa na faixa programável do MPEG2.
   -m modo
      Configura a codificação das legendas. Pode ser dvd, cvd ou svcd. O padrão é dvd.

   -s faixa
      Escolhe o id da faixa de legenda. O padrão é 0.

   -v nível
      Marca o nível de verbosidade (verbosity).

   -P
      Habilita uma barra de progressão.



CRIAÇÃO DE MENUS


Aqui está um arquivo de configuração de exemplo:
       <subpictures>
          <stream>
             <spu start="tempo-do-começo" [ end="tempo-do-final" ] [ image="imagem.png" ]
                  [ highlight="imagem.png" ] [ select="imagem.png" ]
                  [ transparent="código-de-cor" ] [ force="yes" ]
                  [ autooutline="infer" [ outlinewidth="largura" ]
                    [ autoorder="fileiras" | autoorder="colunas" ] ]
                  [ xoffset="coordenada-para-x" yoffset="coordenada-para-y" ] >
                <button [ name="nome" ] [ x0="x0" ] [ y0="y0" ] [ x1="x1" ]
                        [ y1="y1" ] [ up="nome" ] [ down="nome" ]
                        [ left="nome" ] [ right="nome" ] />
                <action [ name="nome" ] />
             </spu>
          </stream>
       </subpictures> 


Cada imagem de legendas é descrita por uma tag <spu>. Os atributos de começo e final opcional descrevem quando a legenda será disposta na tela, em "HR:MM:SS.HU". O atributo da imagem descreve a imagem de legendas principal, que pode ser um arquivo PNG ou BMP. Se sua imagem não for uma imagem de tela inteira, você pode usar as funções de deslocamento para x e y ("xoffset" e "yoffset") para mover a imagem na tela. Se por acaso a/o autora não puder usar um formato gráfico com um canal alfa, o atributo de transparência ("transparent") pode ser usado para descrever qual cor deve se tornar inteiramente transparente. A cor está em código hexadecimal como "RRGGBB". Se você quiser forçar a exibição da legenda, independentemente de se a/o usuária/o habilitou as legendas, ou não, ao assistir o arquivo, você pode usar a tag "force" - cuja única opção, se usada, é "yes". Quando você está fazendo menus, a tag "force" é solicitada.

Os atributos e tags restantes estão relacionados à criação de menus. O atributo de "evidenciar" (highlight) mostra como todos os botões aparecerão quando estiverem sendo selecionados (por exemplo, quando você estiver usando as setas de navegação no menu). Já o atributo de "seleção" mostra como todos os botões ficarão quando forem efetivamente selecionados (por exemplo, pelos 1-2 segundos seguintes aos que você pressionou o "enter" no menu). Se qualquer desses atributos (ou o atributo "image") for omitido, o Spumux cria uma imagem em branco (totalmente transparente). Obviamente, pelo menos uma tag deve ser especificada.

Para ajudar na criação de botões, o atributo "autooutline" instrui o Spumux a deduzir ("infer") onde os botões estão localizados. Ele faz isso tentando desenhar retângulos por volta da composição das imagens de "evidência" (highlight) e seleciona imagens que não interseccionam qualquer pixel opaco ou semi-opaco. Para suportar botões de texto, o atributo "outlinewidth" permite que você especifique a largura do retângulo que está sendo testado. Retângulos mais largos não serão capazes de enfiar-se entre as letras. Finalmente, o "autoorder" descreve de qual modo serão ordenados os botões automaticamente detectados, o que é importante para botões numericamente selecionados e para o mapeamento de nomes de botões-para-botões, ou para os nomes relacionados.

As tags relacionadas a botões e ações descrevem os botões (objetos visivelmente selecionáveis na tela) e ações (comandos que são executados tão logo o botão físico associado a ela seja pressionado no controle remoto). Se você estiver usando a função "autooutline", apenas desenhando botões, está feliz com a navegação de botões deduzida, e consegue lidar com o sistema simplista de nomeação, então você na verdade nem precisa especificar quaisquer botões ou ações. Caso contrário, continue lendo.

O atributo de nome ("name") é usado para dar ao botão ou ação um nome que seja de fácil dedução. Por padrão, eles são numerados seqüencialmente, começando com "1". As coordenadas (x0,y0) descrevem o canto superior-esquerdo inclusivamente, enquanto as coordenadas (x1,y1) descrevem o canto inferior-direito exclusivamente. Os nomes "acima" ("up"), "abaixo" ("down"), "à esquerda" ("left") e "à direita" ("right") descrevem quais botões, ou ações devem estar relacionadas ao botão físico correspondente quando o botão atual do menu estiver em "evidência" ("highlighted") - embora, se omitido, o Spumux usará um algoritmo razoavelmente inteligente para determinar para quais botões deve mover até a próxima seleção.


LIDANDO COM LEGENDAS BASEADAS EM TEXTO


O Spumux também é capaz de lidar legendas de texto, que serão renderizadas para gráficos pelo Spumux. Vários formatos diferentes de textos (devem ser não-gráficos) são suportados. Por exemplo, .sub, .srt, .ssa, .smi, .rt , .txt, .aqt, .jss, .js, ass). O Spumux tentará determinar o formato automaticamente.

Se legendas baseadas em texto forem processadas, nenhuma outra faixa poderá ser definida; botões ou outros terão de ser processados em outra passagem com o Spumux, usando outro arquivo .xml de configuração.

O arquivo .xml a seguir mostra as tags disponíveis e suas configurações padrão. Apenas a tag "textsub" é obrigatória. Os padrões serão usados se a tag específica não for especificada.
       <subpictures>
          <stream>
             <textsub filename="nome_do_arquivo_de_legenda.srt" characterset="ISO8859-1"
                fontsize="28.0" font="arial.ttf" horizontal-alignment="left"
                vertical-alignment="bottom" left-margin="60" right-margin="60"
                top-margin="20" bottom-margin="30" subtitle-fps="25"
                movie-fps="25" movie-width="720" movie-height="574"
             />
          </stream>
       </subpictures> 


Traduzindo as tags do exemplo acima:

tag
tradução
padrão
textsub filename nome do arquivo de legendas
characterset código de caracteres usado
fontsize tamanho da fonte
font fonte arial.ttf
horizontal-alignment alinhamento horizontal à esquerda ("left")
vertical-alignment alinhamento vertical na base ("bottom")
left-margin margem esquerda
60
right-margin margem direita
60
top-margin margem do topo
20
bottom-margin margem da base
30
subtitle-fps taxa de frames por segundo das legendas
25
movie-fps taxa de frames do vídeo
25
movie-width largura do vídeo
720
movie-height altura do vídeo
574


A tag "textsub" define as configurações para a renderização do texto para gráfico.

O atributo "filename" define o caminho e o nome do arquivo de entrada de legendas; este é o único atributo obrigatório.

O atributo "characterset" define qual o código de caracteres será usado. Tipos de códigos disponíveis podem ser encontrados em http://www.gnu.org/software/libiconv.

O atributo "fontsize" define o tamanho da fonte em unidades de fonte. O atributo "font" define a fonte a ser usada. O Spumux buscará pelas fontes especificadas no subdiretório .Spumux do diretório /home em sistemas operacionais linux e em Windows/fonts e subdiretório Spumux do diretório home cygwin/mingw e no diretório de execução ("execution") em sistemas Windows. Procurando por fontes livres? Uma lista pode ser encontrada aqui: http://www.microsoft.com/typography/links/links.asp?type=free&part=1 (este link é somente sobre fontes, não sobre sistemas operacionais).

O atributo "horizontal-alignment" define o alinhamento horizontal das legendas. As opções são "left", "right", "center" e "default" (respectivamente, "à esquerda", "à direita", "centralizada" e "padrão"). O valor "default" faz o Spumux usar o atributo que estiver configurado no arquivo de texto de legenda, se tal formato suportar este tipo de atributo. O atributo "vertical-alignment" define o alinhamento vertical. Opções são: "top", "center" e "bottom" (respectivamente, "topo", "centro" e "base").

Os atributos de margens ("margin") definem o espaço mínimo de pixels em branco entre a borda da imagem e a borda das linhas de legenda.

Definir os atributos "subtitle-fps" e "movie-fps" tornam possível ao Spumux recalcular o tempo das legendas, caso eles não sejam os mesmos.

Os atributos de largura e altura do vídeo ("movie-width" e "movie-height") definem o tamanho máximo da página de legendas; eles não devem ser maiores que o tamanho do frame do vídeo. Normalmente eles são os mesmos. Alguns aparelhos de DVD preferem frames de legendas que sejam 2 ou 4 pixels menores em altura.


DICAS IMPORTANTES DE USO

Sobre o valor da margem a ser usada como base ("bottom-margin")


Ao realizarmos testes multiplexando legendas com o Spumux, notamos que as legendas podem não aparecer dispostas da mesma forma dependendo dos aparelhos de DVD ou de televisão que você estiver usando.

Nestes testes, notamos que o valor padrão de margem de base (atributo "bottom-margin") ficava perfeito quando usado em um aparelho de DVD Gradiente GBD-120 e em um televisor Gradiente GBT-2011. Entretanto, o melhor valor de deslocamento da base das legendas para um aparelho de DVD LG DVZ-9411N e um televisor Zenith um pouco maior que o Gradiente era o "0": se usássemos o valor-padrão de "30" como "bottom-margin", as legendas ficavam muito para cima, atrapalhando a exibição do vídeo.

Após vários testes, utilizando diversos valores para o atributo (5, 10, 15, 20, 25 e 30), é possível dizer que o valor mais plausível é o intermediário "15", uma vez que nenhuma legenda ficou com a exibição cortada na primeira aparelhagem - ainda que tenha ficado próxima aos limites da tela - e ficou consideravelmente mais baixa, a ponto de não atrapalhar tanto a exibição.

A dica aqui é: se você quer segurança com relação a como sua legenda aparecerá em vários aparelhos de DVD e televisores diferentes, use o valor "15" como "bottom-margin". Se você quer algo mais personalizado para o equipamento que possui em casa, pegue vários trechos idênticos do vídeo e autore um mesmo DVD modificando este atributo; depois disso, teste um a um e veja qual se adequa melhor às suas necessidades.

Sobre o tamanho da letra a ser usada e as pré-visualizações enganosas


Normalmente, quando se está autorando um DVD, confia-se bastante nas pré-vizualizações do vídeo fornecida por softwares como Xine, MPlayer, ou VLC. Elas são muito úteis para se saber se o áudio está fora de sincronia, se a navegação dos menus está correta, etc. No caso das legendas, entretanto, elas podem ser enganosas.

Isso porque esses programas usam valores de exibição de legendas configurados como "pequenas", "médias", "grandes", ou coisas assim, desconsiderando o valor usado como tamanho das legendas durante a multiplexação realizada pelo Spumux. Assim, mesmo usando uma legenda muito grande ou muito pequena, você pode ter a falsa impressão de que está usando o tamanho mais indicado.

Os valores padrão do Spumux de uso de legendas com fonte Arial-28 são bons, embora não sejam os melhores. Testamos diversos tamanhos na aparelhagem descrita acima, todos usando a fonte Arial como base: 24, 25, 26, 27, 28 e 30. Embora o Arial-24 pareça um ótimo tamanho ao ser visualizado no Xine, ele fica muito pequeno na televisão. O tamanho mais legível de todos foi o Arial-30, sendo esta a recomendação aqui. Na tela, a legibilidade do Arial-30 é melhor do que a do Arial-28 (ainda que este último continue sendo uma boa opção).

Gravando mais de uma legenda no mesmo vídeo


É possível gravar mais de uma faixa de legendas no mesmo vídeo. Para isso, faça uma passagem do spumux por legenda e por faixa, isto é: para multiplexar a primeira legenda no vídeo, faça uma passagem usando a legenda 1 e gravando-a, digamos, na faixa de legenda 0 (opção "-s 0"). Depois, faça a segunda passagem usando o vídeo resultante da primeira passagem (com a primeira faixa de legendas multiplexadas na faixa 0) e a legenda 2, gravando-a em uma faixa diferente da anterior - digamos, na faixa 1 (opção "-s 1").


Última alteração: 13/06/2006 às 13:09, por: flavio