Testando um script bash para converter rmvb para mp4.
#!/usr/bin/env bash
#############################
# Titulo: conv_lt_rmvb_2_mp4.sh
# Autor: arceu_valenti_1000%
# Versão: 0.0
# Email:
# Site:
# Data: 15-04-2020_09:35:04
# Distro: GNU/Linux
# Exemplo de uso:
# Objetivo:
# Variaveis:
# TODO - indica uma tarefa a ser feita
# FIXME - indica um bug conhecido que precisa ser arrumado
# XXX - notícia, chama a atenção
#############################
function rmvb2mp4(){
clear
# ------------------------- #
# SOBREESCREVE METADATA 1
#echo "*** SOBREESCREVE METADATA 1 ***"
#for i in *.rmvb; do
# exiftool "$i" --tags all: # Não
#done
# ------------------------- #
# AJUSTA TITULO 1
echo "*** AJUSTA TITULO 1 ***"
for f in *.rmvb; do
ffmpeg -i "$f" -e info -s title="${f::-4}"
sleep 2
done
# ------------------------- #
# CONVERTE DE RMVB PARA MP4 SOBRESCREVE METADATA
echo "*** CONVERTE DE RMVB PARA MP4 SOBRESCREVE METADATA ***"
# for f in *.rmvb; do ffmpeg -i "$f" -map_metadata -1 -c:v copy -c:a copy -map 0 "${f%.*}.mp4"; done # NAO
# for f in *.rmvb; do ffmpeg -i "$f" -c:a copy "${f%.*}.mp4"; done # NAO
# Loop for simplificado:
# for %%G in (*.rmvb) do ffmpeg -i "%%~G" -c:v h264 -c:a aac "%%~nG.mp4" # SIM
# Este converte h264 video e aac audio. Estes codecs parecem ser
# bem comuns hoje em dia.
# O padrão do vídeo é CRF 23, enquanto o áudio deve ter 128k.
# Isso deve oferecer qualidade razoável em talvez um décimo da taxa de bits
# mostrado na imagem de 9300k, talvez abaixo de 1000k.
# ------------------------- #
for f in *.rmvb; do
ffmpeg -i "$f" -c:v h264 -c:a aac "${f%.*}.mp4"
done
# TRABALHO PESADO ESTA CONVERSÃO
# Oneliner?
# for f in *.rmvb; do ffmpeg -i "$f" -c:v h264 -c:a aac "${f%.*}.mp4"; done
# ------------------------- #
#for f in *.rmvb; do
# ffmpeg -i "$f" -map_metadata -1 -c:v copy -c:a copy "${f%.*}.mp4"
# sleep 3
# ls -ltF | head
#done
# ONELINER?
# for f in *.rmvb; do ffmpeg -i "$f" -map_metadata -1 -c:v copy -c:a copy "${f%.}.mp4"; sleep 3; ls -ltF | head; done
# for f in *.rmvb; do ffmpeg -i "$f" -c:a copy "${f%.}.mp4"
# ------------------------- #
# QUEBRA DE LINHA
# for f in *.rmvb; do ffmpeg -i "$f" \
# -map_metadata -1 -c:v copy \
# -c:a copy "${f%.}.mp4"; \
# sleep 3; ls -ltF | head; \
# done
# ------------------------- #
# DELETA RMVB
for file in *.mp4; do
ls -lt | head
read -p "Sair: Ctrl+c. Deletar rmvb? Para isto, tecle Enter : "
rm -f "$file"
done
# ------------------------- #
# SOBREESCREVE METADATA 2
echo "*** SOBREESCREVE METADATA 2 ***"
for i in *.mp4; do
exiftool "$i" --tags all:
done
# ------------------------- #
# AJUSTA TITULO 2
echo "*** AJUSTA TITULO 2 ***"
for f in *.mp4; do
ffmpeg -i "$f" -e info -s title="${f::-4}"
sleep 2
done
# ------------------------- #
# EXIBE METADATA
echo "*** EXIBE METADATA ***"
for f in *.mp4; do
exiftool "$f"
done
# ------------------------- #
echo "Feito!"
}
rmvb2mp4
# NOTAS:
# ffmpeg -i input.mp4 -map_metadata -1 -c:v copy -c:a copy output.mp4
# fim do script