
Ich suche nach einem Befehl/Skript, um meinen angegebenen Ordner zu scannen, die SRT-Dateien (gleicher Name wie das Video) mit AVI-/MP4-/MKV-Dateien zusammenzuführen, um MKV-Dateien zu erhalten, und dann die Originaldateien (Video UND Untertitel) zu löschen.
Jetzt habe ich diesen Code (nicht von mir, sondern von einigen Autoren, die ich kombiniert habe):
@echo off
for /R %%A IN (*.mkv *.avi *.mp4) do (
"C:\Program Files\MKVToolNix\mkvmerge.exe" -o "%%~nxA_CZ.mkv" "%%~A" "%%~nA.srt"
if errorlevel 1 (
echo Warnings/errors generated during remuxing, original file not deleted
) else (
del /f "%%A" "%%~nA.srt"
echo Successfully remuxed to "%%~dpna (No Subs)%%~xa", original file deleted
)
echo.
)
)
)
Das funktioniert irgendwie, aber ich habe ein paar Probleme.
Der /R
Parameter funktioniert nicht, ich weiß nicht warum, aber wenn ich ihn in einen Ordner mit Unterordnern platziere, scannt er nur die darin enthaltenen SRT-Dateien und ich erhalte die Fehlermeldung „Kann nicht geöffnet werden“. (Dieser Fehler tritt auch bei Dateien in einem einzelnen Ordner auf, aber letztendlich tut es, was ich brauche.)
Irgendeine Idee, wie ich mein Problem lösen kann?
Antwort1
So sollten Sie Untertitel hinzufügen:
mkvmerge.exe -o "output.mkv" --audio-tracks 1 --no-subtitles --no-attachments
--no-chapters --language 0:und --default-track 0:yes --compression 0:none
--language 1:und --default-track 1:yes --compression 1:none "input.mkv"
--language 0:und --compression 0:none "input.srt" --track-order 0:0,0:1,1:0
--probe-range-percentage 0.50