
単一のファイルに字幕を追加するには、次のコマンドを使用します。
mkvmerge.exe -o g:\movie01.mkv --default-track 0 --language 0:pl movie01.mkv movie01.srt
どこ:
movie01.mkv
ビデオファイルの名前です
movie01.srt
字幕ファイルの名前です(常にビデオファイルと同じになります)
g:\movie01.mkv
出力ファイル
ディレクトリ内のすべてのファイルに対して上記のコマンドを実行するにはどうすればよいですか?
答え1
このコマンドは、すべての mkv ファイルをループし、各ファイルに対してコマンドを実行します (ファイルに入れることをお勧めします.bat
)。コマンドは、mkv ファイルを含むディレクトリで実行する必要があります。
for %%A in (*.mkv) do if /i "%%~XA"==".mkv" (
c:\<path to mkvmerge>\mkvmerge.exe -o g:\"%%A" --default-track 0 --language 0:pl "%%A" "%%~nA.srt"
)
%%A
正確なファイル名と同じです。
%%~nA
ファイルタイプを除いたファイル名と同じです。
答え2
すべてのファイルに .mkv 拡張子が付いている場合は、次のようにします。
for /r %%video in (*.mkv) do mkvmerge.exe -o %%video --default-track 0 --language 0:pl %%video.srt
%%video
は、現在のフォルダー内の指定された拡張子を持つ各ファイルを識別する変数です。do
各ファイルに対してコマンドを実行した後、同じ変数を使用して srt ファイルを呼び出します。