Компания DivX Networks, Inc. была лишь недавно основана, и она уже начала приносить свои плоды. Бывшие пионеры компании, Джером Рота (Jerome Rota) и Дарриус Томпсон (Darruis Thompson) изучили опыт развития теперь уже устаревшего Microsoft MPEG-4 кодека, наняли маркетолога и еще шесть человек персонала. А персоналу нужно платить :-)
Новое поколение DivX кодека 5.0 доступно для скачивания у нас www.3dnews.ru/download/dvd/divx-codec/. Но свободна к использованию лишь стандартная версия. За профессиональную версию, со многими новыми возможностями, придется заплатить $30. Для тех же, кто жить не может без этой программы, а денег жалко, была разработана еще одна версия программы с баннерной рекламой. Но, несмотря на всю эту ситуацию, неоднозначно принятую пользователями, можно твердо сказать: команда Divx Networks разработала кодек, сжимающий DVD фильм в одиннадцать раз почти без потери качества. Что делает DivX5.0 идеальным средством для передачи видео и аудио данных через Интернет. Отметим также совместимость с MPEG-4. Итак, если фильм не длиннее 100 минут и у вас есть диск на 700 Мб, вы сможете записать одно на другое в довольно высоком качестве.
Новые возможности
Новый кодек соответствует API Video-for-Windows (стандарт VFW). Поэтому его легко можно вызывать из различных программ по редактированию видео типа Pinnacle Studio или Adobe Premiere. Кодек можно использовать в паре с популярными программами по конвертированию типа Flask XMPEG или VirtualDub. Теперь давайте сравним функциональность Pro версии со стандартной.
DivX кодек: двунаправленное кодирование
По сравнению с предыдущей версией 4.xx здесь появились четвертые пикселей (QP, quarter pixels), общая компенсация движения (global motion compensation, GMC) и двунаправленное кодирование (bidirectional encoding, BD).
B-кадры через двунаправленное кодирование (BD)
В видеопотоке старого формата DivX 4 можно было выделить I-кадры (Intra) и P-кадры (предсказанные). I-кадр представлял собой одну картинку из видеопотока, сжатую алгоритмом типа JPEG, то есть изображение передавалось целиком. Если бы каждый кадр фильма пришлось сжимать индивидуально, мы бы никогда не достигли высокой степени сжатия MPEG-4/DivX. Поэтому в потоке используются P-кадры. Принцип их использования легче всего объяснить на примере: представьте себе программу новостей и диктора в ней. В течение программы фон за диктором, по большей части, остается неизменным. Поэтому мы можем отбросить ненужный фон и описывать только изменения, происходящие в избранных участках изображения. Для этого следует поделить изображение на отдельные блоки. Временные изменения блоков будут кодироваться в P кадре.
В DivX 5 добавляются B-кадры (двунаправленные). Давайте для примера рассмотрим прогноз погоды. Вначале метеоролог работает на фоне с первой половиной карты. Потом он переходит на другую сторону экрана. Те части карты, что были скрыты за его спиной, теперь появляются на экране. Если использовать обычное предсказывание, то кодек столкнется с проблемой: смещенные блоки (то есть метеоролог) могут быть заданы P-кадром, но что же делать с внезапно появившимся фоном (картой погоды)? DivX 5 кодек отличается в этом случае большим интеллектом и проверяет «будущий» видеопоток. Сейчас кодек использует прямое и обратное предсказание для сцены и создает B-кадры. Они могут существенно увеличить степень сжатия, однако эффективность B-кадров наблюдается лишь в сценах, подобных описанной выше.
Общая компенсация движения (GMC)
Общая компенсация движения помогает при увеличении («наезде» камеры) и при панорамировании (повороте камеры), если объект сохраняет свою статичность и меняется лишь в размере или местоположении на картинке. Включение GMC разумно при кодировании фильмов о природе и подобных.
Четверти пикселей (QP)
Четверти пикселей влияют на точность фильтрации макроблоков. DivX 4 работает с половинами пикселей (1.5, 1.5), а в DivX 5 возможны варианты типа 1.25, 1.75 и т.д. Обычно деление изображения на макроблоки производится на основе целых – 16x16 или 8x8 – используя дополнительную информацию из так называемых виртуальных блоков. Это позволяет более реалистично передавать движение объектов на изображении.
В стандартной версии нет BD, GMC и QP
QP, GMC и BD не могут быть использованы для кодирования в стандартной версии. Но декодирование остается возможным, даже если данные функции были использованы при кодировании.
Однопроходное и двухпроходное кодирование
Обычно двухпроходное кодирование позволяет достичь большей степени сжатия (меньшего размера файлов) и лучшего качества изображения. Но оно заметно сказывается на скорости кодирования. Стандартные программы редактирования видео типа Pinnacle Studio включают 2-проходное кодирование, но оно там не очень удобно. Оба прохода должны быть начаты вручную, один за другим. Приложения, оптимизированные под использование DivX, к примеру, Flask XMPEG 4.2a могут автоматически включать оба процесса без участия пользователя. Так намного удобнее.
В тестировании у нас возникли проблемы с северным мостом KT333 на плате Gigabyte GA-7VRXP (Athlon XP). Мы смогли предотвратить произвольные сбросы системы при 2-проходном кодировании только путем установки дополнительного охлаждения на северный мост. Три остальные тестовые платформы работали безупречно.
Общие параметры: добавление психовизуального моделирования
Сначала давайте обговорим, что подразумевается под психовизуальным моделированием. Человек воспринимает информацию таким образом, что он может очень быстро отличить важные элементы изображения от второстепенных. Именно на эту особенность и ориентируется психовизуальное моделирование. Сцена анализируется с помощью специального алгоритма, и, как предполагается, алгоритм отделяет важные объекты от второстепенных. К последним применяются менее точные алгоритмы сжатия, важные же объекты сжимаются с высокой точностью. В нашем тестировании мы провели несколько экспериментов на разных видеофрагментах. Что интересно, мы так и не смогли выделить какие-то заметные отличия в качестве. Позже мы более подробно исследуем функцию психовизуального моделирования. Даже от авторов мы услышали: «данная область дает очень богатые возможности, и мы пока лишь только начали их исследовать».