Спасибо, это полезно. Сам я пробую HandBrake — его в той же статье посоветовали. У него уже есть готовые пресеты, так что можно конвертить одной кнопкой.
Субтитры пропали. Почему?Потому что -vf subtitles открывает файл субтитров с начала и не знает о перемотке (а в первых секундах надписей не оказалось, они бы прояснили ошибку). Узнает, если добавить -copyts. Но тогда плеер будет показывать, что видео проигрывается не с 00:00, а с 03:16. Это исправляется магией - таким же -ss к выходным аргументам https://stackoverflow.com/a/59576487
Это потому что у меня так и не получилось указать нормальный путь до субтитров.-vf требует линуксового экранирования как минимум для : \ ] [. Легко автоматически преобразовать не получится. -vf "subtitles=С:\folder\[1080p x264].mkv" - нет -vf "subtitles=С:/folder/[1080p x264].mkv" - уже лучше -vf "subtitles=С\\:/folder/\[1080p x264\].mkv" - почему-то да -vf "subtitles=С\\:\\\\folder\\\\\[1080p x264\].mkv" - к сожалению, да Но можно заранее переместиться в батнике в папку с этим файлом. Субтитры можно брать из видеофайла https://ffmpeg.org/ffmpeg-filters.html#subtitles-1
-s 640x480Это 4:3. Которое за счёт метаданных показывается как 16:9. Кодировать с неквадратным пикселем плохо. Тебе нужно -vf "...,scale=-2:480".
:: Извлекаем видео без аудиоВ таком варианте оно лишний раз перекодируется. Нужен -c copy или -c:v copy. Хотя тогда вырежет менее точно. Можно перекодировать, но без потерь (-crf 0). Останутся субтитры и шрифты, есть есть. Можно делать -map 0:v:0 вместо -an. Ещё если переместить коммент в конец блока, будет ошибка. :: - хак, который плохо дружит со скобками, лучше официальный rem.
-movflags +faststartНужен при кодировании. Только в последнем вызове ffmpeg.
-filter:v fps=23.976Это для прореживания кадров. Для 60fps, например.
В целом получается путь страданий. Надо видеть, какой кусок вырезать, есть вариант использовать Vapoursynth/Avisynth вместе с ffmpeg ради этого.
Vapoursynth/AvisynthВ них же можно накладывать субтитры. Легко автоматически преобразовать не получится.Хотя нет, это просто: https://pastebin.com/T7uhPJnX
Спасибо за конструктив! Приму к сведению и попробую в ближайшее время.
Потому что -vf subtitles открывает файл субтитров с начала и не знает о перемоткеДа, поэтому мне пришлось сначала вырезать субтитры из определенного отрезка. Работы в 2 раза больше, но зато есть возможность отредактировать сабы при необходимости, вырезав ненужный кусок.
-s 640x480. Это 4:3Ох, ещё раз спасибо! Набивал от руки и не заметил проблемы, хотел конечно же 16:9.
Спасибо, это полезно.
Сам я пробую HandBrake — его в той же статье посоветовали.
У него уже есть готовые пресеты, так что можно конвертить одной кнопкой.
Благодарю! Да, мне ночью на него кидал кто-то ссылку. Посмотрю вечером что она предлагает
Помню у меня Мама зашла в комнату, а там в одном из моментов были маты , диск тут же полетел разломанным в мусорку))😂
Субтитры пропали. Почему?Потому что -vf subtitles открывает файл субтитров с начала и не знает о перемотке (а в первых секундах надписей не оказалось, они бы прояснили ошибку). Узнает, если добавить -copyts. Но тогда плеер будет показывать, что видео проигрывается не с 00:00, а с 03:16. Это исправляется магией - таким же -ss к выходным аргументам https://stackoverflow.com/a/59576487
Это потому что у меня так и не получилось указать нормальный путь до субтитров.-vf требует линуксового экранирования как минимум для : \ ] [. Легко автоматически преобразовать не получится.
-vf "subtitles=С:\folder\[1080p x264].mkv" - нет
-vf "subtitles=С:/folder/[1080p x264].mkv" - уже лучше
-vf "subtitles=С\\:/folder/\[1080p x264\].mkv" - почему-то да
-vf "subtitles=С\\:\\\\folder\\\\\[1080p x264\].mkv" - к сожалению, да
Но можно заранее переместиться в батнике в папку с этим файлом. Субтитры можно брать из видеофайла https://ffmpeg.org/ffmpeg-filters.html#subtitles-1
-s 640x480Это 4:3. Которое за счёт метаданных показывается как 16:9. Кодировать с неквадратным пикселем плохо. Тебе нужно -vf "...,scale=-2:480".
:: Извлекаем видео без аудиоВ таком варианте оно лишний раз перекодируется. Нужен -c copy или -c:v copy. Хотя тогда вырежет менее точно. Можно перекодировать, но без потерь (-crf 0).
Останутся субтитры и шрифты, есть есть. Можно делать -map 0:v:0 вместо -an.
Ещё если переместить коммент в конец блока, будет ошибка. :: - хак, который плохо дружит со скобками, лучше официальный rem.
-movflags +faststartНужен при кодировании. Только в последнем вызове ffmpeg.
-filter:v fps=23.976Это для прореживания кадров. Для 60fps, например.
В целом получается путь страданий. Надо видеть, какой кусок вырезать, есть вариант использовать Vapoursynth/Avisynth вместе с ffmpeg ради этого.
Vapoursynth/AvisynthВ них же можно накладывать субтитры.
Легко автоматически преобразовать не получится.Хотя нет, это просто: https://pastebin.com/T7uhPJnX
Спасибо за конструктив! Приму к сведению и попробую в ближайшее время.
Потому что -vf subtitles открывает файл субтитров с начала и не знает о перемоткеДа, поэтому мне пришлось сначала вырезать субтитры из определенного отрезка. Работы в 2 раза больше, но зато есть возможность отредактировать сабы при необходимости, вырезав ненужный кусок.
-s 640x480. Это 4:3Ох, ещё раз спасибо! Набивал от руки и не заметил проблемы, хотел конечно же 16:9.
Комментарий недоступен