Я пытаюсь извлечь некоторые субтитры в виде srt
файла, поскольку в них есть несколько строк, которые я хотел бы отредактировать перед ремикшированием видео.
К сожалению, я столкнулся с ошибкой, которую я вообще не понимаю. Ошибка гласит: Subtitle encoding currently only possible from text to text or bitmap to bitmap
.
Субтитры, которые я пытаюсь извлечь, ffmpeg описывает как hdmv_pgs_subtitle
. Я не уверен, связано ли это с проблемой?
Команда, которую я выполняю, — ffmpeg -i "C:\Users\User\Desktop\Movie.mkv" -map 0:s:3 Movie.srt
.
Любая информация будет высоко оценена.
решение1
Субтитры HDMV PGS — это растровые субтитры, что по сути означает, что они представляют собой ряд изображений с прозрачностью, которые накладываются на видео при включении, а не текстовые файлы, как субтитры srt. Естественно, ffmpeg не сможет преобразовать один тип в другой, особенно из растрового типа в текстовый, поскольку для этого, вероятно, требуется возможность оптического распознавания символов.
Вы можете извлечь его как есть, указав -c:s copy
. (Не уверен, какое имя расширения следует использовать, но это в любом случае не имеет значения, поэтому вы можете использовать что-то вроде .pgs
или даже ничего.)
решение2
Вы используете суффикс .srt
(текстовый формат), поэтому он пытается преобразовать субтитры изображений в текстовые субтитры. Что он не может сделать в настоящее время.
Пытаться...
ffmpeg -i "C:\Users\User\Desktop\Movie.mkv" -map 0:s:3 -scodec copy Movie.sup
Это должно сработать. .sup
— это суффикс, который ffmpeg предпочитает для pgs
файлов.
Примечание: Я также добавил -scodec copy
к вашей команде. По какой-то причине ffmpeg иначе путается.