Dicas: Colocar legendas SRT em ficheiro AVI já existente

[update: mais algumas dicas relativas ao mencoder, o formato matroska usando o mkvtoolnix-gui bem como o spumux para mpeg2; ainda não encontrei foi forma de fazer muxing de avi+srt para avi, isso é que dava jeito e como não necessitava de transcoding era quase instântaneo como no caso do MKV]

Infelizmente hardware de qualidade para ver todo o tipo de ficheiros num televisor, os chamados leitores de DVD de sala ou outros mais sofisticados como o PopCorn A110, ou são muito caros ou não possuem a capacidade de descodificar diversos codecs ou ler legendas srt entre outras como deve de ser.

Como tal por vezes é necessário pegar num ficheiro avi e nas legendas srt e juntar tudo num único ficheiro avi.

No fundo trata-se de queimar/embeber a legenda no próprio filme.

É possível e até muito melhor fazer isto num formato aberto como o matroska até porque este permite outro tipo de manipulação de legendas, mas como digo acima, assim perdia-se a possibilidade de usar od DVD’s de mesa baratuchos.

Em GNU/Linux tal como já por aqui escrevi existe software da linha de comando ao ambiente gráfico para efectuar de raíz este procedimento a quando de um backup ou ainda usando os dois ficheiros em separado e depois juntá-los.

Alguns exemplos são o fabulosos Handbrake em versão CLI e GUI, o mencoder e o seu front-end acidrip, o ogmrip, o dvd:rip entre outros.

Mas para este efeito vou descrever três formas, duas gráficas, usando o software livre devede e avidemux e uma a mais rápida e simples através do mencoder na linha de comando CLI.

1º Usando a linha de comandos/terminal e o encoder do MPlayer, o mencoder.

Já sabem que usando uma distro Debian ou Debian based como a sidux onde estou a escrever esta entrada, ou o Kubuntu/Ubuntu e linuxMint é tão simples instalar o software necessário quanto:

#apt-get update
#apt-get install mencoder avidemux devede

Após a instalação do software, para usar o mencoder e queimar uma legenda srt num ficheiro avi basta o seguinte comando:

$mencoder -o ficheiro_final.avi -sub legenda.srt -oac copy -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell=yes ficheiro_filme_original.avi

Como podem ver pela info abaixo estou a usar a qualidade excelente mpeg4-hq que o manual do mencoder dá como exemplo:

$man mencoder

 [mpeg4-hq]
       profile-desc=”HQ MPEG4 encoding”
       profile=mpeg4
       lavcopts=mbd=2:trell=yes:v4mv=yes

Mais info sobre o que acima escrevi encontra-se no manual do mencoder, tirando a parte à frente do lavcopts que trata da parte de optimização da qualidade do vídeo o restante é simples de perceber.

-o ->ficheiro de output
-sub -> indicação do ficheiro que contém a legenda srt
-oac copy -> dizemos ao mencoder para se limitar a copiar o som como está no ficheiro de entrada do avi inicial sem qualquer mudança, para além de poupar tempo também permite manter a qualidade inicial
-ovc lavc -> damos indicação ao mencoder que queremos usar a biblioteca lavc para executar a compressão de video usando o formato mpeg4

O resto são apenas optimizações de imagem.

Podemos ainda escolher a fonte, o tamanho e o enconding da mesma.
Por exemplo para colocar a fonte branca dentro de uma caixa cinzenta usamos os seguintes parâmatros:

-sub legenda.srt -sub-bg-alpha 150 -utf8

E para escolher uma nova fonte e o enconding podemos acrescentar:

-sub legenda.srt -sub-bg-alpha 150 -utf8 -subfont /usr/share/fonts/truetype/freefont/FreeSerif.ttf

Tudo isto pode ser configurado no ficheiro de config do mencoder que podemos criar como exemplifica o manual do mencoder, assim não precisamos de repetir comandos.

2º Usando o ambiente gráfico através do devede

Creio que as imagens são elucidativas e depois é experimentar e ver o que fica melhor e mais rápido.

devede-srt.avi

devede-srt.avi2

3º Em relação ao avidemux aqui ficam as imagens

avidemux-srt.avi

avidemux-srt.avi2

avidemux-srt.avi3

avidemux-srt.avi4

4º Usando as ferramentas gui do MKVToolnix para sem qualquer nova compressão (transcoding) apenas fazendo muxing, colocar num container MKV um ficheiro avi+srt.

MKVToolnix is a set of tools to create, alter and inspect Matroska files under Linux, other Unices and Windows. They do for Matroska what the OGMtools do for the OGM format and then some.

É de extrema facilidade passar um ficheiro de um container avi com legendas srt para um MKV infinitamente superior, para tal podemos usar a ferramenta mkvtoolnix-gui.
Basta apenas arrancar a ferramenta e escolher os dois ficheiros, e passados dois ou três minutos temos um novo ficheiro MKV com as legendas que podem ser activadas ou não🙂 pena é que os dvd’s de mesa baratos não leiam este formato.

mkvtoolnix-gui

Powered by ScribeFire.

10 Respostas

  1. À poucos dias usei o mencoder para fazer precisamente isto, fácil, rápido e eficaz.

    Aproveito pra deixar uma má notícia, pelos vistos a próxima versão do Debian vai trazer o mono (http://www.osnews.com/story/21660/Mono_Part_of_Debian_s_Default_Desktop_Install_) pergunto-me se todos os responsáveis pelas distribuições GNU/Linux andam a ficar burros😦

    • boas rui,

      sem dúvida é muito simples e eficaz.
      por acaso não sabes se dá para fazer muxing ou seja sem transcoding usando o ffmpeg ou mencoder?

      em relação à Debian e ao ms-novell-mono estive a ler no slashdot e a noticia não é noticia, ou seja a Debian já o trás a quando da instalação do gnome,mas não és nem obrigado a usá-lo nem a um nem a outro para além disso podes sempre substituir o tomboy pelo gnote.

      mas concordo que é uma estupidez andar a dar armas, fomentar tecnologia fechada, com patentes e royalties e que a microsoft controla a seu belo prazer.

      ab

      • Penso que não mas posso estar enganado, pelo menos não encontrei como fazê-lo. Entretanto encontrei o MP4Box (atenção às maiusculas) também fácil de usar e bastante rápido, o comando seria algo como:
        MP4Box -add video_original.mp4 -add legendas.srt -new video_final.mp4

        Obrigado pelo esclarecimento sobre o Debian. Parece-me que cada vez mais distribuições estão a optar por trazer o mono pré-instalado o que pode ver a ser muito mau num futuro caso a microsoft decida “atacar” o GNU/Linux, esperemos que não se venha a ter problemas deste tipo.

        Abraços

      • boas, obrigado pela dica.

        o problema é que usa o container mp4 e isso os leitores baratos de mesa não lhe tocam, creio que só avi.
        não encontro deb dele mas vou ver se o consigo compilar e ver no que dá!

        ab

  2. […] Mais Populares Beautiful_Women: Megan FoxDicas: Colocar legendas SRT em ficheiro AVI já existenteBeautiful Women – Jennifer MorrisonBeautiful Women – Anna Torv (Fringe)Fotos do encontro do grupo […]

  3. Boas:
    Tenho o avi e a legenda srt.
    Também há algum programa q embute as legendas que eu pretendo alterar tamanho e border , num avi no sistema windows vista ?

    Mt obrigado

    • não uso software proprietário como o da microsoft e nomeadamente esse.

      no entanto creio que poderás usar software livre para efectuar esse tipo de afinações, como por exemplo o mediacoder http://mediacoder.sourceforge.net/

      • Olá :
        encontrei um programa free , chamado AVIAddxsubs.
        Pode-se pôr as legendas no tamanho e fonte q se quer. Só que depois o programa converte o avi para divx. Demora 2 minutos e qq coisa.
        Se quisermos converter de novo para AVI teremos de usar um programa de conversão. Ontem experimentei
        com o Format Factory .

      • creio que o media coder faz isso e é software livre.
        http://mediacoder.sourceforge.net/

  4. […] Instalando o Gwibber e Choqok em sidux […]

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

%d bloggers like this: