FFmpeg: различия между версиями
Владимир (обсуждение | вклад) Новая страница: «Изучаю FFmpeg! == DVD == Попался мне сборник дисков сериала Андромеда. У данного диска очень ст...» |
Владимир (обсуждение | вклад) м →FFmpeg |
||
| (не показана 1 промежуточная версия этого же участника) | |||
| Строка 30: | Строка 30: | ||
В общем продолжать извлекать я буду ей. | В общем продолжать извлекать я буду ей. | ||
[https://www.makemkv.com/download/ Скачать тут] | |||
----Мы имеем Demux с DVD. Тепепрь нужно понять какой тип телесинка в этом видео. | ----Мы имеем Demux с DVD. Тепепрь нужно понять какой тип телесинка в этом видео. | ||
| Строка 99: | Строка 101: | ||
.\ffmpeg.exe -i INPUT -vf "dejudder,fps=30000/1001,fieldmatch=order=tff:combmatch=full,yadif=deint=interlaced,decimate,setsar=1:1" -c:v libx264 -preset faster -qp 0 -r 24000/1001 -an -sn OUTPUT | .\ffmpeg.exe -i INPUT -vf "dejudder,fps=30000/1001,fieldmatch=order=tff:combmatch=full,yadif=deint=interlaced,decimate,setsar=1:1" -c:v libx264 -preset faster -qp 0 -r 24000/1001 -an -sn OUTPUT | ||
'''setsar=1:1''' - нужно чтобы соотношение сторон устанвилось равным разрешению | '''setsar=1:1''' - нужно чтобы соотношение сторон устанвилось равным разрешению | ||
---- | ---- | ||
=== Axiom === | |||
[https://github.com/MattMcManis/Axiom ГИТХАБ] | |||
Гуй для FFmpeg | |||
Позволяет сгенерить код. | |||
Не способен сделать сложные фильтры которые описаны выше. | |||
Текущая версия от 16:34, 24 июля 2022
Изучаю FFmpeg!
DVD
Попался мне сборник дисков сериала Андромеда.
У данного диска очень странная структура. Раньше я всегда мог закинуть папку с диском в свою любимую сфтину XviD4PSP, и сделать всё что мне нужно, деинтерлейсинг, изменить частоту кадров, или вообще ничего не изменять, чтобы закинуть в другой софт. Но именно с этими дисками ничего не вышло. XviD4PSP - ничего не может сделать, любой запуск процесса приводит к ошибке.
Превое дейстиве которое попытался слелать, найти прогрмму для распаковки DVD.
PgcDemux
Может делать как раз то что требуется.
Даёшь ей INFфал, получаешь файл для демуксирования.
В общем извлек несколько дисков.
Выходной формат - M2V
Выяснилось что длинна видео изменилась.
И в итоге получается очень странная особенность. В оригинале у диска NTSC частота кадров 29.970, а ввидео в реальности частота совсем не такая, в пределах 24 - 25 кадров.
Выясняется, что существует некий телесинк (telecined) - когда 24 или 25 кадров преобразуют в 29.970.
И способов получения такого видео очень много, каждая студия делает это посвоему.
MakeMKV
Слудующая програма для демукса DVD.
Она вытаскивает в файл mkv и единсвеная назнаяает чатоту кадров 29.970, также видит субтитры.
В общем продолжать извлекать я буду ей.
Мы имеем Demux с DVD. Тепепрь нужно понять какой тип телесинка в этом видео.
## Так же я сделал попытку обработать кадры в чистом виде, получив видео с неверной длинной. Расчитал скрость кадров, пересобрал такой результат. Длинная сошлась, но со звуком это не дружит. Так как плотность кадров у этого видео не равномерная.
Основную информацию я получил на этом форме - Тут человек рассказывает о том что есть множетсво видов телесинка. Даются разлиные команды, для разных вариантов. Но к сожалению это не дало результатов.
Далее методом проб и ошибк была собрана команда которя подходит к этому видео:
dejudder,fps=30000/1001,fieldmatch=order=tff:combmatch=full,yadif=deint=interlaced,decimate
В данном видео как мимниму 3 вида проблемм.
Есть некое dejudder - как я понял в моментах с интерлейсом имеются как раз моменты с дублированием кадров.
Плсле чего кадры которые найдены фильром fieldmatch как интлейсные - чистятся фильтром yadif.
И после всех этих операций созданые дубликаты удаляются фильром decimate.
Есть множетсво проблем, напимер с фильтром yadif, если его применить к адрам где нет интелейса, то появляется легкое размытие - потеря информации.
Данная команда, вычишает видо и подгоняет к нужной частоте кадров.
Собрал данную команду я читая информацию о филтрах, перечил их все:
В информации по fieldmatch описан случай интеграцией с фильтром yadif.
fieldmatch=order=tff:combmatch=full,yadif=deint=interlaced,decimate
Так же примером применения был:
dejudder,fps=30000/1001,fieldmatch,decimate
И я подумал а почему бы не попробовать между fieldmatch и decimate, вписать =order=tff:combmatch=full,yadif=deint=interlaced,
И на моё удивление это дало исчерпывающий результат. Чуть выше я попытался обяснить как это работает, но я не совсем понимаю как это рабоатет.
FFmpeg
Вот свписок нескольких команд с котороыми приходилось рабоать:
.\ffmpeg.exe
-i ## означает импорт файла
-c:v libx264 ## либа 264
-preset medium -qp 0 ## пресет перекодирования 264 lossles
-preset medium -b:v 10M -minrate 5M -maxrate 20M -bufsize 2M ## пресет кодирования 10000
-tune grain ## тип контента
-r 24000/1001 ## частота кадров
-pix_fmt yuv420p ## цветовое пространсвто
-aspect 16:9 ## соотношение строн
-an ## убрать звуковые дорожки
-sn ## убрать субтитры
-c:a copy ## копировать аудио
-c:s copy ## копитровать субтитры
Киманда с котоой приходится работать:
.\ffmpeg.exe -i INPUT -vf "dejudder,fps=30000/1001,fieldmatch=order=tff:combmatch=full,yadif=deint=interlaced,decimate,setsar=1:1" -c:v libx264 -preset faster -qp 0 -r 24000/1001 -an -sn OUTPUT
setsar=1:1 - нужно чтобы соотношение сторон устанвилось равным разрешению
Axiom
Гуй для FFmpeg
Позволяет сгенерить код.
Не способен сделать сложные фильтры которые описаны выше.