如何使用 mkvmerge 通过批量混合仅提取强制字幕?

How to extract only forced subtitles with a batch muxing using mkvmerge?

有一个选项可以使用 windows 脚本和 mkvmerge.exe?

仅提取强制字幕

现在我使用这个脚本

for %%A IN (*.mkv) do (
"C:/Program Files/mkvtoolnix\mkvmerge.exe" -o "remux-%%~nA.mkv" -a ita "%%~A"
)

只提取意大利语音轨,但我找不到只提取强制字幕的方法。

谢谢

您可以试试这个,没有用意大利语音频测试,但应该可以。

@echo off&setlocal disabledelayedexpansion
set "path=%path%;C:\Program Files\mkvtoolnix"

for /f "delims=" %%a in ('dir /a-s /b *.mkv') do (
    for /f "tokens=3 delims=: " %%b in ('mkvmerge --identify-verbose "%%a" ^| findstr /c:language:ita ^| findstr /c:forced_track:1') do (
        echo Processing "%%~a" with forced track ID %%~b
        mkvmerge -o "remux-%%~na.mkv" -s %%~b -a ita "%%~a"
    )
)