Conversão de vídeo escalonada ( batch ) em diferentes formatos

Publicado por andre uebe em 10/12/2014

[ Hits: 4.089 ]

 


Conversão de vídeo escalonada ( batch ) em diferentes formatos



Dia deste estava com vários arquivos de vídeo no formato .MOV (um formato de vídeo gerado pelo iOS que se tem uma compactação é a pior que eu já vi :p ).

Daí que resolvi converter estes enormes arquivos em algo mais compacto como, por exemplo xvid, mp4 etc.

Utilizei uma pequena rotina em shell script que me facilitou o trabalho de evitar fazer a conversão um a um, permitindo que todos os arquivos .MOV de um diretório fossem automaticamente convertidos.

Comando (a ser digitado no terminal):

for f in *.MOV; do ffmpeg -i "$f" -s 960x540 -qscale 0 -vcodec msmpeg4v2 -acodec libmp3lame "${f%.avi}.avi"; done

Lógica de funcionamento:
  • Execute enquanto a condição for verdadeira (inicia o loop se condição = verdadeiro)
  • Processe a tarefa
  • Volta ao início (fecha o loop e volta ao início)

"Debulhando" o comando:

* Inicia o loop se condição for verdadeira

for f in *.MOV

Onde:
  • Verifica cada arquivo da pasta;
  • Se POSSUIR a extensão MOV, grava o nome do arquivo na variável f e prossegue para a etapa seguinte;
  • Se NÃO POSSUIR a extensão MOV, ignora o arquivo e passa para a mesma verificação no arquivo seguinte.

* Processa a tarefa

do ffmpeg -i "$f" -s 960x540 -qscale 0 -vcodec msmpeg4v2 -acodec libmp3lame "${f%.avi}.avi"

Sendo:
  • do ffmpeg --> comando de conversão;
  • -i "$f" --> Substitui esta parte pelo nome do arquivo;
  • -s 960x540 -qscale 0 -vcodec msmpeg4v2 -acodec libmp3lame --> Configurações de conversão do ffmpeg. Estas configurações podem variar dependendo do formato de video desejado, codec utlizado etc;
  • "${f%.avi}.avi" --> Cria o nome do arquivo convertido aproveitando o nome original guardado na variável f e incluindo a extensão avi (que pode ser outra dependendo do tipo de formato de arquivo gerado - mp4, ogv etc).

* Volta ao início

done

Outras dicas deste autor

Resolvendo bug do Flash Player 10 no Mozilla

Configurando a placa de vídeo ATI Radeon HD 2400 XT no Ubuntu e Debian

Criando fotos com efeito "Olho-de-Peixe" no GIMP

Legendas no Avidemux

LibreOffice - Comparando Alterações em Documentos

Leitura recomendada

Comunicação entre aplicativos com o qdbus no KDE 4

Ordenando strings em shell script

basename - Inserindo ponto separador de milhar em expressão numérica

Quantos comandos digitei nesse terminal?

Clonar HDs em máquinas Windows 7 via servidor openSUSE

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts