Conversor de vídeo com opção de legenda

Publicado por Sidnei Serra (última atualização em 06/04/2024)

[ Hits: 1.172 ]

Homepage: https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw

Download comlegenda.sh




Aqui mostro um pequeno script via Terminal para conversão de vídeo entre os formatos avi, mkv e mp4 com a opção de fixação de legenda, fácil de usar e, devido à sua simplicidade, não há um indicador de progressão a não ser o prompt ocupado do Terminal até o término da tarefa. Você pode baixar o script disponibilizado, coloque-o em uma pasta junto dos arquivos de vídeo e legenda desejados. Depois basta dar no Terminal, estando na pasta onde está o script, o comando "./comlegenda.sh" e seguir as instruções. O tempo de conversão depende da potência da máquina, uma máquina mediana converte um vídeo de 2 horas em mais ou menos 15 minutos.

Há a necessidade de ter instalado o ffmpeg.

  



Esconder código-fonte

#!/bin/bash
#Script criado por Sidnei Serra - velox256scs@gmail.com

# Função para converter o vídeo para o formato escolhido
function converter_video() {
    # Parâmetros
    video="$1"
    formato="$2"
    legenda="$3"

    # Nome do arquivo de saída
    saida="${video%.*}.${formato}"

    # Verifica se o arquivo de vídeo existe
    if [ ! -f "$video" ]; then
        echo "O arquivo '$video' não existe."
        exit 1
    fi

    # Verifica se o ffmpeg está instalado
    if ! command -v ffmpeg >/dev/null 2>&1; then
        echo "O programa 'ffmpeg' não está instalado. Por favor, instale-o."
        exit 1
    fi

    # Comando base de conversão
    comando="ffmpeg -i '$video'"

    # Verifica se foi fornecida uma legenda
    if [ -f "$legenda" ]; then
        comando+=" -vf \"subtitles='$legenda'\""
    fi

    # Executa a conversão
    comando+=" '$saida' >/dev/null 2>&1"

    # Executa o comando de conversão
    eval "$comando"

    # Verifica o código de saída do ffmpeg
    if [ $? -eq 0 ]; then
        echo "Conversão concluída. O arquivo '$saida' foi criado."
    else
        echo "Ocorreu um erro durante a conversão."
    fi
}

# Menu de escolha do formato
echo "Selecione o formato de saída:"
echo "1. MP4"
echo "2. AVI"
echo "3. MKV"
read -p "Opção: " escolha

# Verifica a opção escolhida
case $escolha in
    1) formato="mp4";;
    2) formato="avi";;
    3) formato="mkv";;
    *) echo "Opção inválida."; exit 1;;
esac

# Solicita o arquivo de vídeo para conversão
read -p "Digite o caminho completo do arquivo de vídeo: " video

# Verifica se o arquivo de vídeo foi selecionado
if [ ! -f "$video" ]; then
    echo "O arquivo '$video' não existe."
    exit 1
fi

# Solicita o caminho completo da legenda (opcional)
read -p "Digite o caminho completo da legenda (ou deixe em branco): " legenda

# Executa a função de conversão de vídeo
converter_video "$video" "$formato" "$legenda"

Scripts recomendados

Baixar Naruto Shippuden

Relógio em tempo real no terminal

Script shell para automatizar downloads do MegaUpload

script para desligar o pc com hora marcada

Limpar arquivos da lixeira do Samba


  

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