Loading...
Error

Обработка и пересжатие видео

Ответить на тему
 
Автор Сообщение

televizionchik


48Mbps    14Mbps

Рейтинг:

Стаж: 7 лет 5 месяцев

Сообщений: 1571

Откуда: Russia

Россия


post 07-Май-2009 08:41

Quote Сообщить о нарушении

Данная инструкция поможет всем желающим делать качественные рипы и пересжать практически любое видео как душа пожелает.
Совет: хорошим тоном считается отдельная обработка аудио и видео с последующим сведением их вместе. Это избавит от множества проблем с рассинхронизацией звука и видео.
Инструменты
Весь процесс основан на работе с одной из двух программ-оболочек:
GordianKnot (для сжатия в XviD/DivX, x264 VfW)
MeGUI (для сжатия в XviD/DivX, x264 CLI)
Так же понадобятся кодеки:
Xvid
x264
Подготовка исходного материала
DVD (VOB), MPEG2 (MPG)
Этап №1 - Сброс содержимого DVD видео диска на жесткий диск.
DVD Decrypter
Программа "DVD Decrypter" уже довольно старая, но по-прежнему выполняет свою работу на должном уровне.
Иллюстрация
1. Выставляем "Mode->File".
Иллюстрация
2. Открываем "Tools->Settings".
Иллюстрация
3. Настраиваем опции закладки "File Mode" как показано на скриншоте. Опцию "Remove IFO Structur Protection" выбираем только в случае, если диск не копируется.
Иллюстрация
4. Выбираем привод, с которого будем копировать диск - "Source".
5. Выбираем папку, куда будем сохранять содержимое диска - "Destination".
6. Жмем кнопку обозначенную номером пять для запуска процесса копирования.
7. По окончании процесса в папке назначения будут находится файлы DVD с которых снята защита и готовые для дальнейшей работы.
DVDFab HD Decrypter
Здесь ничего нет.
Этап №2 - Подготовка проекта.
Воспользуемся программой DGIndex.
Иллюстрация
1. Загрузим в программу файлы фильма. Их можно определить по занимаемому ими пространству. Как правило они занимают почти все место от общего.
Иллюстрация
2. Теперь жмем кнопку [F5] запуская тем самым режим предпросмотра. Справа появится окно отображающее характеристики видео. Смотрим на параметр "Frame Rate".
Иллюстрация
Здесь возможны следующие варианты:
25.000 fps - видео представляет собой стандартную PAL последовательность. Ничего делать в этом случае не требуется.
20.000 fps - видео так же представляет собой стандартную PAL последовательность, но в меню "Video->Field Operation" у вас выбран пункт "Forced Film". Нужно выставить "Honor Pulldown Flags".
29.970 fps - видео представляет собой NTSC последовательность. В этом случае обращаем внимание на значение параметра "Video Type" - если оно равно "NTSC", то делать ничего больше не надо, если же значение равно "Film" или "Film 95%" или выше, то наша последовательность создана при помощи дублирования некоторых кадров, которые необходимо удалить - для этого выставим пункт меню "Video->Field Operation" в "Forced Film".
23.970 fps - видео представляет собой NTSC последовательность и в меню "Video->Field Operation" у вас выбран пункт "Forced Film". Оставлять все как есть можно только в том случае, если значение параметра "Video Type" равно "Film" или "Film 95%" или выше. В противном случае надо выставить "Honor Pulldown Flags".
3. Теперь перейдем к аудио.
Иллюстрация
Для того чтобы извлечь все звуковые дорожки нужно в пункте меню "Audio->Output Method" надо выставить "Demux All Tracks".
Чтобы извлечь дорожки выборочно выставляем "Audio->Output Method" в "Demux Tracks" и в "Track Number" отмечаем нужные дорожки.
Можно вообще не извлекать аудио дорожки, а сделать это потом. Для этого выставляем "Audio->Output Method" в "Disable".
4. Запускаем процесс создания проекта нажимая на кнопку [F4] и задаем название проекта.
5. После окончания процесса у нас будет проектный файл с расширением "*.d2v" и несколькими файлами с аналогичным началом названия - это аудиодорожки.

Рекомендую создавать проектный файл только вручную, тем более не использовать для этого оболочку MeGUI по следующим причинам:
Нет никакой возможности настроить DGIndex как требуется. В частности поменять режим "Field Operations", что очень важно.
Вырезать нужную часть видео. Очень часто бывает так, что вместе с фильмом в одном потоке идет заставка или доп. материалы, которые могут располагаться как в начале так и в конце. Поэтому это надо обязательно проверять.
Все что проигрывается через плейеры (AVI, MKV, MP4, WMV, ASF, ...)
Если видеофайл можно просмотреть, то его можно будет открыть при помощи DirectShow из библиотеки DirectX.
Для этого нам понадобится программа фрейм-сервер AviSynth.

Далее нужно создать файл-скрипт с расширением *.avs и следующим содержимым:

Код:

DirectShowSource("полный путь к файлу", fps=25.000, audio=false)
Разумеется нужно указать свой fps (скорость воспроизведения): 23.976, 25.000 и т.п.


Для AVI можно использовать еще такой скрипт:

Код:

AviSource("полный путь к файлу")
Для индексного файла DGIndex из комплекта DGMPGDec (исходник MPEG2):


Код:

LoadPlugin("полный путь к DGDecode.dll")
MPEG2Source("полный путь к файлу *.d2v")
Для индексного файла DGAVCIndex из комплекта DGAVCDec (исходник AVC/H.264 ):

Код:

LoadPlugin("полный путь к DGAVCDecode.dll")
AVCSource("полный путь к файлу *.dga")


Рекомендую всегда на вход программам сжатия подавать именно "*.avs" скрипт, т.к. это универсальный способ избавляющий от возможных проблем. Например, версии DGIndex в GrodianKnot и MeGUI не совместимы, т.е. "*.d2v" файл созданный в версии DGIndex от MeGUI не читает GordianKnot и наоборот.
Предобработка видео с помощью фильтров AviSynth
Описание
AviSynth (AVI Синтезатор) — это очень полезная программная утилита, основанная на языке скриптов и включающая фильтры для простых (и не очень простых) задач нелинейной обработки видео. Она создана для детального доступа к видеокадрам клипов с возможностью производства над ними ряда хитрых манипуляций (по некоторому сценарию), недостижимых в традиционных монтажных программах (типа VirtualDub или Adobe Premier).

Что делает AviSynth уникальным по интерфейсу, так это тот факт, что он не является самостоятельной программой, имеющей графический интерфейс и производящей выходные файлы. Вместо этого AviSynth действует как «посредник» между видеофайлами и программами обработки видео, то есть как фрейм-сервер (кадр-сервер, податчик кадров).

Работа происходит следующим образом. Во-первых, вы создаете простой текстовый документ, так называемый скрипт (файл с расширением *.AVS), со специальными командами. Эти команды ссылаются на одно или более входное видео и на фильтры, которые вы хотите к ним применить. Затем вы запускаете видеоприложение (программу), например, VirtualDub, и открываете в нем файл скрипта. Тут начинает действовать AviSynth. Он открывает видеоисточники, на которые вы ссылались в скрипте, применяет указанные фильтры, и посылает результат видеоприложению. Приложение, однако, не знает, что это AviSynth работает в фоне. Вместо этого приложение думает, что оно напрямую открывает некий уже отфильтрованный AVI файл, который располагается на вашем жестком диске.

Обычно выделяют пять главных причин, по которым пользователь приходит к AviSynth:
AviSynth позволяет вам объединить вместе любое число видеофайлов. Вы можете даже выборочно объединять определенные части видео или заменять звуковые дорожки.
Многие очень качественные фильтры видеообработки встроены в AviSynth (или в подключаемые модули-плагины). Например, фильтры для изменения размера, обрезки, подавления шума, повышения резкости, деинтерлейса.
AviSynth может открыть почти любой тип видео, включая разные MPEG и Quicktime MOV. Однако когда AviSynth поставляет программе видео, для нее это выглядит подобно стандартному (несжатому) AVI. Это позволяет вам открыть некоторые форматы видео в программах, которые их не поддерживают.
AviSynth генерирует видео, которое он посылает программе, порциями, на лету (в памяти). Следовательно, никаких временных или промежуточных видеофайлов на диске не создается (раньше проблема сохранения дискового пространства была более актуальной).
Вы можете использовать AviSynth, чтобы открывать файлы, большие, чем 2 GB в некоторых старых программах, которые не поддерживают файлов такого размера.
По устоявшемуся мнению важнейшими достоинствами Avisynth являются:
возможность работы в том цветовом формате, который наиболее подходит для входного или выходного видео, без лишних преобразований и с высокой скоростью.
произвольный доступ к любому кадру и полю (половине кадра в чересстрочном видео), с возможностью их разделения, прореживания, комбинирования, фильтрации, объединения, изменения частоты и т.п.
Фильтры Здесь еще ничего нет.
Загрузка проекта в GordianKnot и настройка параметров сжатия.
Собственно GordianKnot, встречаем:
Иллюстрация


1. Жмем на кнопку "Open" в нижнем левом углу и выбираем источник (*.d2v, *.avs, *.avi). Откроется окно предпросмотра.
Иллюстрация
Здесь сразу же надо выставить значение пункта меню "View->Resized".
2. Закладка "Resolution".
Иллюстрация
Input resolution - выставляется само.
Input Pixel Aspect Ratio - выставляем соотношение сторон: 16:9 или 4:3.
Crop (before resize!) - обрежем лишнее, например, черные полосы сверху. Резать минимально с шагом в 8 пикселей. Для удобства можно воспользоваться автоматической обрезкой - кнопка "Auto Crop". В заключение можно воспользоваться опцией "Smart Crop All" для того чтобы выравнять пропорции сторон до правильных. Картинка еще чуть-чуть подрежется.
Output Resolution - выставляем выходное разрешение кадра с учетом предыдущего пункта, чтоб не было лишних растяжений кадра. Так же следим за значением параметра "Aspect Error". Желательно, чтоб значение не превышало 2-3%. В противном случае искажения будут значимы и заметны.
3. Закладка "Bitrate".
Иллюстрация
Container - выбираем нужный контейнер выходного файла.
Codec - выбираем желаемый кодек.
Mode - выбираем режим "Calculate Average Bitrate" позволяет высчитывать битрейт фильма для получения заданного объема.
Duration - выставляется само при открытии проекта, не трогать!
Audio - выставляем битрейт аудио дорожек, если не знаете битрейт, то можно просто указать файл (кнопка "Select").
Files - можно учесть добавление каких либо дополнительных файлов.
Total Size - указываем желаемый размер выходного файла. Для удобства можно указать кратное объему CD (700MB).
Interleaving & AVI-Overhead - указываем дополнительные траты объема, связанные с микшированием аудио и видео.
Frames - здесь можно выставить нужное значение fps. Это удобно в случае, если у нас проект NTSC (fps = 29.970) и мы собираемся сжимать с fps равным 23.970 чтобы корреткно рассчитать битрейт и объем выходного файла.
Bits/(Pixel*Frame) - основной показатель будущего качества фильма. Для разных кодеков это значение варьируется следующим образом:
XviD / DivX - от 0.250 до 0.350
H.264 - от 0.150 до 0.200
4. В окне предпросмотра выбираем "File->Save & Encode"
5. Окно сохранения проекта.
Иллюстрация
Resize Filter - фильтр изменения разрешения картинки, от этого зависит скорость кодирования и четкость картинки. Лучшим является "Lanczos (sharp)".
Noise Filter - фильтр понижения шума на картинке. При сильном шуме качество картинки может сильно упасть в связи с тем, что кодек пытается сохранить каждую деталь и для него нет различий между шумом и полезной информацией. Использование - на свое усмотрение.
Field Operations - обработка кадра. Главная опция здесь - это "Field Deinterlace (no blend)"
. Применяется в случае, если у вас fps = 25.000 и картинка имеет четко выраженную "лесенку" на всем кадре (лучше смотреть на динамических сценах). В данном случае мы имеет нормальную чересстрочную картинку и правильно собрав поля можем собрать исходную картинку. Во всех других случаях (при неправильном интерлейсе) можно пользоваться любым из фильтров - все равно ничего хорошего не получится - результат будет посредственным. Помогут только эксперементы.
Иллюстрация
Compressibility Check - тест на сжимаемость. Полагаться на него полностью не советую. Иногда такое выдает, что глаза могут от удивления выпасть. Указываем бегунком процент материала для тестирования, кадры для которого будут выдраны наугад из всей видео последовательности. Кодек при тестировании работает в однопроходном режиме. Там же можно получить доступ к настройкам параметров кодека. После завершения теста результат появится в нижней части главного окна.
Иллюстрация
Первое поле - процент вашего показателя бит на пиксель по отношению к нужному (рассчитанному в тесте), второе - рассчитанный показатель бит на пиксель.
Edit - редактирование AviSynth скрипта сгенерированного автоматически GordianKnot.
Save - сохранение скрипта AviSynth.
Save & Encode - сохранение и постановка кодирования в список задач. При этом нужно зайти в настройки первого и второго прохода кодеков, а то GordianKnot не даст закончить проект.
6. На закладке "Encoder" жмем на кнопку "Start Encoding". Процесс пошел. По окончании получаем готовое видео.
Загрузка проекта в MeGUI и настройка параметров сжатия.

При первом запуске программа предложит обновить часть используемых утилит. В процессе обновления будет предложено импортировать профили сжатия видео и аудио. Рекомендую выбирать все. После обновления все готово к работе.
Иллюстрация


1. Создание проектного файла "*.d2v".
Первым делом нужно создать "*.d2v" проект при помощи входящей в комплект утилиты DGIndex. Как это сделать, можно прочитать выше.

2. Создание "*.avs" скрипта.
Через меню "Tools -> AviSynth Script Creator" запускаем утилиту для создания "*.avs" скрипта.
Иллюстрация
В открывшемся окне надо указать путь к файлу "*.d2v" проекта в поле "Video Input".
Иллюстрация
Сразу после этого откроется окно предпросмотра видео как оно есть, т.е. в исходном виде.
Иллюстрация
При необходимости нужно обрезать черные полосы. Так же можно воспользоваться автоматической обрезалкой - кнопка "Auto Crop".
Затем нужно выбрать выходное разрешение. Не рекомендуется ставить разрешение выше исходного, поскольку это пустая трата требуемого места. Достаточно указать желаемое разрешение по горизонтали и выставить опцию "Suggest Resolution" и высота будет выставлена автоматически.
Если очень хочется сохранить качество по максимуму, то можно пересжимать видео как оно есть, т.е. в анаморфированном виде. Посмотреть результат произведенных настроек можно по нажатию кнопки "Preview AVS Script".
Иллюстрация


3. Переходим на закладку "Filters". Здесь можно сделать предобработку фильтрами AviSynth.
Нажимаем кнопку "Analyze" и ждем окончания процесса. В случае, если перекодируемое видео является анимацией (мультфильм), включаем опцию "Source is Anime". Если по окончании анализа будет определено, что исходное видео ("Source type") имеет прогрессивную структуру ("Progressive"), то деинтерлейс не требуется. В противном случае нужно выбрать желаемый алгоритм деинтерлейса из доступных.

Существует два вида интерлейса, один нормальный, когда прогрессивная картинка сохранена в виде чересстрочных полей, другой - результат кривого сжатия, когда видео было сжато вместе с интерлейсом (это как погладить рубашку с пятном, потом фиг отстираешь). Первый случай лечится легко при помощи фильтра "Deinterlace (no blend)", т.е. достаточно собрать из разных полей картинку и только. Во втором случае сколько не старайся все равно результат будет посредственным. Можно пробовать все доступные фильтры и смотреть результат в окне предпросмотра. Описать эту часть четко очень сложно, поэтому не стану расписывать, все равно все случаи охватить не удастся.

Следующим на очереди фильтр изменения разрешения - "Resize Filter". В подавляющем числе случаев оптимальным алгоритмом будет "Lanczos". Он и стоит по умолчанию. Если исходное видео зашумлено, то имеет смысл включить шимоподавляющий фильтр. Он размоет картинку, немного понизив четкость, но увеличится сжимаемость видео. Тут главное - не усердствовать, практически всегда достаточно поставить шумодав на минимум.

Опция "MPEG2 Deblocking" пригодится, если на исходном материале заметны артефакты сжатия в виде прямоугольных фрагментов. Видео будет размыто и восприятие в целом станет лучше.
На вкладке "Edit" можно посмотреть готовый "*.avs" скрипт. Советую поиграться с настройками на предыдущей вкладке и посмотреть что и как меняется.

Теперь сохраняем скрипт кнопкой "Save". После этого путь к "*.avs" скрипту должен прописаться автоматически, если не снимали соответствующую галку в нижней части окна.

_________________
Всё хорошо по-настоящему, когда у всех всё хорошо!!!
Мне хорошо тогда, когда тебе хорошо!
СкрытProfile PM
Показать сообщения:    
Ответить на тему

Текущее время: 07-Дек 17:50

Часовой пояс: GMT + 3



 Сообщить о нарушении в теме 

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Проверка сайта