Я отправляю новую команду, которая упрощает вывод:
ffprobe -v 0 -select_streams s -show_entries stream=index:disposition=forced:stream_tags=language -of csv=nk=1:p=0 file.mkv | FINDSTR /C:"1,ita"
Вывод:
3,1, ita
"3" - это идентификатор дорожки, "1 "принудительный флаг", "ита" является языком отслеживания. Чтобы создать переменную, которая содержит только идентификатор дорожки (например, 3) для вставки в команду mkvmerge, я запустил эту команду:
FOR /F "delims=, tokens=1" %%# IN ('ffprobe -v 0 -select_streams s -show_entries stream=index:disposition=forced:stream_tags=language -of csv=nk=1:p=0 file.mkv ^| FINDSTR /C:"1,ita"') DO SET subid=%%#
Но ничего не происходит! Mkvmerge сообщает об этой ошибке: Ошибка: Invalid track ID or language code in '-s '.
Я действительно не знаю, где ошибка!