FFmpeg: различия между версиями

Материал из wolfram
Перейти к навигации Перейти к поиску
Новая страница: «Изучаю FFmpeg! == DVD == Попался мне сборник дисков сериала Андромеда. У данного диска очень ст...»
 
Строка 30: Строка 30:


В общем продолжать извлекать я буду ей.
В общем продолжать извлекать я буду ей.
[https://www.makemkv.com/download/ Скачать тут]
----Мы имеем Demux с DVD. Тепепрь нужно понять какой тип телесинка в этом видео.
----Мы имеем Demux с DVD. Тепепрь нужно понять какой тип телесинка в этом видео.



Версия от 16:32, 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, если его применить к адрам где нет интелейса, то появляется легкое размытие - потеря информации.

Данная команда, вычишает видо и подгоняет к нужной частоте кадров.


Собрал данную команду я читая информацию о филтрах, перечил их все:

dejudder

fieldmatch

decimate

В информации по 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 - нужно чтобы соотношение сторон устанвилось равным разрешению


дополнительные ссылки: