MKVMerge menambahkan subtitle .srt dalam batch

0

Saya mencari beberapa perintah / skrip untuk memindai folder yang ditunjuk, menggabungkan file srt (nama yang sama dengan video) dengan file avi / mp4 / mkv untuk mendapatkan file mkv, dan kemudian menghapus file asli (video DAN subtitle).

Sekarang saya memiliki kode ini (bukan milik saya, dari beberapa penulis yang saya kombinasikan):

@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.
        )
    )
)

Jenis pekerjaan apa, tapi saya punya beberapa masalah.
The /Rparameter tidak bekerja, tidak tahu mengapa, tapi ketika saya tempatkan dalam folder dengan subfolder hanya memindai file srt di dalamnya dan saya mendapatkan "Tidak bisa membuka" kesalahan. (Kesalahan ini juga muncul untuk file dalam satu folder tetapi pada akhirnya itu melakukan apa yang saya butuhkan.)

Adakah cara untuk memperbaiki masalah saya?

Michal Masár
sumber
Mungkin perlu menggunakan FOR /F "TOKENS=*" %%A INlingkaran menggunakan ('DIR /A-D /B /S "C:\Root"')dan kemudian menggunakan output dari itu dengan beberapa logika untuk memilih dari .mp4, .avidan .mkvfile dengan DOperintah. Menggunakan sesuatu seperti IF [%%~XA]==[.mkv], dll. Dan kemudian kirim untuk melakukan mkvmerge.exeoperasi dari sana. Dengan beberapa pengujian Anda dapat menyelesaikan ini jadi mulai bekerja dan ping saya kembali jika Anda ingin jawaban yang menjelaskan tetapi mengambil bacokan itu dengan ide cepat.
Pimp Juice,

Jawaban:

0

ini adalah bagaimana Anda harus menambahkan subtitle:

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
gamer0
sumber