Codificación de subtítulos usando mkvmerge de forma recursiva

Codificación de subtítulos usando mkvmerge de forma recursiva

Tengo 24 temporada 9, la carpeta tiene episodios y subtítulos en árabe. Quiero automatizar la codificación de los subtítulos usando un script. así parece

24.903.hdtv-lol.mp4y24.903.hdtv-lol_ar.srt

Hasta ahora, lo he estado haciendo manualmente usando mkvmerge-gui, selecciono Charset: ara (árabe), codificando el destino WINDOWS-1256:newfolder/S9E3.mkv

¿Cómo automatizar todo eso? Entonces, ¿buscará los subtítulos correspondientes al episodio y los codificará usando las opciones proporcionadas anteriormente?

Respuesta1

Puede marcar los archivos .mp4 disponibles y llamar a mkvmerge en ellos.

for f in *.mp4; do
    mkvmerge "$f" "${f%.*}_ar.srt" -o "${f%.*}.mkv"
done

No estoy seguro de si se necesita el juego de caracteres, pero hay un --sub-charset TID:character-setargumento. TID es el número de pista que supongo que es 0 o 1. Pruébelo sin primero, pero si no funciona, intente agregarlo --sub-charset 0:WINDOWS-1256al comando.

información relacionada