#!/bin/bash

echo "==============================="
echo " CONVERSOR MP4/MKV → MKV"
echo "==============================="
echo

shopt -s nullglob

echo "📁 Pasta atual:"
pwd
echo

# listar filmes
VIDEOS=( *.mp4 *.mkv )
if [ ${#VIDEOS[@]} -eq 0 ]; then
  echo "❌ Nenhum ficheiro MP4 ou MKV encontrado."
  exit 1
fi

echo "🎬 Escolha o FILME:"
select VIDEO in "${VIDEOS[@]}"; do
  [ -n "$VIDEO" ] && break
done

# nome base do filme
BASENAME="${VIDEO%.*}"
FINAL="$BASENAME.mkv"

echo
# listar legendas
SUBS=( *.srt *.vtt )
if [ ${#SUBS[@]} -eq 0 ]; then
  echo "❌ Nenhuma legenda SRT ou VTT encontrada."
  exit 1
fi

echo "📝 Escolha a LEGENDA:"
select SUB in "${SUBS[@]}"; do
  [ -n "$SUB" ] && break
done

echo
echo "👉 Tipo de legenda:"
echo "1) EMBUTIDA (liga/desliga no VLC)"
echo "2) FIXA / QUEIMADA (sempre visível)"
read -p "Escolha (1 ou 2): " TIPO

VIDEO_ORIG="$VIDEO"
SUB_ORIG="$SUB"

# converter VTT para SRT se necessário
if [[ "$SUB" == *.vtt ]]; then
  echo "🔄 Convertendo VTT → SRT..."
  ffmpeg -i "$SUB" legenda_temp.srt
  SUB="legenda_temp.srt"
fi

echo
if [ "$TIPO" == "1" ]; then
  echo "🎬 Criando MKV com legenda EMBUTIDA..."
  ffmpeg -i "$VIDEO" -i "$SUB" \
  -c copy \
  -metadata:s:s:0 language=por \
  "$FINAL"

elif [ "$TIPO" == "2" ]; then
  echo "🔥 Criando MKV com legenda FIXA (queimada)..."
  ffmpeg -i "$VIDEO" \
  -vf "subtitles=$SUB:charenc=UTF-8" \
  -c:a copy \
  "$FINAL"
else
  echo "❌ Opção inválida"
  exit 1
fi

echo
read -p "🗑️ Apagar ficheiros usados (vídeo original e legenda)? [s/N]: " CONFIRMA

if [[ "$CONFIRMA" =~ ^[Ss]$ ]]; then
  echo "🧹 A apagar ficheiros antigos..."
  rm -f "$VIDEO_ORIG"
  rm -f "$SUB_ORIG"
  rm -f legenda_temp.srt
  echo "✅ Limpeza concluída."
else
  echo "ℹ️ Ficheiros originais mantidos."
fi

echo
echo "🎉 CONCLUÍDO!"
echo "📁 Ficheiro final:"
echo "$FINAL"

