MEncoder - Criando Programa Gráfico Para Conversão
Você gosta do MEncoder? Porém, acha um problema ter que memorizar os comandos? Não seria melhor ter um Script que,
com dois ou três cliques, faz o trabalho para você? Aqui vamos fazer um Script e transformá-lo em um programa, com
direito a ícone e tudo mais... Meu alvo principal é um Script que converta vídeos e que sejam compatíveis com o sistema
do PS3.
com dois ou três cliques, faz o trabalho para você? Aqui vamos fazer um Script e transformá-lo em um programa, com
direito a ícone e tudo mais... Meu alvo principal é um Script que converta vídeos e que sejam compatíveis com o sistema
do PS3.
Parte 2: Configuração do sistema
Antes de começar a botar a mão na massa, vamos nos preparar instalando os componentes que talvez você não tenha no seu sistema e são
necessários.
Como cada distro tem a sua maneira de instalar programas, eu não vou entrar em detalhes de como instalar cada programa, mais isto não deve ser difícil com um: apt-get, yum, YaST, Synaptic, e o trio dinâmico: configure, make e make install...
Os programas que vamos usar são, além do MEncoder, MPlayer, Xvidcore, Zenity, LAME, Text2Wave e Play.
Sendo que os 3 últimos, podem ser opcionais; porém, eu descrevo como necessário, porque a edição do código não estaria em questão por um usuário comum, mas como estamos no VOL, e eu sei que existem usuários novatos e experientes, eu explico como fazer para anular os 3 últimos programas.
Agora, vamos ver se os programas estão com as bibliotecas necessárias, primeiro vamos testar o MEncoder, abra um terminal (console) e digite:
mencoder -ovc help
Você deve ter algo assim na tela:
Entre outros Codecs, eu tenho o 'lavc', que é o que estaremos usando neste artigo.
Veja um Codec como um programa ZIP que diminui o tamanho de um vídeo sem perder a qualidade do mesmo.
Como você pode ver, tenho os melhores, que são: 'Xvid', 'H.264' e 'Lavc', estes três fazem uma compressão como os filmes para iPod e Youtube HQ, criando uma alta definição com um arquivo bem pequeno.
Agora vamos checar o áudio, digite no terminal:
mencoder -oac help
Deve retornar:
Muito bem, destes Codecs, o que procuramos e o 'mp3lame', por algum motivo estranho, quando usamos o 'lavc' para processar o áudio, o PS3 mostra o vídeo, porem o áudio fica mudo; o que não acontece com o 'mp3lame', por isto vamos usá-lo.
Vejamos se sua biblioteca está bem instalada, testando Zenity, Text2wave e Play. Você não precisa fazer isso, se não quiser, só estou mostrando para os que não conhecem o uso básico destas aplicações.
Digite:
zenity --info --text "Ola, eu sou Linux"
Um Prompt com a mensagem: "Ola, eu sou Linux", deve aparecer, agora, vamos testar os três de uma vez (Text2wave, LAME e Play), digite:
echo "Hello, I am Linux" | text2wave -o /tmp/vol.wav
$ lame -V3 -b 128 /tmp/vol.wav /tmp/vol.mp3
$ play /tmp/vol.mp3
$ rm -f /tmp/vol.*
O resultado deve ser uma voz dizendo o que você escreveu.
Infelizmente, não existe ainda voz em português, por isso, meu programa vai falar Inglês. :)
Caso, qualquer um destes testes falharem, por favor, instale a aplicação ou a biblioteca que falhou, antes de prosseguir com este artigo.
Como cada distro tem a sua maneira de instalar programas, eu não vou entrar em detalhes de como instalar cada programa, mais isto não deve ser difícil com um: apt-get, yum, YaST, Synaptic, e o trio dinâmico: configure, make e make install...
Os programas que vamos usar são, além do MEncoder, MPlayer, Xvidcore, Zenity, LAME, Text2Wave e Play.
Sendo que os 3 últimos, podem ser opcionais; porém, eu descrevo como necessário, porque a edição do código não estaria em questão por um usuário comum, mas como estamos no VOL, e eu sei que existem usuários novatos e experientes, eu explico como fazer para anular os 3 últimos programas.
Agora, vamos ver se os programas estão com as bibliotecas necessárias, primeiro vamos testar o MEncoder, abra um terminal (console) e digite:
mencoder -ovc help
Você deve ter algo assim na tela:
MEncoder UNKNOWN-4.5.2 (C) 2000-2011 MPlayer Team
Available codecs:
copy - frame copy, without re-encoding. Doesn't work with filters.
frameno - special audio-only file for 3-pass encoding, see DOCS.
raw - uncompressed video. Use fourcc option to set format explicitly.
[cor da fonte vermelho] lavc - libavcodec codecs - best quality! [/cor da fonte vermelho]
vfw - VfW DLLs, read DOCS/HTML/en/encoding-guide.html.
qtvideo - QuickTime DLLs, currently only SVQ1/3 are supported.
libdv - DV encoding with libdv v0.9.5
xvid - XviD encoding
x264 - H.264 encoding
Entre outros Codecs, eu tenho o 'lavc', que é o que estaremos usando neste artigo.
Veja um Codec como um programa ZIP que diminui o tamanho de um vídeo sem perder a qualidade do mesmo.
Como você pode ver, tenho os melhores, que são: 'Xvid', 'H.264' e 'Lavc', estes três fazem uma compressão como os filmes para iPod e Youtube HQ, criando uma alta definição com um arquivo bem pequeno.
Agora vamos checar o áudio, digite no terminal:
mencoder -oac help
Deve retornar:
MEncoder UNKNOWN-4.5.2 (C) 2000-2011 MPlayer Team
Available codecs:
copy - frame copy, without re-encoding (useful for AC3)
pcm - uncompressed PCM audio
[cor da fonte vermelho] mp3lame - cbr/abr/vbr MP3 using libmp3lame [/cor da fonte vermelho]
lavc - FFmpeg audio encoder (MP2, AC3, ...)
twolame - Twolame MP2 audio encoder
faac - FAAC AAC audio encoder
Muito bem, destes Codecs, o que procuramos e o 'mp3lame', por algum motivo estranho, quando usamos o 'lavc' para processar o áudio, o PS3 mostra o vídeo, porem o áudio fica mudo; o que não acontece com o 'mp3lame', por isto vamos usá-lo.
Vejamos se sua biblioteca está bem instalada, testando Zenity, Text2wave e Play. Você não precisa fazer isso, se não quiser, só estou mostrando para os que não conhecem o uso básico destas aplicações.
Digite:
zenity --info --text "Ola, eu sou Linux"
Um Prompt com a mensagem: "Ola, eu sou Linux", deve aparecer, agora, vamos testar os três de uma vez (Text2wave, LAME e Play), digite:
echo "Hello, I am Linux" | text2wave -o /tmp/vol.wav
$ lame -V3 -b 128 /tmp/vol.wav /tmp/vol.mp3
$ play /tmp/vol.mp3
$ rm -f /tmp/vol.*
O resultado deve ser uma voz dizendo o que você escreveu.
Infelizmente, não existe ainda voz em português, por isso, meu programa vai falar Inglês. :)
Caso, qualquer um destes testes falharem, por favor, instale a aplicação ou a biblioteca que falhou, antes de prosseguir com este artigo.
Não vou tecer críticas pois o artigo é bem detalhado, mas gostaria de contribuir com algumas sugestões, que podem facilitar ou serem alternativas.
Já tive problemas com o mplayer e mencoder, assim como você, na questão de reconhecimento das dependências, especialmente com o Ubuntu.
O que pode fazer também é usar o ffmpeg no lugar do mencoder para as conversões, mas confesso não lembrar se tem todas as opções disponíveis do seu "Programa".
Outa opção é usar o flite ( http://www.speech.cs.cmu.edu/flite ) em substituição a tríade text2wave, lame e play, o que poderia ser feito nesse formato flite -t "Texto".
De resto está perfeito, Parabéns!!