1. Устанавливаем в настройках декодека XviD YV12 в "Output Colourspace":
2. В разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32 создаём строковый параметр vidc.yv12 со значением xvidvfw.dll: правый клик => New => String value:
3. Затем вновь правый клик по созданному параметру, Modify и прописываем xvidvfw.dll в строке "Value data". Должно быть так:
ОК и закрываем редактор реестра.
Или загрузите файл из данного поста, измените его расширение на *REG и запустите.
Имейте ввиду, что данная операция не даст вам возможность кодировать в YV12 - она лишь настроит систему для этого. При использовании любого фильтра VrtualDub-Mpeg2 произведёт перекодировку цвета в RGB.
3. Теперь запускаем VirtualDub-MPEG2. Меню "Video" – "Color Depth". Ставим настройки согласно скриншоту и сохраняем по умолчанию.
Теперь, когда всё настроено, переходим к компрессии.
Открываем *m2v в VirtualDub-MPEG2, ждём, затем "Video" – "Full processing Mode" (если стоит по умолчанию) - сразу "Compression".
В левом окне выбираем XviD, затем "Configure". В открывшемся окне настроек перед каждой кодировкой или после каждого обновления кодека рекомендуется нажать "Load defaults" и приступаем:
1. "Profile @ level" - набор готовых предустановок кодека для приготовления рипов. Подробно описание каждого профиля можно прочитать тут. Выбираем "Unrestricted" - для установки всего вручную.
2. после выбора нажимаем "More", располагающуюся рядом. Закладка "Profile".
"quantization type" - выбор матрицы квантайзеров: "H.263" - для низкобитрейтных рипов (до 900 kb/s), "MPEG" - более 900, "MPEG Custom" - редактировать матрицу. Выбираем этот пункт, если хотите загрузить нестандартную матрицу квантования. Я тестировал стандартную матрицу "MPEG", обе матрицы "Bulletproof-а", обе матрицы "Jawor-а", "Professional", "Packed DVD by Fl0ppy" и "Ultimate Matrix". Я не работал с низкобитрейтными матрицами, VHS-матрицами и прочими. В конечном итоге лучшей для моего материала оказалась матрица от Bulletproof-а – "Bulletproof's High Quality Matrix". Однако в случае с кодированием аниме, в котором мне однажды довелось принять участие, она просто спасовала – её результат был худший из пяти опробованных. Уверен, что стоит поэкспериментировать с различными матрицами.
"Adaptive quantization" – снижение битрейта кодеком в тех местах кадра, где, по его мнению, разница в цвете не заметна человеческому глазу (что-то наподобие психоакустической модели в кодеке Lame). "Global motion compensation" - сохранение большего количества бит информации при кодирования панорамного движения соответственно - использую при необходимости, если в фильме много такого движения. Включение "Global motion compensation" исключит воспроизведение рипа на стационарных плейерах с поддержкой MPEG4. Кроме этого, разработчик кодека настоятельно рекомендует использовать данную опцию совместно с "VHQ Mode" - будет описано ниже.
"Interlace encoding" – сжатие не кадров, а полей. Интерлейсинг включение этой опции не убирает.
"Quarter pixel" – включает алгоритм поиска и определения движения с точностью до четверти пикселя. Я попробовал эту функцию и получил следующее: чёткость картинки приятно возросла на сценах, где не было обилия мелких объектов, однако на сценах, где имелось множество мелких разноцветных деталей, вместе с вышеописанным плюсом появился существенный минус - какое-то мелкое зерно, наподобие снега, в кадре. Пришлось отказаться и кодировать заново. Возможно, если материал не содержит таких деталей, то стоит использовать. Имейте ввиду, что включение "Quarter pixel" может создать проблемы при воспроизведения рипа на стационарных плейерах с поддержкой MPEG4.
"B-vops" - включает/выключает b-frames:
"Max consecutive b-vops" - количество b-frames, идущих подряд, то есть без чередования с p-frames. Увеличение этого параметра повышает сжимаемость видеоряда. Разные рипперы используют от 1 до 4-ёх идущих подряд b-frames; количество более 1 может вызвать проблемы при воспроизведении рипа на стационарных проигрывателях с поддержкой MPEG4.
"Quantizer ratio" и "Quantizer offset" - во сколько раз максимум можно кодеку повысить расчётный квантайзер при кодировании и сколько к нему можно ещё прибавить - соответственно. (Помните, что увеличение квантайзера на b-frames приводит к снижению битрейта, требуемого для их кодирования, что, несмотря на то, что снижает их качество, позволяет перераспределить освободившийся битрейт на i-frames и p-frames, что должно повысить качество картинки в целом).
"Packed bitstream" - упаковывает b-frame и следующий за ним p-frame в один поток. Это даёт кодеку возможность декодировать видеопоток без задержки в один кадр. Использование этой функции может затруднить возможность воспроизведения рипа на стационарных плейерах с поддержкой MPEG4 - в зависимости от типа чипа и его прошивки.
Закладка "Level". Здесь нам ничего не доступно.
Закладка "Aspect Ratio" - Pixel aspect ratio – большинство риперов выбирают эту опцию (она стоит по умолчанию) и форму пикселя - square (квадратный) (она тоже стоит по умолчанию).
Теперь нажимаем ок и возвращаемся в главное окно настроек кодека. Повторим, что у нас должно стоять:
"Profile @ level" – "Unrestricted";
"Quantization type" - загружена выбранная вами матрица квантования;
"Adaptive quantization", "Interlace encoding", "Quarter pixel", "B-vops" - вариативно. "Global motion compensation" – также вариативно.
Рекомендуется не раз и не два поэкспериментировать с шестью последними параметрами ("Quantization type", "Adaptive quantization", "Interlace encoding", "Quarter pixel", "B-vops", "Global motion compensation) для того, чтобы добиться максимально возможного качества картинки.
Далее, в основном окне настроек кодека в ниспадающем меню "Encoding type" выбираем "Two pass - 1st pass" - первый проход из двух. Кнопаем на "More", находящуюся рядом:
"Full quality 1st pass" - включает/выключает полный проход видеоряда. При отмеченном чекбоксе кодек записывает в результат первого прохода не только статистику, но и видеоданные. Это позволяет уменьшить неточность предсказания битрейта кадра с 30-50% до 2-3%, а в итоге позволяет сэкономить битрейт почти на треть. Увеличивает время работы кодека, по моим наблюдениям, раза в полтора минимум. Имеет смысл включить в том случае, если мы не довольны результатом кодирования и вынуждены проводить его второй раз. "Discard first pass" - не писать реальные видеоданные в выходной поток.
"Stats filename" - место и имя для файла статистики; по умолчанию кодек сохранит его в корень какого-либо диска.
Теперь ок - и мы в главном окне настроек кодека. Идём дальше:
"Zones" - здесь можно указать места видеоряда, где разрешается кодеку значительно снизить битрейт, повысив квантайзер до указанного вами предела при кодировании, например, финальные титры. Кроме этого, в настройках зон можно отметить чекбокс "Cartoon Mode" – в случае кодирования аниме субъективно это улучшило картинку. Стоит отметить также чекбокс "Chroma optimizer enabled", если вы кодируете мультипликацию.
"Quality preset" - готовые пресеты поиска и обработки движения кодеком. Выставляем всё вручную: в ниспадающем меню выбираем "User defined" - определяется пользователем, затем нажимаем "More". Здесь мы имеем следующее:
"Motion search precision" - точность поиска движения. Чем выше эта точность, тем более качественная получается картинка и тем дольше работает кодек. Я ставлю максимальную точность – "Ultra high".
"VHQ Mode" - включает алгоритмы стандарта MPEG4 для поиска движения. Если отключено, то кодек обрабатывает каждый кадр отдельно, и каждый кадр такого видеоряда будет ключевым. Максимум – "Wide search" в ниспадающем меню. Если мы используем b-frames, обязательно ркомендуется включить эту функцию также и для них.
"Use chroma motion" - включает алгоритмы поиска движения по изменению цвета. Согласно руководству кодека, препятствует появлению блоков.
"Turbo". Если честно, читая руководство кодека, я просто не понял, что именно она делает - ускоряет ли работу кодека в целом или более точно прогнозирует время работы. Я не использую эту функцию.
"Frame drop ratio" - количество кадров, которое разрешается кодеку оставить незакодированными при условии нехватки битрейта. По умолчанию стоит ноль, то есть кодируются все кадры.
"Maximum i-frame interval" - показывает, сколько кадров (p-frames, b-frames) будет стоять между двумя ключевыми. Этот параметр освещён выше.
Итак, повторим:
"Motion search precision" - Ultra high
"VHQ mode" - Wide search
"Use chroma motion" - отмечено
Turbo – вариативно.
"Frame drop ratio" - 0
"Maximum i-frame interval" – вариативно: от 100 до 10 000.
"Zones" и "Cartoon mode" – вариативно.