Script shell para converter arquivos de vídeo MP4 ou WEBM para MP3 com miniatura

Olá, sou um inútil.
Ao converter diretamente de vídeo para arquivo de áudio com ffmpeg, a miniatura é perdida, então tentei escrever um script shell.
Apenas converte, depois extrai e combina a miniatura, apaga o que não é necessário e renomeia os arquivos.
#!/bin/bash
# Caminhos dos diretórios
input_dir=“/media/m”
output_dir=“/media/m/mp3”
# Cria o diretório de saída se não existir
mkdir -p “$output_dir”
# Especificação do formato *Atualmente, apenas conversão para mp3, mas apenas no caso de eu me sentir motivado a adicionar ramificações para outros formatos mais tarde...
in=“mp4”
out=“mp3”
# Aplicar a todos os arquivos no diretório
for file in “$input_dir”/*.${in}; do
# Especificar base
base=$(basename “$file” .${in})
# Especificar caminho do MP3
output=“${output_dir}/${base}.${out}”
# Especificar caminho da miniatura
thumbnail=“${output_dir}/${base}_thumbnail.jpg”
# Converter arquivo de vídeo para mp3
ffmpeg -i “$file” -vn -acodec libmp3lame -qscale:a 2 “$output”
# Extrair miniatura do arquivo de vídeo
if ffmpeg -i “$file” -an -vframes 1 -q:v 2 “$thumbnail” -y; then
echo “Thumbnail extracted for $base”
ffmpeg -i “$output” -i “$thumbnail” -map 0 -map 1 -c copy -id3v2_version 3 -metadata:s:v title=“Alb
um cover” -metadata:s:v comment=“Cover (front)” -y “${output_dir}/${base}_with_thumbnail.${out}”
rm “${output_dir}/${base}.${out}”
rm “${output_dir}/${base}_thumbnail.jpg”
mv “${output_dir}/${base}_with_thumbnail.${out}” “${output_dir}/${base}.${out}”
else
echo “No found for $base”
fi
done
Conceder permissão de execução
chmod +x convert.sh
Como estava conectado via SSH, faço com que ele execute em segundo plano mesmo que a sessão seja desconectada.
nohup ./convert.sh &
Fim.