Algum tempo atrás criei um script, em texto, para converter vídeos(diversos formatos) para rodar em celular. Mas depois fiz umas adaptações e o script passou a converter vários tipos de arquivos de vídeos para um tamanho e qualidade(som e imagem) especificada. O script é bem simples mas funciona muito bem.
Cheguei a iniciar uma interface gráfica (GUI) para o script em kdialog, mas não cheguei terminar. Caso alguém queira dar continuidade, posso disponibilizar o fonte.
Formatos testados: 3gp, asf, avi, mpg, mpeg, ogv, ogg, wmv, flv
*** NOVA VERSÃO DO SCRIPT ***, tanto para celular como para PC
#!/bin/bash # Simples script que converte qualquer arquivo de video # para o formato mp4, conpativel com a maioria dos celulares. # # Por Tales A. Mendonça // Contribuições de Luciano Martini e # Bruno Gonçalves do BigLinux # Última atualização - 24/1/2010 # ------------------------------------------------------- ## ALTERE APENAS AQUI # Caso não queira utilizar alguma opção abaixo, comente a linha com um # no início da linha. # Configurações do vídeo frame="15" # quantidade de frames por segundo. Use um valor entre 10 a 30, obtendo menos ou mais quantidade de quadros. | Para PC use de 23 a 25 q_crf="27" # Qualidade do vídeo. Máxima = 5, mínima = 50 | Para PC use de 20 a 25 q_subq="6" # Qualidade máxima = 8, mínima = 1 contraste="1.0" # Máxima = 2.0, mínima = -2.0 brilho="0.0" # Máxima = 1.0, mínima = -1.0 saturacao="1.0" # Máxima = 3.0, mínima = -3.0 resolucao="352:-3" # Rasolução do vídeo, mude apenas o primeiro valor, pois o "-3" atribui um valor automatico para não distorcer o vídeo. | Para PC, comente essa linha para pegar a resolução padrão do vídeo. # Configuração do som q_som="40" # Qualidate do som, mínimo = 15, máximo = 500 | Para PC use 45, 50 ou 55 que já ficará excelente. canal="channels=1:mode=3" # Força o áudio sair em mono. Para 2 canais use canal="channels=2" # ------------------------------------------------------- p="$1" converte_video() { p="$1" # Função para converter o vídeo gerando apenas um arquivo de vídeo "*.264" mencoder "$1" -ofps $2 -nosound -ovc x264 -x264encopts threads=auto:crf=$3:nocabac:subq=$4:frameref=5:level_idc=12:bframes=0:b_pyramid:weight_b:me=umh -of rawvideo -vf harddup,eq2=1:$5:$6:$7,scale=$8 -o "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".264 } converte_audio() { p="$1" # Função para converter o vídeo gerando apenas um arquivo de audio "*.aac" mencoder "$1" -ovc frameno -oac faac -faacopts mpeg=4:object=2:quality=$2 -srate 32000 -of rawaudio -af $3 -o "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".aac } # Verifica se o mencoder existe. if [ ! -e "/usr/bin/mencoder" ]; then echo " ***********************************************" echo " * ERRO: Você não possui o mencoder *" echo " * instalado, favor instalar. *" echo " * Saindo do script... *" echo " ***********************************************" sleep 2 exit 1 fi # Verifica se o MP4Box existe. if [ ! -e "/usr/bin/MP4Box" ]; then echo " ***********************************************" echo " * ERRO: Você não possui o MP4Box *" echo " * instalado, favor instalar o pacote gpac. *" echo " * Saindo do script... *" echo " ***********************************************" sleep 2 exit 2 fi # Verifica se existe arquivo para ser convertido. if [ "$1" = "" ]; then clear echo "" echo " ***********************************************" echo " * ERRO: Arquivo não encontrado. Por favor, *" echo " * selecione um arquivo de vídeo. *" echo " ***********************************************" echo " * VEJA COMO UTILIZAR O SCRIPT *" echo " * *" echo " * $ sh converte-video-mp4.sh arquivo-de-video *" echo " ***********************************************" echo " * Saindo do script... *" echo " ***********************************************" echo "" sleep 2 exit 3 fi # Verifica se é um arquivo de vídeo case "$1" in *.3gp) ;; *.asf) ;; *.avi) ;; *.mpg) ;; *.mpeg) ;; *.ogv) ;; *.ogg) ;; *.wmv) ;; *.flv) ;; *) clear echo "" echo " ***********************************************" echo " * Este não é um arquivo de vídeo válido. *" echo " * Favor escolher um arquivo de vídeo. *" echo " ***********************************************" echo "" exit 4;; esac # Chama as funções clear echo "" echo " ***********************************************" echo " * Tudo certo, o vídeo *" echo " * '$1' " echo " * começará a ser convertido em 3 segundos... *" echo " ***********************************************" echo " ." sleep 1 echo " ." sleep 1 echo " ." sleep 1 echo "" # Remove vestígios thedir_is="$(echo -n "$p" | rev | cut -d'/' -f2- | rev)/" cd $thedir_is rm -f *.aac *.264 cd $OLDPWD # Cria o arquivo .264 clear echo "" echo " ***********************************************" echo " * Gerando o arquivo de vídeo, aguarde... *" echo " ***********************************************" echo "" converte_video "$p" $resp $frame $q_crf $q_subq $contraste $brilho $saturacao $resolucao && # Cria o arquivo .aac clear echo "" echo " ***********************************************" echo " * Gerando o arquivo de áudio, aguarde... *" echo " ***********************************************" echo "" converte_audio "$p" $resp $q_som $canal && # Cria o MP4 clear echo "" echo " ***********************************************" echo " * Gerando o arquivo MP4, aguarde... *" echo " ***********************************************" echo "" MP4Box -fps $frame -add "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".264 -add "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".aac -new "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".mp4 && # Remove vestígios thedir_is="$(echo -n "$p" | rev | cut -d'/' -f2- | rev)/" cd $thedir_is rm -f *.aac *.264 cd $OLDPWD
Para fzer o download da versão acima, clique aqui.
Para fazer a conversão de um vídeo, basta executar:
$ sh converte-video-mp4.sh arquivo-a-ser-convertido
ou
$ sh celular-mp4.sh arquivo-a-ser-convertido
Segue o código do script:
obs.: Altere apenas as opções de “Configurações do vídeo”
Código:
#!/bin/bash
# Simples script que converte qualquer arquivo de video
# para o formato mp4, conpativel com a maioria dos celulares.
#
# Por Tales A. Mendonça // Contribuições de Luciano Martini
# Última atualização - 15/10/2009
# -------------------------------------------------------
# Configurações do vídeo
q_som="128" # Qualidate do som
q_video="450 300" # Qualidade do vídeo
resolucao="352:-3" # Rasolução do vídeo, mude apenas o primeiro valor, pois o "-3" atribui um valor automatico para não distorcer o vídeo
frame="15" # quantidade de frames por segundo. Use um valor entre 10 a 30, obtendo menos ou mais quantidade de quadros
# -------------------------------------------------------
p="$1"
-x264encopts
converte() {
p="$1"
# Função para converter o arquivo
mencoder "$1" -of lavf -lavfopts format=mp4 -ovc xvid x264 -oac lavc -lavcopts acodec=libfaac:abitrate=$2 -xvidencopts bitrate=$3 -vf scale=$4,pp=linblenddeint -ofps $5 -srate 32000 -o "$(echo -n "$p" | rev | cut -d"." -f2- | rev)".mp4
}
# Verifica se o mencoder existe.
if [ ! -e "/usr/bin/mencoder" ]; then
echo " ********************************************"
echo " * ERRO: Você não possui o mencoder *"
echo " * instalado, favor instalar. *"
echo " * Saindo do script... *"
echo " ********************************************"
sleep 2
exit 1
fi
# Verifica se existe arquivo para ser convertido.
if [ "$1" = "" ]; then
clear
echo ""
echo " ********************************************"
echo " * ERRO: Arquivo não encontrado. Por favor, *"
echo " * selecione um arquivo de vídeo. *"
echo " ********************************************"
echo " * VEJA COMO UTILIZAR O SCRIPT *"
echo " * *"
echo " * $ sh celular-mp4.sh arquivo-de-video *"
echo " ********************************************"
echo " * Saindo do script... *"
echo " ********************************************"
echo ""
sleep 2
exit 2
fi
# Verifica se é um arquivo de vídeo
case "$1" in
*.3gp) ;; *.asf) ;; *.avi) ;; *.mpg) ;; *.mpeg) ;; *.ogv) ;; *.ogg) ;; *.wmv) ;; *.flv) ;;
*)
clear
echo ""
echo " ********************************************"
echo " * Este não é um arquivo de vídeo válido. *"
echo " * Favor escolher um arquivo de vídeo. *"
echo " ********************************************"
echo ""
exit 3;;
esac
# Chama a função
clear
echo ""
echo " ********************************************"
echo " * Tudo certo, o vídeo *"
echo " * '$1' "
echo " * começará a ser convertido em 5 segundos..*"
echo " ********************************************"
echo " ."
sleep 1
echo " ."
sleep 1
echo " ."
sleep 1
echo " ."
sleep 1
echo " ."
sleep 1
converte "$p" $resp $q_som $q_video $resolucao $frame
Clique aqui para baixar o script – v20-1-2010
Eu até faria um, teste se conseguisse enxergar o código…azul em fundo preto ??? Fala sério mermão. 🙂
José Vitor, você pode baixar o fonte clicando aqui…
http://www.talesam.org/scripts/celular-mp4.tar.bz2
Essa cor não é muito boa, mas é a tag do
, vou ver se troco a cor.
Abraços!
ola bom dia gostaria de saber como que uso este programa que vc criou e se nao existe um pluguim que adicionado ao firefox ja nao baixa noi formato para celular gosto muito do linux mas ainda nao sei mexer se vc puder me ajudar te agradesso pela sua atemçao agradesso se vc me mandar a resposta en meu email muito obrigado antecipado
Por que ao invés de usar a lavc para chamar o faac você já não usa diretamente o próprio faac?
de
-oac lavc -lavcopts acodec=libfaac:abitrate=$2
para
-oac faac −faacopts br=$2
E a linha
scale=$4,pp=linblenddeint
precisa ser alterada. Para uma melhor qualidade, você deve desinterlaçar primeiro o vídeo e depois redimensionar
pp=linblenddeint,scale=$4
E se o vídeo não for interlaçado? Daí ficará ruim, pois o filtro pp=linblenddeint irá prejudicar a qualidade desnecessariamente.
Adao, muito obrigado, assim que tiver um tempinho irei fazer as modificações.
Abraços!!
Rpz ótimo o script, toda vida eu tinha que ir no windows para fazer a conversão… agora não preciso mais 🙂
Deixa o Azul, eu adoro o azul e, brigadão pelos scripts, pois se amo o Linux é justamente pelos scripts. Estou até pensando em faer um site com todos scripts que eu encontrar na net. Claro com os devidos créditos.
buy stromectol uk cialis a que edad
Miyakawa M, Sugimoto K, Ohe Y, et al Pharmacokinetics of cis dichlorodiammine platinum II in patients undergoing hemodialysis propeciahelp labetalol differin gel 30g australia This is a new level of low for the New York Police Department
js加密 hello my website is js加密
parapian hello my website is parapian
her face hello my website is her face
gbo88 slot hello my website is gbo88 slot
dikuasai pada hello my website is dikuasai pada
anime grancrest hello my website is anime grancrest
widodari denny hello my website is widodari denny
room gacor hello my website is room gacor
ff winterland hello my website is ff winterland
Areola, This is a good website Areola
Porn, This is a good website Porn
Urethra, This is a good website Urethra
Perineum, This is a good website Perineum
Phallus, This is a good website Phallus
NSFW, This is a good website NSFW
Vulva, This is a good website Vulva
viagra, This is a good website viagra
Penis, This is a good website Penis
Your point of view caught my eye and was very interesting. Thanks. I have a question for you. https://accounts.binance.com/id/register-person?ref=GJY4VW8W
Your article helped me a lot, is there any more related content? Thanks! https://accounts.binance.com/kz/register?ref=RQUR4BEO