Захват, обработка и хранение видео с использованием ПК


Технологический процесс

Оцифровка и захват

Первое, что нам необходимо сделать — это получить копию видеозаписи в цифровом виде на жёстком диске компьютера. Операция записи видео сигнала в цифровом виде носит название «захват видео» (video capture). Аналоговый видео сигнал предварительно нужно привести к цифровому виду — оцифровать. Процесс захвата и оцифровки видео происходит одновременно, потому часто эти термины используются как синонимы.

Прежде, чем я продолжу рассказ о программах оцифровки видео, я упомяну о том, как реализуется захват видео в операционной системе Windows. Ещё в начале 1990–х годов операционная система Windows была оснащена подсистемой для работы с видео: Video for Windows (сокращённо VfW или V4W). VfW существует и в самых современных версиях Windows, успешно работает, и используется по сей день целым рядом программ.

В конце 1990–х годов Microsoft разработала новую, более гибкую подсистему работы с видео, которая получила название DirectShow (с 7 –й версии она входит в состав DirectX). Подавляющее большинство новых программ использует именно эту подсистему (интерфейс) для работы с видео.

Для нас важным является то, что в драйверах карты оцифровки видео может быть реализован только захват посредством DirectShow — некоторые современные карты имеют именно такие драйверы. Это делает невозможным использование программ оцифровки, которые используют интерфейс V4W для захвата видео. Популярная серия карт оцифровки на базе чипа Conexant имеет полную поддержку оцифровки через DirectShow и ограниченную через V4W — размер кадра ограничен 384×288 пикселями. (Справедливости ради отмечу, что существует вариант драйверов для таких карт захвата, в которых реализована возможность захвата полного кадра через V4W: от Eduardo Jose Tagle.)

Следует понимать, что задача обеих подсистем не ограничивается только захватом видео. Каждая из подсистем создана для поддержки полного спектра задач по работе с видеозаписями: захват, запись, воспроизведение, копирование, редактирование. Используемый интерфейс нас будет интересовать в контексте именно захвата видео — есть ли поддержка со стороны драйвера карты захвата, в состоянии ли использовать этот интерфейс для захвата видео какая-либо программа? В то самое время, эта же программа может использовать другой интерфейс для других задач, например: запись видео в файл.

Проблемы при захвате видео

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

Если компьютер не успевает обрабатывать поступающий поток кадров, то часть кадров пропускается. Оцифровка видео и звука производится разными устройствами, потому пропуск кадров видео вызовет потерю синхронизации со звуковым сопровождением. 25 пропущенных кадров приведут к отставанию видеоряда относительно звукового сопровождения на 1 секунду, потому не рекомендуется сохранять записи с более чем 5–10 пропущенными кадрами: лучше провести захват заново. При помощи правильно настроенной системы можно захватывать многочасовые видеозаписи без единого пропущенного кадра.

Формат контейнера AVI подразумевает постоянную частоту кадров по всей видеозаписи, то есть видеоряд и звуковое сопровождение синхронизируются единожды. Небольшое несовпадение реальной частоты кадров со средней частотой на сколько-нибудь больших отрезках времени приведёт к потере синхронизации: несовпадение уже в 200 мс легко заметно. Иногда возникает необходимость оцифровать запись, в которой частота кадров постоянно меняется, например старая видео кассета. В результате захвата такой записи в AVI‑файл вы обязательно получите рассинхронизацию: звуковое сопровождение будет то отставать от видео, то уходить вперёд. Единственно возможный вариант захвата подобных записей: использовать при захвате формат контейнера MPEG‑1/2: звук и видео синхронизируются много раз в течение записи, и за это короткое время не успевает накопиться заметная разница между видео и звуком.

Оцифровка и захват звукового сопровождения

При записи несжатого звука формата 48 кГц/16 бит/стерео поток данных составляет всего 187 Кбайт/сек. (0,67 Гбайт/час), а для моно звука — вдвое меньше. Такой потом данных несравнимо меньше потока данных видео, потому для записи звука настоятельно рекомендуется использовать формат без сжатия: PCM. Использование сжатия звука «на лету» является одной из самых распространённых причин появления рассинхронизации видео и звука в полученной записи.

Звук в формате PCM также удобно использовать при монтаже видео: во–первых «кадры» звуковой записи имеют длительность намного меньше кадра видео, что позволяет точно разрезать и склеивать звук при разрезании и склеивании видео; во–вторых «кадры» звуковой информации не зависят один от другого — если отрезать начало звука, то его продолжение не изменится. Применяя какое-либо сжатие звука, мы лишаемся обоих преимуществ: например, в формате mp3 длина «кадра» равна 26 мс, а звук каждого последующего «кадра» зависит от предыдущего «кадра». (Применительно к формату звука PCM вместо термина «кадр» используется термин «отсчёт» или «сэмпл», для mp3 используют термин «блок»; здесь термин «кадр» использован только ради аналогии с видео.)

Оцифровка и захват аналогового видео

Каждая карта оцифровки видео комплектуется не только драйверами, но и набором программного обеспечения. Эти программы позволяют использовать различные возможности карты оцифровки — в том числе захват видео. Часто эти программы достаточно убоги как с точки зрения интерфейса или наличия дополнительных возможностей, так и с функциональной точки зрения (например, AverTV, которым комплектуется мой Aver–203, позволяет захватывать видео с максимальным разрешением лишь 720×576 и сжимает видео «на лету» лишь в форматы MPEG–1 или MPEG–2). Конкуренция на рынке карт оцифровки видео в последнее время стала настолько жёсткой, что производители этих устройств взялись в последнее время за голову и снабдили свою аппаратуру программами, которые по функциональности вполне могут конкурировать со специальными программами для захвата видео.

iuVCR

Самая популярная и распространённая программа для захвата видео — это iuVCR. Программа доступна для скачивания, как с английским, так и с русским интерфейсом. iuVCR использует DirectShow интерфейс для захвата видео. В этой программе реализовано, пожалуй, наибольшее количество сервисных возможностей. Программа обеспечивает полный спектр функций по оцифровке и захвату аналогового видео, а также способна захватывать цифровое видео. Автор программы — Иван Усков — написал свой вариант драйверов для карт захвата на чипе Conexant 848/878, который обеспечивает ещё больше возможностей, чем стандартные драйверы от производителей соответствующего оборудования. Автор iuVCR отлично разбирается в тонкостях оцифровки и захвата видео, его программа содержит ряд уникальных возможностей (например, альтернативный способ подсчёта кадров, который помогает качественно записать видео сигнал со слабыми синхронизирующими импульсами).

Программа распространяется свободно только для тестового использования в течение 30 дней. Об этом вам напоминает окошко, которое появляется при запуске и закрытии программы. Если вы хотите использовать программу в дальнейшем — вам необходимо зарегистрировать свою копию программы, стоимость регистрации: 300 рублей.

Я предпочитаю использовать именно эту программу для захвата как аналогового, так и цифрового видео. Правда, в некоторых системах она не работает: мне так и не удалось заставить её работать на компьютере с ATI Radeon 8500 VIVO. В таких случаях я использую VirtualDubMod.

VirtualDub

Самая популярная и распространённая программа для редактирования и несложного монтажа видео — VirtualDub — имеет также возможности по захвату оцифрованного видео. VirtualDub использует для захвата интерфейс V4W. Функциональность VirtualDub в области захвата видео существенно беднее iuVCR и интерфейс намного менее удобен — но в целом обеспечивает достаточно возможностей. В частности, есть поддержка записи сегментированного видео — то есть запись производится не в один большой файл, а набор файлов фиксированного размера (эта функция может использоваться, чтобы обойти ограничение на размер файла в файловой системе FAT32).

Подробнее эта программа описана ниже, в разделе «Обработка видео».

FlyTV

Также очень популярно семейство программ FlyTV, написанные Сергеем Андыком. Основная программа — TheFlyDS — предназначена не только для захвата видео, а и для просмотра ТВ передач при помощи ТВ приёмника на карте захвата. Программа содержит массу сервисных возможностей: множество языков интерфейса (в том числе и русский), изменяемый внешний вид программы (skins), воспроизведение радио каналов — при помощи радио приёмника, deinterlace «на лету» во время просмотра или захвата, телетекст, вещание по локальной сети, скачивание программы ТВ передач через интернет. Стоимость программы FlyDS для граждан exUSSR составляет 250 руб., вы можете бесплатно испробовать программу в течение 30 дней.

В области захвата видео функциональность программы явно уступает iuVCR, потому если вас интересует не столько комфортный просмотр ТВ программ на компьютере, сколько захват, то FlyDS — не ваш выбор.

Тот же автор создал пару маленьких бесплатных программ, которые созданы специально для захвата видео: FlyCap и FlyDS, которые используют V4W и DirectShow интерфейс для захвата соответственно. Со своей основной задачей они достойно справляются, а вот дополнительные возможности у них очень бедны.

Захват цифрового видео

Как я уже упомянул выше, iuVCR поддерживает захват цифрового видео через интерфейс IEEE 1394 (FireWire). Также захват DV видео поддерживают многие современные видео редакторы: от простенького Windows Movie Maker (который входит в состав Windows XP или может быть бесплатно скачан с сайта Microsoft) до монстров типа Adobe Premiere или Ulead Media Studio. Если вы работаете только с захватом цифрового видео, то вам, возможно, не нужна вся функциональность iuVCR: выберите другую программу по душе.

Сжатие

Чтобы уменьшить потери качества, при захвате и монтаже записи используют специальные форматы сжатия: они сохраняют высокое качество даже при повторном применении, обеспечивают простой доступ к любому кадру видеозаписи, но используют очень много памяти.

Для хранения видеозаписей применяют другие способы сжатия видео. Такие форматы сжатия используют специальные способы кодирования информации: вместо сохранения каждого кадра сохраняется только информация об изменившихся частях кадра (см. раздел «Типы кадров»). Это затрудняет доступ к произвольному кадру в видеозаписи, но позволяет достигнуть существенно большего сжатия информации. Также такие способы сжатия сохраняют меньше информации о деталях видеозаписи — что практически незаметно при однократном применении сжатия, но ведёт к появлению очень заметных артефактов при многократном применении такого способа сжатия.

Таким образом, при монтаже используются способы сжатия, которые лучше сохраняют качество видеозаписи — но занимают очень большой объём памяти. Для хранения видеозаписей используются другие способы сжатия, которые обеспечивают неплохое качество записи и требуют существенно меньше памяти.

Сжатие видео

Рассмотрим разные кодеки — программы, которые позволяют кодировать и декодировать видео, используя какой-либо формат сжатия. Учтите, что «большие» графические редакторы содержат в своём комплекте ряд встроенных кодеков. В этом разделе будут описаны кодеки со стандартными интерфейсами, которые можно использовать в самых разных программах для работы с видео (захват, монтаж, редактирование). При захвате видео потоки данных достаточно велики, потому я буду приводить примерные значения в Мбайтах/сек и дублировать их в Гбайтах/час. Первая величина удобна для сравнения с пропускной способностью жёсткого диска. Вторая удобна для определения необходимого места на диске. Как легко подсчитать, эти величины пропорциональны с коэффициентом 3,5.

Промежуточное сжатие видео

Основные требования к промежуточному сжатию видео это: малое влияние на качество изображения даже при многократном повторном применении (в идеале — сжатие без потерь) и обеспечение простого и быстрого доступа к любому кадру (в идеале — каждый кадр сжимается независимо от других). Выполнение этих требований — залог высокого качества изображения и удобной работы при монтаже и редактировании видео.

Несжатое видео

При захвате видео с размером кадра 768 на 576 пикселей с платы оцифровки видео поступает поток данных примерно в 22 Мбайт/сек. (76 Гбайт/час) — и, соответственно 21 Мбайт/сек (73 Гбайта/час) при размере кадра 720 на 576. При захвате несжатого видео практически нет нагрузки на процессор компьютера, зато велика нагрузка на жёсткий диск. А главное — видео в таком виде занимает неоправданно много места. На практике в любительских условиях никто не работает с несжатым видео. Приведённые выше цифры вы можете использовать как предел сверху — как для необходимой скорости жёсткого диска, так и для необходимого для захвата места. Также, если ваша программа захвата вдруг показывает, что поток данных равен таким большим значениям, это означает наличие какой-то проблемы с видео кодером: реально у вас захватывается несжатое видео. В таком случае остановите захват и повторите настройку сжатия видео (возможно выбранный вами кодер видео не поддерживается программой захвата).

HuffYUV

Этот кодер идеально соответствует требованиям, которые перечислены в разделе «Промежуточное сжатие видео». Он сжимает каждый кадр отдельно при помощи одного из самых эффективных методов сжатия данных без потерь: методом Хаффмана (его также использует архиватор RAR). Хоть это нетипично для сжатия видео, но этот кодер обеспечивает сжатие данных совершенно без потерь. Правда, эффективность такого сжатия не очень велика: типичные потоки данных для HuffYUV — 10–13 Мбайт/сек (35–45 Гбайт/час). Учтите, что если часть кадра постоянно занимает однородный фон, то потребуется меньший поток данных: это касается записей широкоэкранных кинофильмов (с чёрными полосами сверху и снизу изображения). Кодек достаточно требователен к ресурсам компьютера: для захвата видео с размером кадра 768×576 нужен процессор не меньше 700 МГц. Автор — Ben Rudiak-Gould, последняя авторская версия — 2.1.1.

Также в интернете доступна модифицированная версия от Klaus Post — 2.2.0. Мне не удалось заставить её работать: она создаёт файлы неправдоподобно малого размера (почти втрое меньше, чем версия 2.1.1), декодеры HuffYUV версий 2.1.1 и 2.2.0 зависают при попытке воспроизвести такой файл, декодер ffDShow показывает видеозапись, в которой большая часть кадра заполнена цветным мусором. (В конференции RU.MPEG сообщали о том, что эта версия кодера нормально работает при некоторых условиях: вы можете попробовать, будет ли она работать у вас.)

MJPEG

Идея этого метода кодирования достаточно проста: каждый кадр кодируется независимо от остальных, кадры сжимаются алгоритмом с потерями типа JPEG (который так широко используется для сжатия фотографий). Существует несколько реализаций алгоритма, в том числе и аппаратные: так, карта захвата Pinnacle Studio DC10+ выдаёт поток в формате MJPEG. Из программных реализаций наиболее распространены кодеки от Morgan Multimedia и Pegasus Imaging Corp. Кодек от Morgan специалисты не жалуют: и качество изображения у него похуже, и совместимость (не умеет декодировать некоторые MJPEG файлы). Кодек от Pegasus (PICVideo MJPEG) наоборот — очень популярен. Практически у него есть одна настройка: уровень качества (от 1 до 20). При захвате видео с целью получения максимального качества, как правило, используется уровень 19, поток данных при этом получается 5–7 Мбайт/сек. (17–25 Гбайт/час). При этом видео с размером кадра 768x576 можно захватывать на процессоре 450 МГц.

Использовать самый большой уровень качества нет смысла: поток данных получается 12–17 Мбайт/сек. (40–60 Гбайт/час) — это больше, чем HuffYUV. При этом MJPEG сжимает с потерями, а HuffYUV — без потерь. Да и требования к процессору в таком режиме получаются больше, чем у HuffYUV.

Вы можете использовать и меньшие значения уровня качества — при этом и поток данных, и загрузка процессора будут меньше. Но уже при уровне 18 артефакты сжатия становятся заметны на глаз: случайный шум в ТВ программах иногда вырождается в регулярные узоры (муар). При уровне 17 муар становятся постоянными.

Уровень качества сжатия,
кодер PICVideo MJPEG
Типичный поток данных,
Мбайт/сек (Гбайт/час)
20
12–17 (40–60)
19
5–7 (17–25)
18
3–6 (11–16,5)
17
2,5–4 (9–13)
16
2–3,5 (8–11)
15
1,8–2,8 (6,5–10)

Кстати, VirtualDub содержит встроенный декодер формата MJPEG. Специалисты, правда, настоятельно рекомендуют не использовать его, а установить в систему кодек от Morgan или Pegasus.

Pegasus недавно выпустили новую версию своего кодека: PICVideo MJPEG 3. Среди прочих новшеств этот кодек содержит пост-процессинг при декодировании видео: по аналогии с MPEG‑4 декодерами. Это позволит использовать более высокие степени сжатия видео при сохранении приблизительно такого же визуального качества изображения.

MPEG–1, MPEG–2

Мне не известны качественные MPEG–1 или MPEG–2 кодеры со стандартным DirectShow или V4W интерфейсом, которые бы можно было установить в систему и использовать из всех программ по работе с видео. Потому ниже пойдёт речь про MPEG кодеры, которые встроены в программное обеспечение карты захвата — как правило, они позволяют сохранять видео в формате MPEG–1 и MPEG–2. Также более дорогие карты захвата имеют встроенные MPEG-кодеры, они способны проводить сжатие видео «на лету» аппаратно, передавая системе для записи уже готовый MPEG поток.

Стандарт MPEG–1 предусматривает потоки данных до 1,5 Мбит/сек для видео (лишь 188 Кбайт/сек) при разрешении до 384×288 — потому его не разумно применять для захвата видео в виду исключительно низкого качества. На практике, правда, некоторые программы захвата игнорируют эти ограничения и способны создавать MPEG-1 потоки с большими размером кадра и шириной потока данных: AverTV из комплекта поставки карты Aver203 может создать MPEG-1 видео с потоком вплоть до 20 Мбит/сек (2,5 Мбайт/сек, 9 Гбайт/час) и размером кадра 768×576. Полученный файл, конечно, не соответствует стандартам — однако VirtualDub вполне в состоянии его прочитать.

Формат MPEG-2 формально имеет ограничение в 40 Мбит/сек., однако, конкретные программные реализации MPEG-2 кодеров, как правило, ограничены ещё меньшими потоками. Упомянутый выше AverTV ограничен 20 Мбитами/сек, ATI Multimedia Center имеет ограничение в 15 Мбит/сек. (2 Мбайта/сек, 7 Гбайт/час). Учтите, что VirtualDub не в состоянии читать файлы MPEG-2. VirtualDubMod имеет дополнительную надстройку, которая позволяет открывать ему файлы с MPEG-2 видео.

Во время захвата видео кодеры MPEG-1 и MPEG-2 кодируют видео в режиме с постоянным потоком данных (CBR) и с постоянным видом группы кадров (GOP). Как было сказано в разделе «Поток данных (bitrate)» — это не оптимальный режим для метода сжатия с потерями. Группу кадров лучше сделать достаточно короткой (3-5 кадров), двунаправленные кадры не использовать вовсе (см. также раздел «Группы кадров»). Вы можете даже использовать только ключевые кадры — кодер будет работать в режиме, подобном MJPEG. Однако специалисты указывают на то, что иногда кодеры даже при больших потоках данных допускают артефакты, особенно это заметно для цветовой составляющей (см. Видеокарты от ATI с видеовходом: Лучшие возможности для оцифровки видеозаписей).

MPEG-4

Использовать MPEG-4 кодеры при захвате видео практически бессмысленно: DivX 5.1.1 в режиме 1-pass quality based (fastest, quality: 1, max keyframe interval: 1) создаёт поток такой же ширины, как и PICVideo MJPEG с качеством 19, при этом потребляет втрое больше мощности процессора. Возможно, в каких-то компромиссных вариантах — с низким качеством, небольшим размером кадра — DivX и можно использовать. Но в любом случае, он потребляет уйму вычислительных ресурсов. Если вы собираетесь сжимать в DivX видео с размером кадра 768×576 «на лету» — запаситесь процессором как минимум в 2ГГц. Очевидно, что с XviD ситуация аналогичная.

DV

Цифровые камеры используют свой формат сжатия видеозаписей — DV (Digital Video). Технически он схож с MJPEG, но не совместим с ним. Формат DV содержит дополнительные возможности, как то: наложение титров (удобно для видеокамер: подпись к записи записывается отдельно изображения, а не поверх него), специальный способ синхронизации аудио и видео информации. Поток данных DV имеет постоянную ширину: 3,6 Мбайт/сек (12,5 Гбайт/час).

Существует несколько программных кодеков формата DV, более того: DirectX 6 и новее стандартно содержат DV кодек — правда он поддерживает только DirectShow интерфейс (соответственно VirtualDub не в состоянии его использовать). Тем не менее, специалисты рекомендуют использовать кодек от MainConcept: он обеспечивает корректную цветопередачу, более высокое качество изображения, а также менее ресурсоёмок. На сайте доступна демонстрационная версия, полная версия стоит $49. Декодер от Cannopus поддерживает только декодирование. Также в интернете можно найти кодек от Panasonic: судя по всему, он какое-то время назад был доступен на японском сайте компании, потом его убрали — но добрые люди успели его скопировать.

Мне неизвестно, какой из этих кодеков лучше и почему — я совсем мало имею дела с цифровыми камерами и DV. За информацией по работе с DV рекомендую обратиться к сайту М. Афанасенкова или к FAQ по созданию и редактированию цифрового видео.

Что же выбрать?

Если ваша карта захвата способна выдавать оцифрованное видео только в закодированном виде, то вам не нужно его сжимать как-либо ещё: достаточно сохранить уже сжатое чипом карты захвата. Так, если вы используете плату Miro VIDEO DC30, нет никакого смысла сохранять полученное MJPEG видео даже сжатым без потерь (HuffYUV) — нужно сохранить MJPEG, который выдаёт карта захвата. При захвате цифрового видео его нужно сохранять в исходном виде — в формате DV.

Если ваша карта захвата выдаёт несжатое видео — лучше всего его сохранять без потерь, применяя сжатие HuffYUV. Поскольку этот метод использует сжатие без потерь, вы можете применять это сжатие при многих последовательных операциях.

Если у вас не так много места на жёстком диске — используйте Pegasus MJPEG с уровнем качества 19. Качество такого сжатия очень высокое: не смотря на то, что MJPEG сжимает с потерями, на глаз этого абсолютно незаметно.

Оригинальное изображение
Кадр, сжатый Pegasus MJPEG, качество: 19.

Тем не менее, не стоит применять MJPEG сжатие много раз подряд: за счёт накопившихся погрешностей могут возникнуть заметные артефакты. Возьмите за правило: не более 2 пережатий в MJPEG.

Если у вас мало места на жёстком диске — используйте MJPEG с более низкими уровнями качества. Также вы можете попробовать использовать MPEG, но эти методы достаточно требовательны к процессору (причём MPEG-4 более ресурсоёмок, чем MPEG-2, а MPEG-2 более сложен, чем MPEG-1) и не на много лучше MJPEG по качеству сжатия (если вообще лучше).

Вам следует помнить, что если при подготовке видеозаписи несколько раз последовательно применялось сжатие с потерями, то достаточно заметно падает качество изображения. Алгоритмы MPEG не рекомендуется использовать в качестве промежуточных для захвата, обработки и редактирования видео.

Финальное сжатие видео

Методы финального сжатия видео должны обеспечивать высокую степень сжатия — возможно, с потерей информации. Современные кодеры используют специальные алгоритмы, которые призваны сделать искажения видео (артефакты) как можно менее заметными при воспроизведении. Также для проигрывания видео достаточно лишь последовательного доступа к кадрам видеоряда: доступ к произвольному кадру, как правило, сопряжён с большими задержками. Ещё одно преимущество таких способов сжатия видео: возможность задать размер видеозаписи в сжатом виде. Для использования этой возможности нужно рассчитать среднюю ширину потока данных (bitrate), до которой вы хотите сжать полученное видео. Рассчитать необходимое значение можно при помощи обычного калькулятора, однако удобнее это делать при помощи специальных программ: bitrate calculator. Кодеки DivX Pro и XviD содержат встроенные bitrate calculator’ы.

DivX 5.2 Pro

Кодек поддерживает как двухпроходный режим, так и использование однопроходного режима с постоянным качеством вместо первого прохода (см. раздел «Однопроходное сжатие»).

Перед началом настройки кодера рекомендуется сбросить все установки: Restore Defaults. После этого нужно выбрать режим сжатия: Encoder mode — Multipass, 1st pass или Nth pass. При последнем проходе нужно указать необходимый битрейт, который определит размер сжатой видеозаписи. На первых проходах можно указывать любой другой битрейт, но рекомендуется, чтобы он отличался от конечного значения не более чем вдвое (в любую сторону).

Следующий важный параметр: Encode Performance. Рекомендуется использовать Standard или Slow.

При помощи движка Bitrate modulation вы можете дать рекомендацию кодеру, какие сцены сжимать с более высоким качеством: статичные (low-motion) или динамичные (high-motion). Выбор варианта определяется вашими предпочтениями, по умолчанию все сцены сжимаются с одинаковым уровнем качества.

При помощи кнопки Select… вы можете выбрать имя файла, куда кодером на первом проходе будет записан результат анализа видеоряда (log file).

На закладке Video вы можете включить использование системы психовизуальных улучшений (Psychovisual Enhancements: Fast или Slow, что соответствует двум разным вариантам алгоритма — ни один из них не даёт явно более качественного сжатия, но первый быстрее). При помощи настроек Crop вы можете обрезать края кадра видеозаписи, при помощи Resize — изменить размер кадра. Source Pre-processing включает дополнительную обработку видео перед сжатием, что иногда удобнее делать средствами редактора видео. При помощи переключателя Interlace вы можете включить режим сохранения чересстрочного видео: Preserve Interlace. Для прогрессивного видео следует указать Progressive source. Scene change threshold позволяет корректировать чувствительность алгоритма детектирования смены сцены: не рекомендуется использовать значения менее 40% или более 60%. Параметр Max Keyframe interval позволяет ограничить сверху максимальное расстояние между двумя ключевыми кадрами: чем меньше это число, тем быстрее будет осуществляться перемотка видеозаписи. Однако использование слишком большого числа ключевых кадров существенно ухудшит качество сжатия: MPEG-4 позволяет сжимать видео так хорошо именно при помощи использования большого числа промежуточных и двунаправленных кадров.

Разного рода дополнительные возможности становятся доступными лишь после отключения DivX Cerfitied Profile:нажмите Select DivX Cerfitied Profile, отключите DivX Certified, нажмите Next. В следующем окне вы сможете включить использование более чем одного двунаправленного кадра подряд (Bidirectional encoding: Adaptive Multiple Consequtive — рекомендуется), компенсации движения (GMC — рекомендуется не включать) или четвертьпиксельной точности расчёта векторов движения (Quarter Pixel — рекомендуется не включать). Также после отключения DivX Cerfitied Profile становятся доступны 1-проходный режим сжатия с постоянным уровнем качества (Encoder mode: 1-pass quality-based) и MPEG матрица квантования (закладка Video, Quantization Type: MPEG-2 — рекомендуется использовать только при высоких битрейтах).

При помощи кнопки Settings вы можете сохранять варианты настройки кодера (preset) или же загружать варианты, сохранённые ранее. Здесь же вы можете настроить некоторые параметры кодера: отключить выдачу кодером сообщений об ошибках и предупреждений (Do not prompt with errors and warnings); включить смену рекламных сообщений (Rotate artwork and product information); включить автоматическую проверку наличия новых версий кодека через интернет при каждом запуске (Always check for new version at startup). Тут же можно отключить окно с состоянием процесса кодирования видео (Disable the feedback window) — его удобно использовать для подтверждения того, верные ли настройки кодера вы используете. Также вы можете «на лету» корректировать настройки кодера, хотя обычно это делать не рекомендуется. Учтите, что отображение состояние процесса кодирования на треть снижает скорость сжатия видео — потому чаще его лучше отключать. Версия 5.2 содержит поддержку многопроцессорности и технологии HT: отображение окна состояния кодера ложится на второй процессор и не замедляет процесс кодирования видео.

Учтите, что последняя версия — DivX 5.2 — содержит ряд недоработок.

XviD 1.01

Кодек поддерживают как двухпроходный режим, так и использование однопроходного режима с постоянным качеством вместо первого прохода (см. раздел «Однопроходное сжатие»).

Перед началом настройки кодера рекомендуется сбросить все установки: Load Defaults. После этого нужно выбрать режим сжатия: Encoder type — Twopass, 1st pass или 2nd pass. При втором проходе нужно указать необходимый битрейт, который определит размер сжатой видеозаписи.

При помощи верхней кнопки More… вы попадёте в окно настройки расширенных возможностей стандарта MPEG-4. Тут можно выбрать матрицу квантования (Quantization type: для высоких битрейтов рекомендуется MPEG, иначе — H.263), включить использование системы психовизуальных улучшений (Adaptive Quantization), четвертьпиксельной точности (Quarter Pixel), глобальной компенсации движения (Global Motion Compensation), сохранение чересстрочного видео (Interlaced encoding), использование двунаправленных кадров (B-VOPs). Не рекомендуется изменять настройки по умолчанию, кроме типа матрицы квантования и Adaptive Quantization — по крайней мере, если вы не знаете точно, что вы делаете.

На закладке Aspect Ratio вы можете указать соотношение сторон обрабатываемого видеоряда: эта информация будет записана в сжатый видеоряд в соответствии со стандартом MPEG‑4. К сожалению, большинство программ-проигрывателей просто игнорируют эту информацию и показывают видео так, как будто пиксели видеоряда квадратные (имеют соотношение сторон 1:1).

При помощи второй кнопки More… вы попадёте в окно настройки режима сжатия: тут можно выбрать имя файла, куда кодером на первом проходе будет записан результат анализа видеоряда (log file).

Кнопка Advanced Options… позволяет настроить дополнительные параметры кодера. На закладке Motion собраны параметры алгоритмов выявления движения объектов в кадре: точность алгоритма (Motion search precision) и режим высокого качества (VHQ mode). Рекомендуется использовать варианты алгоритмов с наибольшими номерами: самые медленные, но обеспечивающие максимальное качество. Переключатель Use chroma motion управляет режимом поиска движения: использовать цветовые составляющие видеозаписи или только яркостную (рекомендуется включить). Режим Turbo включает использование более быстрых, но менее точных расчётов: решайте сами, что для вас важнее — качество без компромиссов или же скорость кодирования. Maximum I-frame interval позволяет ограничить сверху максимальное расстояние между двумя ключевыми кадрами: чем меньше это число, тем быстрее будет осуществляться перемотка видеозаписи. Однако использование слишком большого числа ключевых кадров существенно ухудшит качество сжатия: MPEG-4 позволяет сжимать видео так хорошо именно при помощи использования большого числа промежуточных и двунаправленных кадров. Переключатель Cartoon mode включает использование специально оптимизированного для мультфильмов режима.

Закладка Quantization посвящена параметрам алгоритмов квантования. Рекомендуется не ограничивать диапазон коэффициентов квантования и оставить его 1—31 для всех типов кадров: кодер достаточно умён, чтобы выбирать оптимальные коэффициенты квантования самостоятельно. Тут же рекомендуется включить использование интеллектуального алгоритма выбора вариантов кодирования на основании оценки соотношения «качество/размер» (Trellis Quantization).

На закладке Debug в разделе Performance optimizations вы можете проверить: правильно ли кодер определил набор инструкций, поддерживаемый вашим процессором? В случае ошибок автоматического определения вы можете вручную задать использование нужного набора. Параметр Print debug info on each frame позволяет выводить отладочную информацию по каждому кадру сжимаемого видео: это полезно для разработчиков и тестеров кодера. Параметр Display encoding status позволяет отображать окно с состоянием процесса кодирования видео: его удобно использовать для определения, верные ли настройки кодера вы используете? С другой стороны, отображение состояние процесса кодирования несколько снижает скорость сжатия видео — потому обычно его лучше отключить. При помощи параметра FourCC used вы можете указать желаемый декодер для декодирования вашего видео: XviD, DivX 4 (DivX) или DivX 5 (DX50). В определённых режимах кодер XviD способен производить видеоряд, на 100% совместимый с разными версиями декодера DivX (или же аппаратными MPEG‑4 проигрывателями), однако рекомендуется использовать «родной» код XviD.

Кодек XviD содержит уникальную возможность: зональное кодирование. Вы можете указать кодеку несколько зон в сжимаемом видео, к каждой из которых можно применить свой набор параметров. Зоны определяются по номеру кадра, с которого она начинается: заканчивается зона либо с началом следующей зоны, либо с окончанием видеоряда. Для каждой зоны можно указать её относительную важность — «вес» (Weight) — так, зона с весом 0,25 будет закодирована с качеством в 4 раза ниже, чем зона с весом 1,00. В качестве альтернативы вы можете потребовать сжатия зоны в режиме с постоянным качеством: укажите нужный коэффициент квантования (Quantizer). Это очень удобно для сжатия менее важных частей видеоряда, например титры кинофильма. Также вы можете потребовать у кодера начать зону с ключевого кадра (Begin with keyframe — это удобно, если вам может понадобиться быстрая перемотка на начало зоны или же возможность разрезать видеоряд по границе зон), включить режим кодирования чёрно-белого изображения (Greyscale encoding, настоятельно рекомендуется включать этот режим для чёрно-белых записей и даже фрагментов: в противном случае вы рискуете получить тёмно-зелёные пятна в сжатом ч/б видео), использовать специальный фильтр, сглаживающий чёткие границы объектов (Chroma optimizer — уменьшает эффект «лестницы», использовать по вкусу), использовать больше или меньше двунаправленных кадров (BVOP sensitivity, соответственно значения больше или меньше нуля).

В последней версии — 1.01 от 5 июня 2004 года — исправлен ряд ошибок, которые приводили к незначительному ухудшению качества сжатого видео.

Сжатие звука

Для сжатия звука к обработанной видеозаписи вы можете воспользоваться различными кодерами.

MPEG-1 layer 3 (mp3)

Для сохранения звука в AVI традиционно используют формат сжатия звука mp3. Лучший на сегодня кодер mp3 — безусловно, LAME (актуальная версия — 3.96). Про использование этого кодера несколько лет тому назад мною была написана статья, которая актуальна и по сей день: Использование пресетов mp3-кодера LAME.

Разработчик популярного кодека mp3 — Fraunhofer Institute — сообщает о готовящемся выпуске нового варианта этого формата MP3 Surround с поддержкой многоканального звука. Предыдущая доработка формата mp3 — MP3 Pro — не обеспечивает должного качества звучания и потому не пользуется большой популярностью.

Сжатие звука при помощи LAME

Для сжатия звука рекомендуется использовать режим ‘preset <bitrate>’, для моно записей средний поток данных имеет смысл задавать около 60 Кбит/сек для обычных записей, 70‑80 для качественных записей (музыка, концерты) и 45-50, если в записи присутствует только речь. Стерео записи следует сжимать с потоком от 90 до 130 Кбит/сек — тем больше, чем более сложный звук записан. Для того чтобы LAME не передискретизировал звук при среднем потоке менее 60 Кбит/сек, дополнительно указывайте ключ «resample 48» (или другую частоту — должна равняться частоте дискретизации вашего файла).

Возможно, вы захотите сжать звук с постоянным потоком данных — например для совместимости с аппаратными MPEG‑4 проигрывателями. В таком случае используйте режим «preset cbr <bitrate>», а значение ширины потока данных должно быть выбрано из набора: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320.

Ogg Vorbis

Формат сжатия Ogg Vorbis обеспечивает качество звука лучше, чем mp3 даже при небольших потоках данных, а также сжатие не только моно и стерео фонограмм, но и многоканального звука (как, например, 5.1 на видео DVD). Однако для того, чтобы использовать его в видеозаписи, вам нужно обязательно сохранять видео в контейнер OGM или Матрёшка (см. раздел «Формат контейнера видеозаписи»).

MPEG-4 AAC

В последнее время приобретает всё большую популярность формат сжатия звука MPEG-4 AAC (advanced audio coding), который примерно вдвое эффективнее mp3 или Ogg Vorbis, поддерживает не только моно и стерео фонограммы, но и многоканальный звук (как, например, 5.1 звуковые дорожки на DVD). Сегодня в интернете несложно найти целый ряд программ-кодеров для формата AAC, сравнения качества этих кодеров и другую информацию.

Вам нужно учитывать, что не все аппаратные проигрыватели поддерживает звуковые дорожки с переменным потоком данных (VBR), потому возможно ради совместимости с аппаратными проигрывателями вы предпочтёте использовать режим сжатия звука с постоянным потоком данных (CBR) — подробнее см. раздел «Формат контейнера видеозаписи».

Сведение видео и звука (muxing)

При использовании контейнера AVI, для того, чтобы свести (mux) результирующую видеозапись вы можете использовать практически любой редактор видео (пожалуй, только Windows Movie Maker не поддерживает AVI: он сохраняет лишь WMV файлы). Если же вы намерены использовать контейнер OGM или Матрёшка, то вам понадобится специальная программа (OGM mux утилита или утилиты для Matroska mux). В качестве альтернативы вы можете использовать VirtualDubMod или AVIMux_GUI — универсальную программу для mux/demux видеозаписей. Также эти программы допускают включение нескольких звуковых дорожек и/или нескольких вариантов субтитров в конечный файл с видеозаписью.

Обработка

Полученная в результате оцифровки и захвата видеозапись, как правило, мало пригодна для хранения: разрешение неоправданно завышено (см. «Разрешение и чёткость изображения»), в изображении присутствуют характерные для аналоговых записей шумы и искажения, размер полученного файла огромен. Поэтому видеозапись требует некоторой обработки: устранение артефактов чересстрочности, уменьшение разрешения, устранение шумов.

Для простого редактирования и монтажа видео — вырезать несколько фрагментов, склеить несколько записей и т. п. — вам вполне хватит VirtualDub’а. Если же вы хотите чего-то большего — используйте редакторы видео. Самый простой из них — Windows Movie Maker, который входит в состав Windows XP или может быть бесплатно скачан с сайта Microsoft. Среди других можно назвать Pinnacle Studio 9, Ulead Media Studio и Adobe Premiere. Все они отличаются функциональными возможностями, скоростью работы и количеством поставляемых фильтров (ко всем программам существуют дополнительные фильтры, которые можно найти в интернете).

Сложные видео редакторы в силу чрезмерной универсальности выполняют типовые задачи достаточно медленно: типовую обработку видеозаписи с DV камеры VirtualDub выполняет в 8 раз быстрее, чем Adobe Premiere 7. Потому предварительную обработку видео имеет смысл произвести при помощи простой программы (VirtualDub), а в «большом» редакторе — собственно редактировать и монтировать.

Описывать процесс редактирования видео я не буду по нескольким причинам. Во–первых, я никогда этим не занимался — кроме 2–3 попыток простенького оформления (вроде добавления титров). Во–вторых, в интернете есть масса материала, описывающего работу с «большими» видео редакторами. В–третьих мне кажется, что сложное редактирование видео имеет куда больше общего с творчеством, чем с технологией.

VirtualDub, VirtualDubMod

Эта программа была создана специально для обработки видео: взять исходный файл, применить к нему несколько преобразований, сохранить в выходной файл. Программа долгое время развивается, и на сегодня представляет собой самый мощный и гибкий инструмент в своём классе. VirtualDub также позволяет произвести несложное редактирование видеозаписи — вырезать ненужный фрагменты, склеить несколько файлов и т. п. Автор программы — Avery Lee, последняя версия — 1.5.10.

Некоторое время назад автор программы опубликовал исходные коды своей программы. На основе этого кода возник проект VirtualDubMod, который расширяет функциональность программы VirtualDub: поддержка нескольких звуковых дорожек, поддержка контейнеров OGM и Матрёшка, чтение MPEG–2 видео и так далее. Рекомендуется всегда использовать не VirtualDub, а его расширенный вариант VirtualDubMod — он содержит множество функциональных улучшений, что очень удобно. Последняя версия — 1.5.10.1.

VirtualDub на русском

Поскольку программы VirtualDub и VirtualDubMod пользуется огромной популярностью, актуален вопрос перевода интерфейса этой программы на русский язык. Мне известен перевод Юрия Мильто (последние версии VirtualDub и VirtualDubMod) и перевод некоего Stevens Inc., который, во-первых, основан на переводе Юрия, а во-вторых, не подходит к последним версиям. Оба этих перевода выполнены любительским способом путём подмены сообщений в запускаемом файле программы: этот подход неудобен тем, что после выхода каждой новой версии, нужно ждать, пока переводчик сделает перевод для новой версии.

Фильтры

Собственно обработка видеозаписи производится фильтрами (filter) — небольшими программами, которые при помощи стандартного интерфейса подключаются к редактору видео. Как правило интерфейс подключения фильтра уникален для каждой программы. Все редакторы видео содержат в комплекте некоторый базовый набор фильтров, VirtualDub не исключение. Но часто лучших результатов можно достигнуть, используя фильтры, которые создают сторонние разработчики. Потому для процесса обработки видео важна не только программа обработки видео, а ещё и набор используемых фильтров.

Ниже приводится описание полезных фильтров для VirtualDub, которые могут вам пригодиться при обработке видеозаписей. Стандартные фильтры подробно описаны в файле справки VirtualDub (кстати, его нет в поставке VirtualDubMod — ради справки рекомендую скачать VirtualDub). Если вы не дружите с английским — посмотрите описание стандартных фильтров VirtualDub’а на сайте TV&FM тюнеры.

Замеры скорости работы фильтров достаточно условны, но, тем не менее, они дают представление о скорости работы. Тестовый файл в формате MPJEG пережимается без применения фильтров в формат MPJEG со скоростью 42 кадра в секунду. Для примера будет указано значение скорости обработки с применением единственного фильтра.

2D Cleaner

Фильтр несколько размывает изображение в равномерно окрашенных областях: таким образом, границы объектов остаются резкими, а различный шум поверх объектов убирается. Достаточно быстрый (10,5 к/с), но способен убирать лишь лёгкий и нерегулярный шум. Слегка размывает изображение. Фильтр не пригоден для исправления достаточно заметных и регулярных дефектов изображения: если попробовать использовать большие значения параметров, то изображение получится сильно размытым (см. подробнее DivX: особенности сжатия видео в домашних условиях). Актуальная версия — 2D Cleaner optimized (0.9), авторы: Jim Casaburi и Jaan Kalda.

Chroma Noise Reduction

Очень полезный фильтр для обработки записей аналоговых видео сигналов. При кодировании аналогового сигнала особое внимание уделяется кодированию яркостной составляющей сигнала, а цветовая составляющая сохраняется с намного меньшим качеством. Этот фильтр устраняет шумы в цветовой составляющей, не меняя яркостной. Эффект более всего заметен на ярких областях изображения: небо, например, приобретает равномерную окраску, без цветных полос. Однако необходимо внимательно настраивать этот фильтр, поскольку при неверных настройках он даёт заметные артефакты: множатся контуры движущихся тёмных объектов на ярком фоне. Фильтр заменяет стандартный «TV: chrominance average», и даёт намного лучшие результаты (за счёт использования более разумного метода устранения шумов, чем простое усреднение). Скорость — 18,5 кадров в секунду. Последняя версия — 1.1, автор — Gilles Mouchard.

DeLogo

Фильтр предназначен для удаления из изображения статических объектов, например логотипа телеканала, наложенный поверх видео. Более того, фильтр даже умеет удалять полупрозрачные логотипы, используя информацию об изображении, которая «просматривается» сквозь полупрозрачный логотип. Скорость работы очень сильно зависит от размера логотипа. Последняя версия — 1.3.2, автор — Karel Suhajda.

Dynamic Noise Reduction

Ещё один полезный фильтр для очистки записей аналоговых видео сигналов. Убирает мелкий и подвижный шум, которого обычно немало в таких записях (21 кадр в секунду). Актуальная версия — 2.1, автор — Steven Don.

End Credits

Фильтр реализует оригинальную идею по преобразованию подвижного изображения в набор стоп-кадров. Очевидно, что набор стоп-кадров можно гораздо эффективнее сжать. Авторы предлагают использовать этот фильтр для сжатия финальных титров в кинофильмах — вместо прокручивающегося текста вы получите набор статических кадров. При достаточном количестве фантазии этот фильтр возможно применять как-либо ещё. Актуальная версия — 1.0, авторы — И. Антипов и С. Корбут.

Hue, Saturation, Intensity

Позволяет регулировать тон, цветность и насыщенность изображения (24 кадра/сек). Версия — 1.2, автор — Donald Graft.

QS Deinterlace

Лучший, пожалуй, на сегодня фильтр для deinterlace чересстрочного видео. Основан на коде фильтра Smart Deinterlace от Donald Graft, но превосходит его по качеству результата. Автор также обещает преимущество в скорости на компьютерах поколения Intel Pentium IV/AMD Athlon; на моём Pentium III скорость работы чуть ниже оригинала: 12 к/с против 13 к/с. Последняя версия — 1.0, автор — Виктор Томилов. Существует даже вариант фильтра с интерфейсом на русском языке.

Red, Green, Blue Adjustment

Позволяет регулировать цветовые компоненты изображения (23 кадра/сек). Версия — 1.0, автор — Donald Graft.

rmPal

Убирает дефект, характерный для аналогового сигнала в формате PAL: сдвиг цветовой части изображения относительно яркостной (10 кадров/сек). Автор — Peter Schweizer.

Smart Deinterlace

Очень неплохой фильтр для deinterlace, но на сегодня лучше использовать оптимизированный вариант сделанный на его основе: QS Deinterlace. Скорость — 13 к/с. Последняя версия — 2.7 beta 2, автор — Donald Graft.

Smart Resize

Фильтр для изменения разрешения изображения, оснащён очень удобным калькулятором: он позволяет устанавливать кратность для разрешения, сохранять соотношение сторон и выбирать окончательный размер множеством способов. Скорость его работы не отличается от скорости встроенного фильтра для изменения разрешения — отличается он лишь наличием удобного интерфейса. Последняя версия — 1.1, автор — Donald Graft.

Smart Smoother

Фильтр для сглаживания изображения с сохранением чётких границ между объектами. Со слов автора за счёт этого фильтр повышает чёткость, однако это не совсем так: слабо контрастные объекты становятся размытыми (см. DivX: особенности сжатия видео в домашних условиях) Скорость — 7 кадров/сек. Последняя версия — 1.1, автор — Donald Graft.

Smart Smoother HiQuality

Доработанный вариант фильтра Smart Smoother, содержит ряд дополнительных возможностей для сохранения его структуры изображения. Творит чудеса при убирании сильного шума, регулярного шума (как, например, артефакты MPEG сжатия, см. DivX: особенности сжатия видео в домашних условиях) — хотя немного и размывает изображение. Скорость — 6,5 кадров/сек. Последняя версия — 2.11, автор — Klaus Post.

Subtitler

Фильтр позволяет добавить к изображению субтитры в формате SSA, поддерживает текстовые эффекты этого формата. Используется для создания «внутренних субтитров» (см. раздел «Субтитры»). Последняя версия — 2.3, автор — Avery Lee.

Temporal Cleaner

Этот фильтр выполняет очень важную, хоть и не заметную для глаза функцию: усредняет значения пикселей во времени. Таким образом, при последующем сжатии кодеру не нужно будет сохранять небольшие отклонения значений пикселей от среднего значения. При неверной настройке фильтра множатся контуры тёмных объектов на светлом фоне. Этот фильтр имеет смысл использовать, когда необходима скорость обработки (16 кадров/сек): он работает хуже, чем YATS и чаще требует подстройки вручную. Тем не менее, он на голову выше встроенного фильтра Temporal Smoother, который пригоден только для создания эффекта плавного перехода изображения из кадра в кадр. Последняя версия — 0.5 beta, втор — Jim Casaburi.

Unsharp Mask

Фильтр для избирательного увеличения контрастности: вблизи границы объектов. Это увеличивает резкость изображения (чёткость границ). Использован тот же метод поиска границ объектов, что и в Smart Smoother. Считается самым лучшим фильтром для увеличения резкости. Скорость: 8 кадров/сек. Версия — 1.4, автор — Donald Graft.

Vobsub

Часть одноимённого комплекта по работе с субтитрами, позволяет добавлять в изображение субтитры, сохранённые в формате VobSub (например, скопированные с видео DVD). Используется для создания «внутренних субтитров» (см. раздел «Субтитры»). Последняя версия — 2.23, автор — Gabest.

Wavelet Noise Reduction

Фильтр для подавления шумов, который использует необычную сегодня технологию вейвлетов (wavelets). Фильтр даёт достаточно интересные результаты (эффективное подавление шумов), но очень сложен в настройке. Последняя версия — 0.1.

White balance

Как пишет автор — фильтр изначально создан для удобной и простой процедуры восстановления баланса белого (что полезно для снятых камерой записей). Баланс белого можно настроить вручную при помощи стандартного фильтра Levels, этот же фильтр работает в автоматическом режиме. Позже фильтр оброс некоторым набором дополнительных функций: регулировка тона, насыщенности и цветности (скопировано с фильтра Hue/Saturation/Intensity от Donald Graft), регулировка яркости и контраста изображения, простенький deinterlace (не рекомендуется его использовать). Последняя версия — 1.0 beta, автор — Jim Leonard.

XSharpen

Увеличивает резкость изображения. Работает эффективно, но изображение в результате получается не очень естественным: Unsharp Mask предпочтительнее (правда, его скорость вдвое меньше: XSharpen обеспечивает 16 кадров/сек). Последняя версия — 1.0 beta 2, автор — Donald Graft.

YATS

Yet Another Temporal Smoother — ещё один фильтр temporal smoother. Работает существенно лучше, чем Temporal Cleaner (не говоря про Temporal Smoother): обработанная YATS запись сжимается до 30% эффективнее. Настройки по умолчанию работают практически всегда, по крайней мере, мне никогда не приходилось их менять (да и автор не советует это делать). Единственная его проблема — исключительно низкая скорость: 3,5 кадров/сек. Последняя версия — 1.3, автор — Eric A. Welsh.

Звук

Как правило «большие» видео редакторы содержат некоторые возможности по работе со звуковыми дорожками. Мне они кажутся абсолютно неудовлетворительными: например в Ulead Media Studio можно изменить длину звуковой дорожки только до целого количества секунд. Для редактирования звуковой дорожки удобно применять звуковой редактор — я использую Adobe Audition (так стал называться CoolEdit Pro, после того как Adobe купила Syntrillium Software). Вы можете использовать любой привычный для вас звуковой редактор, их функциональность во многом идентична.

Несколько звуковых дорожек

Вы можете подготовить одну или несколько звуковых дорожек для вашей видеозаписи: множество проигрывателей видео позволяют переключать звуковую дорожку записи, а некоторые даже воспроизводить несколько дорожек одновременно. Так, вы можете создать звуковую дорожку с надиктованными комментариями к вашей записи.

Если вы хотите оставить только возможность воспроизведения вашей записи вместе с комментарием, то ради экономии места имеет смысл смикшировать оригинальную звуковую дорожку с вашими комментариями и полученную звуковую дорожку использовать в вашей записи. Если вы хотите иметь возможность просмотра вашей записи, как с комментарием, так и без него, то вам необходимо подготовить несколько звуковых дорожек. И помните, что подавляющее большинство проигрывателей видео позволяют лишь переключать звуковые дорожки: то есть одновременно может воспроизводиться лишь один звуковой ряд. Исключения — Light Alloy и BS Player, которые позволяет воспроизводить несколько звуковых дорожек одновременно, Windows Media Player 6.4 (и новее) — они воспроизводят все звуковые дорожки одновременно.

Субтитры

Вы можете снабдить вашу видеозапись текстовыми комментариями или переводом, которые будут появляться в кадре на некоторое время, исчезать, сменяться другим комментариями — в общем, субтитрами.

Существует целый ряд инструментов по работе с субтитрами. Самые простые программы позволяют лишь задавать набор надписей и время их показа. Более сложные программы позволяют менять гарнитуру, начертание, размер и цвет шрифта, положение надписи, способ показа надписи (например, прокрутка вверх или в сторону), даже создавать стили для надписей (например, чтобы реплики разных персонажей выделять разными цветами). Следует помнить, что далеко не все проигрыватели или фильтры для отображения субтитров поддерживают различные выделения текста (я использую DivXG400, который полностью игнорирует информацию о стилях отображения и показывает субтитры всегда так, как настроено в его установках).

Внутренние и внешние субтитры

Существует два основных способа хранения субтитров для видеозаписи: внутренние и внешние субтитры.

Внешними субтитрами называют текстовые файлы специального формата, которые содержат собственно надписи, время их показа и, возможно, дополнительную информацию о стилях. Проигрыватель видео (или специальный DirectShow фильтр) считывает этот файл во время воспроизведения видеозаписи и отображает субтитры поверх изображения. Вы можете изменить настройки отображения: цвет, размер шрифта и прочие. Вы можете не отображать субтитры вовсе или же сделать несколько вариантов субтитров (например, комментарии на разных языках) и переключать их во время просмотра записи. Субтитры можно отображать не только непосредственно поверх видеозаписи, но и сверху/снизу от неё (очень удобно при просмотре широкоэкранных записей на компьютере или телевизоре обычного формата — 4:3) Конечно, отображение субтитров будет требовать некоторых вычислительных ресурсов, однако. по современным меркам затраты эти совершенно мизерные: в сравнении со сложностью декодирования видеозаписи их можно игнорировать. Нужно учитывать, что если в ваших субтитрах содержится информация о стилях текста, методах отображения текста и т.п., то конечный пользователь может не увидеть всего этого, так как его проигрыватель не поддерживает такие возможности субтитров. Ещё одно преимущество внешних субтитров, которое не относится к субтитрам самим по себе, это «чистота» видеозаписи: множество резких границ (так представляются видео кодеру буквы) существенно ухудшат качество сжатого видео.

Внутренние субтитры интегрируются в видеозапись на этапе финального сжатия при помощи специального фильтра (см. Subtitler или Vobsub). Необходимо понимать, что качество сжатия видео из-за присутствия множества контрастных объектов — букв — существенно ухудшится (при одинаковом размере конечного файла). Также вы не сможете никаким способом позже убрать субтитры из видеоряда. С другой стороны, вся информация о стилях, цветах, способах отображения текста будет сохранена. (Этим часто пользуются любители японской анимации «аниме»: в интернете вы легко сможете найти как исходные файлы субтитров в формате SSA, так и готовые видеозаписи. В этих субтитрах реплики каждого из персонажей выделены другим цветом; расположены надписи с той стороны экрана, где находится герой; песни содержат два комплекта субтитров: перевод и караоке-версию (на японском) — подчас даже с подсветкой пропетых слов. Как вы понимаете, японским владеет очень малая часть населения планеты, потому мало кому понадобится вариант такой записи без субтитров.)

Чисто технически субтитры могут храниться в отдельных файлах или же быть упакованы (muxed) в один контейнер вместе с видео и звуком — это не делает их внутренними. Главное, что блок данных с субтитрами хранится отдельно от блока данных с видеорядом: в случае внутренних субтитров есть только блок данных видеоряда.

Subtitle Workshop

Пожалуй, самая удобная сегодня программа по работе с субтитрами. Имеет классический для подобных программ интерфейс: таблица с надписями, временем начала и окончания их показа («таблица» или «простыня»). В дополнение к этому вы можете отобразить вашу видеозапись в том же окне. Богатые возможностями по навигации и работе с субтитрами делают эту программу очень удобной. К сожалению, программа поддерживает лишь базовые стилевые выделения текста: жирный, наклонный, подчёркнутый и цветной текст. С другой стороны, программа поддерживает уйму разных форматов субтитров, плюс содержит возможности по автоматическому разрезанию и склеиванию субтитров — это делает её универсальным инструментом по работе с субтитрами. Также есть удобный режим для перевода субтитров на другой язык: в таблице выводится две колонки для надписей: на языке оригинала и на языке перевода. Есть возможность проверки орфографии текста субтитров при помощи службы проверки орфографии Microsoft Office. Интерфейс программы и документация по использованию переведены на русский, последняя версия — 2.51, разработка — URUSoft.

Sub Station Alpha

Редактор субтитров, который поддерживает множество способов выделения текста, эффектов по выводу субтитров, а также стили текста. Поддерживает собственный формат субтитров SSA, на сегодня это единственный распространённый формат субтитров с такими богатыми возможностями. У программы есть огромный набор функций по редактированию субтитров и уникальные возможности по записи субтитров: автоматическое генерирование пустых надписей по звуковому файлу (удобно, когда вы хотите продублировать в субтитрах реплики персонажей) или по нажатию клавиши во время просмотра видеозаписи. Есть встроенная проверка орфографии для английского языка. Также имеет уникальную возможность автоматического изменения времени показа субтитров по двум контрольным точкам. Программа порядком устарела, но аналогов до сих пор нет. Последняя версия — 4.08, автор — Kotus.

SubStudio SAMI

Очень многообещающая программа, к сожалению, пока она не закончена. Автор сделал упор на поддержку формата субтитров SAMI — самого мощного HTML-подобного формата с поддержкой стилей текста, шрифтовых выделений, нескольких языковых вариантов в одном файле и многого другого. Также программа имеет уникальный интерфейс: собственно текст субтитров представлен не только в виде набора реплик со временем начала и окончания показа (традиционная «простыня»), но и в виде линейки времени (timeline). При помощи этой линейки вы можете редактировать время показа субтитров при помощи мыши, двигая события по линейке времени. Это особенно удобно в комбинации с возможностью просмотра видеоряда тут же, в окне программы. Конечно, программа поддерживает импорт и экспорт субтитров в другие форматы — их число будет расти со временем. Планируется поддержка нескольких языков интерфейса программы (в том числе и русского), автоматическая расстановка переносов, проверка орфографии средствами Microsoft Office или Open Office. Автор программы — Антон Бреусов, ближайшая готовящаяся к выпуску версия — 1.2.0.

Использованные термины и сокращения

AVI — Audio Video Interleaved, стандартный в Windows формат контейнера для хранения видеозаписей.

HuffYUV — формат сжатия видео без потерь (методом Хаффмана). Формат удобен при монтаже, используется для промежуточного сжатия видео.

MJPEG — Motion JPEG, формат сжатия видео с потерями, в котором каждый кадр сжимается алгоритмом типа JPEG. Формат удобен при монтаже, используется для промежуточного сжатия видео.

MPEG — Moving Picture Expert Group, организация, занимающаяся разработкой стандартов сжатия цифрового видео с потерями. В частности ими разработаны стандарты сжатия MPEG–1, MPEG–2, MPEG–4 (стандарта MPEG–3 не существует: номер пропустили, чтобы не путать его с популярным форматом сжатия звука mp3).

Mp3 — сокр. от MPEG–1 Layer 3, подраздел стандарта MPEG–1, посвящённый сжатию звука.

Ogg Vorbis — более новый и более эффективный, чем mp3, формат сжатия звука.

OGM — Ogg media format, формат контейнера для файлов с Ogg Vorbis звуком, в том числе видеозаписей с Ogg Vorbis звуком.

Артефакт (artifact) — заметный дефект изображения, привнесённый в процессе оцифровки, обработки или сжатия видео сигнала.

  • Декодер — decoder, программа для декодирования сжатой информации.

  • Кадр — изображение, часть видеоряда. Видеоряд состоит из набора изображений, которые сменяются со скоростью около 25 кадров/сек.

    Карта — в тексте понимается как «карта расширения для компьютера», плата с PCI интерфейсом (или AGP — для видеокарт), которая вставляется внутрь системного блока компьютера. Различные карты дополняют ваш компьютер различными функциями.

    Кодек — CoDec, coder/decoder, программа, которая может выполнять функции кодера и декодера видео (см.). Как правило, кодеки поддерживают стандартный интерфейс и могут быть использованы разными программами для работы с видео (захват, редактирование и т. п.)

    Кодер — coder, программа для сжатия информации (звук или видео) согласно какому-то формату сжатия.

    Сцена — последовательность кадров, снятых за один приём, не выключая камеры. Все кадры сцены содержат очень похожее изображение.

    Фильтр — специальная подпрограмма, которая обрабатывает отдельные кадры оцифрованного видео для достижения какого-либо эффекта, например: изменение яркости, устранение эффекта чересстрочности, изменение разрешения видео и так далее. Фильтр не в состоянии работать самостоятельно: он может использоваться только под управлением программы по обработке видео.

    Юникод (Unicode) — новый стандарт представления текстовой информации для компьютерной техники, поддерживает все возможные символы всех возможных алфавитов со всего земного шара. Пришёл на смену т. н. «кодировкам» (encoding) — каждая из которых способна хранить только символы из одного алфавита (плюс базовую латиницы, например: греческий, кириллический, символы центрально-европейских языков, японский, и т. п.).

    Ссылки

    В этом разделе собраны ссылки на различные сайты и страницы в интернете, которые упоминались в тексте.

    Сайты по обработке видео

    На русском языке

    Обсерватория Маленького острова — лучший на сегодня русскоязычный сайт, посвящённый обработке видео при помощи компьютера на любительском уровне. Множество статей, описаний программ, методик, советов. Авторы сайта постоянно работают с видео: на сайте описывается их богатый практический опыт. Также действует форум, посвящённый работе с видео на компьютере.

    Сайт М. Афанасенкова посвящён более дорогой и более качественной технологии обработки видео: цифровая видеокамера, захват цифрового видео, монтаж и редактирование видео на компьютере, запись результата на DVD.

    TV & FM тюнеры — описания множества моделей карт захвата; а также различных программ, которые используются для просмотра ТВ программ, прослушивания радио, захвата видео, управления компьютером при помощи пульта дистанционного управления. Автор сайта постоянно отслеживает новости в мире карт приёма ТВ передач и карт оцифровки видео, в том числе появление новых моделей устройств и новых версий программ. Уровень изложения материала по технологии оцифровки очень простой — рекомендуется в том случае, если материал этой работы показался вам слишком сложным.

    Эхоконференция fido7.ru.mpeg — конференция сети FidoNET, посвящённая вопросам сжатия видео и звука. Также тут обсуждают смежные вопросы, связанные с оцифровкой, захватом, обработкой видео, аппаратуру для работы с видео и так далее.

    MP3 Forum — первый русскоязычный форум, посвящённый сжатию звука mp3. Позже тематика форума была расширена за счёт других форматов сжатия звука, а потом — и сжатия видео.

    Zvёzdные тропки — сайт содержит раздел, посвящённый захвату и обработке видео (очень подробные описания со множеством картинок а-ля «нажать сюда, потом сюда» — рекомендую тем, кто не дружит с английским). Также тут можно найти обширную подборку фильтров для VirtualDub.

    На английском языке

    DivX Networks — разработчик самого популярного MPEG‑4 кодера видео DivX. На сайте DivX действует форум и размещено множество документации, в том числе отличное Официальное руководство по DivX 5.2.

    Doom9 — самый крупный и самый известный сайт, посвящённый технологиям хранения, сжатия и обработки видео, в том числе правовым и законодательным вопросам в этой области. Автор сайта отслеживает самые последние новости, создаёт и публикует многочисленные руководства по работе с видео, проводит сравнения качества сжатия видео различными кодерами. Существует десяток разных языковых вариантов этого сайта (русского пока нет). Также на сайте действует крупнейший в мире форум, посвящённый этой тематике (здесь же размещён форум по разработке XviD).

    Статьи по обработке видео

    На русском языке

    FAQ по оцифровке видео с минимальными затратами — статья освещает вопросы по любительской работе с видео на компьютере. Статья написана два года тому назад и потому частично устарела: за это время выпущены новые кодеры, программы, разработаны новые методы работы.

    Захват и обработка аналогового видео с максимальным качеством для сжатия в MPEG-4 — описан метод, который лёг в основу моих экспериментов с оцифрованным видео. Пожалуй, самая толковая статья по данной тематике. Тема продолжена в статье Видеокарты от ATI с видеовходом: Лучшие возможности для оцифровки видеозаписей.

    Цифровой видеоархив для дома и FAQ по созданию и редактированию цифрового видео — статьи описывают создание качественного видеоархива домашних записей с использованием достаточно дорогой аппаратуры: качественной аналоговой или цифровой видеокамеры, карты захвата с аппаратным сжатием видео, записью на DVD.

    Телевизионные стандарты: описания, характеристика — краткое описание различных стандартов телевизионного вещания.

    50 кадров в секунду — описаны различные методы преобразования чересстрочного видео к виду «50 кадров в секунду».

    Как и из чего делать VCD/SVCD — подготовка записей к сжатию в форматы VCD/SVCD.

    DivX: особенности сжатия видео в домашних условиях — моя прошлогодняя статья, в которой рассказывается о некоторых особенностях работы с видео, в частности описаны особенности выбора и настройки фильтров и кодера DivX.

    На английском языке

    Регулярное сравнение кодеров видео на сайте Doom9, последний раз проводилось в конце декабря 2003 года.

    Официальное руководство по DivX 5.2 — очень подробное описание настройки кодера, механизмов его работы, а также способов обработки и сжатия цифрового видео. Руководство отлично оформлено и иллюстрировано. Настоятельно рекомендуется к ознакомлению.

    XviD Options Explained — руководство по настройке кодера XviD. За последний год развития кодера этот документ практически не потерял своей актуальности.

    Использование пресетов mp3-кодера LAME — использование самого качественного на сегодня кодера звука в формат mp3. Статья написана два года тому назад, но актуальна до сих пор: система пресетов кодера LAME не претерпела изменений вплоть до последней версии 3.96.

    Программы

    Драйверы

    Microsoft DirectX — набор системных библиотек Windows для работы с аудио и видео, в том числе применяется при захвате видео.

    Альтернативные драйверы Ивана Ускова для карт оцифровки и захвата видео на базе чипа Conexant bt848/878. Разработаны для работы в паре с программой захвата видео iuVCR.

    Альтернативные драйверы Eduardo Jose Tagle для карт оцифровки и захвата видео на базе чипа Conexant bt848/878. Поддерживают захват видео с разрешением до 768×576 не только при помощи DirectShow, но и посредством Video for Windows (например, программой VirtualDub).

    kX Project — альтернативные драйверы для звуковых карт семейства Creative Live! и Audidgy.

    Кодеки
    Промежуточное сжатие видео

    HuffYUV — кодек, сжимающий видео без потерь. Наилучший вариант для промежуточного сжатия видео.

    Morgan Multimedia и Pegasus Imaging Corp. распространяют программные MJPEG кодеки, особенно популярен кодек от Pegasus (PICVideo MJPEG).

    DV кодеки

    MainConcept — самый популярный DV кодек, обеспечивает высокое качество изображения.

    Декодер от Cannopus — полезен, если вы не собираетесь сохранять записи в формат DV.

    Кодек от Panasonic: судя по всему, он какое-то время назад был доступен на японском сайте компании, потом его убрали, но добрые люди успели его скопировать.

    Финальное сжатие видео

    DivX — самый популярный на сегодня MPEG‑4 видео кодек, разрабатывается компанией DivX Networks.

    XviD — самый качественный на сегодня MPEG‑4 видео кодек, разрабатывается как проект с открытыми исходными кодами. Скачать последнюю версию можно с сайта Koepi.

    Альтернативные кодеки

    3ivX — фирменный набор кодеров: видео (MPEG‑4), звук (MPEG‑4 AAC), инструменты для поддержки контейнера MP4.

    libavcodec — библиотека для работы со всевозможными форматами сжатия звука и видео, декодирование и кодирование. Проект начал развивается под ОС Unix с открытыми исходными кодами, этот код используется многими программами под ОС Windows. Например, декодер ffDShow, проигрыватель Windows Media Player Classic, набор кодеков ffvfw.

    Mpegable — мало известный MPEG‑4 кодер, описание его см. в статье Хорошие и плохие стороны кодека Mpegable MPEG-4, рекомендации и советы по использованию.

    Nero Digital — MPEG‑4 кодер, также кодер AAC, поддержка контейнера MP4.

    On2 — автор и издатель многообещающего кодека VP6, который обеспечивает высокое качество изображения при достаточно малых потоках данных (см. статью On2 VP6 6.2 (VP62) — 10 тысяч метров, полет нормальный).

    RealVideo — долгожитель в мире кодирования видео выпускает всё новые и новые версии кодеров: версии 9 и 10 основаны на технологии MPEG‑4, 10‑я версия сейчас готовится к выпуску.

    Windows Media Video — дальнейшее развитие линии MPEG‑4 кодеров от Microsoft.

    Программы для захвата видео

    iuVCR — безусловный лидер среди программ захвата видео.

    TheFlyDS — популярная программа для просмотра и записи ТВ программ при помощи карты ТВ приёмника. Позволяет также производить захват видео.

    FlyCap и FlyDS — небольшие простые программы для захвата видео — используют Video for Windows и Direct Show соответственно.

    Редактирование видео

    VirtualDub — самая популярная программа для несложного монтажа видео.

    VirtualDubMod — модификация программы VirtualDub, которая значительно расширяет её функциональность. По популярности уже переплюнула базовую программу.

    Юрий Мильто перевёл интерфейс VirtualDub и VirtualDubMod на русский язык.

    AviSynth — необычная программа по обработке видео, управляемая при помощи файлов сценария (scripts). Имеет определённую популярность среди энтузиастов, для AviSynth разработано много фильтров.

    Windows Movie Maker — несложный редактор, который предоставляет базовые возможности по редактированию видео. Программа входит в состав Windows XP или может быть бесплатно скачана с сайта Microsoft.

    Фильтры для VirtualDub

    Описание стандартных фильтров VirtualDub’а — часть статьи про VirtualDub, описывающая действие стандартных фильтров (на русском языке).

    Подборка фильтров для VirtualDub с краткими описаниями на сайте Zvёzdные тропки.

    Сайт Donald’а Graft’а — автора многочисленных фильтров для VirtualDub и AviSynth. Кроме авторских разработок на этом сайте собрано много других полезных фильтров.

    Chroma Noise Reduction — полезный фильтр, убирающий шум в цветовой составляющей видеосигнала (это характерно для аналоговых видеозаписей).

    QS Deinterlace — лучший на сегодня фильтр для устранения артефактов чересстрочности для VirtualDub.

    rmPal — фильтр для устранения искажений, характерных для PAL видеосигнала.

    Subtitler — фильтр для добавления к видеозаписи субтитров в формате SSA, используется для создания «внутренних субтитров».

    Tenporal Cleaner — быстрый и достаточно эффективный фильтр для подготовки видеозаписи к MPEG сжатию.

    Wavelet Noise Reduction — перспективный фильтр для подавления шумов в видеозаписи, использующий нетрадиционную технологию: вейвлеты (wavelets).

    YATS — Yet Another Temporal smoother — лучший фильтр для подготовки видео к MPEG сжатию.

    Программные проигрыватели видео

    BS Player — популярный проигрыватель, множество сервисных функций.

    DivX Player — проигрыватель, разработанный DivX Networks, содержится в пакете установки кодека DivX. Единственная программа, которая поддерживает аппаратное ускорение пост-процессинга видео в формате DivX на видеокартах ATI Redeon 9500 и старше.

    Light Alloy — очень популярный проигрыватель.

    Sasami 2000 (Sasami2k) — популярный 2-3 года тому назад проигрыватель, содержит множество фильтров для обработки видео и звука.

    Windows Media Player Classic — встроенная поддержка форматов MPEG‑1, AC3, DTS, контейнеров OGM и Матрёшка. Воспроизводит видео в форматах RealVideo и QuickTime.

    Zoom Player — самый сложный и функциональный проигрыватель видео.

    Дополнительные фильтры для воспроизведения

    AC3Filter — декодер звука в формате AC3. Очень гибкие настройки, поддержка любой конфигурации акустической системы.

    DivXG400 — изначально этот фильтр был создан для обхождения ошибки драйверов видеокарт семейства Matrox G400, позже получил ряд дополнительных свойств: изменение частоты кадров, обрезание краёв широкоэкранного видео, отображение субтитров.

    ffDShow – универсальный декодер, основанный на библиотеке libavcodec. Поддержка множества форматов видео (DivX версии 3, 4 и 5, XviD, MPEG‑1 и 2, Microsoft MPEG‑4 (v. 1, 2, 3), MJPEG, HuffYUV, Cinepack, Indeo) и звука (mp2, mp3, AC3, AAC, WMA 1 и 2). Также содержит много фильтров для обработки изображения — deinterlace, яркость/контрастность, добавление или убирание шума, размытие, увеличение резкости и так далее. В интернете также можно скачать свежую альфа версию этого декодера.

    Matroska splitter — набор программ для воспроизведения видеозаписей в формате Матрёшка (mkv).

    Ogg/OGM DirectShow filter — набор программ для воспроизведения видеозаписей в формате OGM со звуковой дорожкой в формате Ogg Vorbis.

    VobSub — фильтр для отображения субтитров, поддерживает множество различных форматов.

    Другие программы
    Сведение (мультиплексирование)

    AVIMux_GUI — программа для сведения (muxing) видеозаписей, поддерживает несколько звуковых потоков и субтитры, форматы контейнеров: AVI и Матрёшка. Содержит ряд сохранённых установок (presets) для совместимости с различными аппаратными MPEG-4 проигрывателями.

    OGM mux — утилита для сведения в формат Ogg (OGM, Ogg Media File).

    Matroska mux — утилита для сведения в формат Матрёшка.

    VirtualDubMod — модификация программы VirtualDub, которая значительно расширяет её функциональность. В частности содержит поддержку контейнеров OGM и Матрёшка, расширена штатная поддержка AVI (несколько звуковых дорожек, субтитры).

    Создание и редактирование субтитров

    Subtitles Workshop — самый популярный и достаточно удобный редактор субтитров.

    Sub Station Alpha — редактор субтитров, поддерживающий все возможности формата SSA и содержащий ряд уникальных функций.

    Sub Studio SAMI — редактор субтитров, ориентированный на визуальное редактирование последовательности отображения субтитров. В качестве базового формата субтитров использует очень гибкий формат SAMI.

    Обработка звука

    Adobe Audition — звуковой редактор, который удобно использовать для редактирования звуковых дорожек видеозаписей.

    Кодер LAME — самый качественный на сегодня кодер звука в формат mp3.

    GoGo — самый быстрый кодер звука в формат mp3, построен на основе версии 3.88 кодера LAME.

    Ogg Vorbis — более совершенный, чем mp3, формат сжатия звука: обеспечивает лучшее качество при том же потоке данных.






    Дополнительно

    Захват, обработка и хранение видео с использованием ПК

    Захват, обработка и хранение видео с использованием ПК

    Технологический процесс

    Оцифровка и захват

    Первое, что нам необходимо сделать — это получить копию видеозаписи в цифровом виде на жёстком диске компьютера. Операция записи видео сигнала в цифровом виде носит название «захват видео» (video capture). Аналоговый видео сигнал предварительно нужно привести к цифровому виду — оцифровать. Процесс захвата и оцифровки видео происходит одновременно, потому часто эти термины используются как синонимы.

    Прежде, чем я продолжу рассказ о программах оцифровки видео, я упомяну о том, как реализуется захват видео в операционной системе Windows. Ещё в начале 1990–х годов операционная система Windows была оснащена подсистемой для работы с видео: Video for Windows (сокращённо VfW или V4W). VfW существует и в самых современных версиях Windows, успешно работает, и используется по сей день целым рядом программ.

    В конце 1990–х годов Microsoft разработала новую, более гибкую подсистему работы с видео, которая получила название DirectShow (с 7 –й версии она входит в состав DirectX). Подавляющее большинство новых программ использует именно эту подсистему (интерфейс) для работы с видео.

    Для нас важным является то, что в драйверах карты оцифровки видео может быть реализован только захват посредством DirectShow — некоторые современные карты имеют именно такие драйверы. Это делает невозможным использование программ оцифровки, которые используют интерфейс V4W для захвата видео. Популярная серия карт оцифровки на базе чипа Conexant имеет полную поддержку оцифровки через DirectShow и ограниченную через V4W — размер кадра ограничен 384×288 пикселями. (Справедливости ради отмечу, что существует вариант драйверов для таких карт захвата, в которых реализована возможность захвата полного кадра через V4W: от Eduardo Jose Tagle.)

    Следует понимать, что задача обеих подсистем не ограничивается только захватом видео. Каждая из подсистем создана для поддержки полного спектра задач по работе с видеозаписями: захват, запись, воспроизведение, копирование, редактирование. Используемый интерфейс нас будет интересовать в контексте именно захвата видео — есть ли поддержка со стороны драйвера карты захвата, в состоянии ли использовать этот интерфейс для захвата видео какая-либо программа? В то самое время, эта же программа может использовать другой интерфейс для других задач, например: запись видео в файл.

    Проблемы при захвате видео

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

    Если компьютер не успевает обрабатывать поступающий поток кадров, то часть кадров пропускается. Оцифровка видео и звука производится разными устройствами, потому пропуск кадров видео вызовет потерю синхронизации со звуковым сопровождением. 25 пропущенных кадров приведут к отставанию видеоряда относительно звукового сопровождения на 1 секунду, потому не рекомендуется сохранять записи с более чем 5–10 пропущенными кадрами: лучше провести захват заново. При помощи правильно настроенной системы можно захватывать многочасовые видеозаписи без единого пропущенного кадра.

    Формат контейнера AVI подразумевает постоянную частоту кадров по всей видеозаписи, то есть видеоряд и звуковое сопровождение синхронизируются единожды. Небольшое несовпадение реальной частоты кадров со средней частотой на сколько-нибудь больших отрезках времени приведёт к потере синхронизации: несовпадение уже в 200 мс легко заметно. Иногда возникает необходимость оцифровать запись, в которой частота кадров постоянно меняется, например старая видео кассета. В результате захвата такой записи в AVI‑файл вы обязательно получите рассинхронизацию: звуковое сопровождение будет то отставать от видео, то уходить вперёд. Единственно возможный вариант захвата подобных записей: использовать при захвате формат контейнера MPEG‑1/2: звук и видео синхронизируются много раз в течение записи, и за это короткое время не успевает накопиться заметная разница между видео и звуком.

    Оцифровка и захват звукового сопровождения

    При записи несжатого звука формата 48 кГц/16 бит/стерео поток данных составляет всего 187 Кбайт/сек. (0,67 Гбайт/час), а для моно звука — вдвое меньше. Такой потом данных несравнимо меньше потока данных видео, потому для записи звука настоятельно рекомендуется использовать формат без сжатия: PCM. Использование сжатия звука «на лету» является одной из самых распространённых причин появления рассинхронизации видео и звука в полученной записи.

    Звук в формате PCM также удобно использовать при монтаже видео: во–первых «кадры» звуковой записи имеют длительность намного меньше кадра видео, что позволяет точно разрезать и склеивать звук при разрезании и склеивании видео; во–вторых «кадры» звуковой информации не зависят один от другого — если отрезать начало звука, то его продолжение не изменится. Применяя какое-либо сжатие звука, мы лишаемся обоих преимуществ: например, в формате mp3 длина «кадра» равна 26 мс, а звук каждого последующего «кадра» зависит от предыдущего «кадра». (Применительно к формату звука PCM вместо термина «кадр» используется термин «отсчёт» или «сэмпл», для mp3 используют термин «блок»; здесь термин «кадр» использован только ради аналогии с видео.)

    Оцифровка и захват аналогового видео

    Каждая карта оцифровки видео комплектуется не только драйверами, но и набором программного обеспечения. Эти программы позволяют использовать различные возможности карты оцифровки — в том числе захват видео. Часто эти программы достаточно убоги как с точки зрения интерфейса или наличия дополнительных возможностей, так и с функциональной точки зрения (например, AverTV, которым комплектуется мой Aver–203, позволяет захватывать видео с максимальным разрешением лишь 720×576 и сжимает видео «на лету» лишь в форматы MPEG–1 или MPEG–2). Конкуренция на рынке карт оцифровки видео в последнее время стала настолько жёсткой, что производители этих устройств взялись в последнее время за голову и снабдили свою аппаратуру программами, которые по функциональности вполне могут конкурировать со специальными программами для захвата видео.

    iuVCR

    Самая популярная и распространённая программа для захвата видео — это iuVCR. Программа доступна для скачивания, как с английским, так и с русским интерфейсом. iuVCR использует DirectShow интерфейс для захвата видео. В этой программе реализовано, пожалуй, наибольшее количество сервисных возможностей. Программа обеспечивает полный спектр функций по оцифровке и захвату аналогового видео, а также способна захватывать цифровое видео. Автор программы — Иван Усков — написал свой вариант драйверов для карт захвата на чипе Conexant 848/878, который обеспечивает ещё больше возможностей, чем стандартные драйверы от производителей соответствующего оборудования. Автор iuVCR отлично разбирается в тонкостях оцифровки и захвата видео, его программа содержит ряд уникальных возможностей (например, альтернативный способ подсчёта кадров, который помогает качественно записать видео сигнал со слабыми синхронизирующими импульсами).

    Программа распространяется свободно только для тестового использования в течение 30 дней. Об этом вам напоминает окошко, которое появляется при запуске и закрытии программы. Если вы хотите использовать программу в дальнейшем — вам необходимо зарегистрировать свою копию программы, стоимость регистрации: 300 рублей.

    Я предпочитаю использовать именно эту программу для захвата как аналогового, так и цифрового видео. Правда, в некоторых системах она не работает: мне так и не удалось заставить её работать на компьютере с ATI Radeon 8500 VIVO. В таких случаях я использую VirtualDubMod.

    VirtualDub

    Самая популярная и распространённая программа для редактирования и несложного монтажа видео — VirtualDub — имеет также возможности по захвату оцифрованного видео. VirtualDub использует для захвата интерфейс V4W. Функциональность VirtualDub в области захвата видео существенно беднее iuVCR и интерфейс намного менее удобен — но в целом обеспечивает достаточно возможностей. В частности, есть поддержка записи сегментированного видео — то есть запись производится не в один большой файл, а набор файлов фиксированного размера (эта функция может использоваться, чтобы обойти ограничение на размер файла в файловой системе FAT32).

    Подробнее эта программа описана ниже, в разделе «Обработка видео».

    FlyTV

    Также очень популярно семейство программ FlyTV, написанные Сергеем Андыком. Основная программа — TheFlyDS — предназначена не только для захвата видео, а и для просмотра ТВ передач при помощи ТВ приёмника на карте захвата. Программа содержит массу сервисных возможностей: множество языков интерфейса (в том числе и русский), изменяемый внешний вид программы (skins), воспроизведение радио каналов — при помощи радио приёмника, deinterlace «на лету» во время просмотра или захвата, телетекст, вещание по локальной сети, скачивание программы ТВ передач через интернет. Стоимость программы FlyDS для граждан exUSSR составляет 250 руб., вы можете бесплатно испробовать программу в течение 30 дней.

    В области захвата видео функциональность программы явно уступает iuVCR, потому если вас интересует не столько комфортный просмотр ТВ программ на компьютере, сколько захват, то FlyDS — не ваш выбор.

    Тот же автор создал пару маленьких бесплатных программ, которые созданы специально для захвата видео: FlyCap и FlyDS, которые используют V4W и DirectShow интерфейс для захвата соответственно. Со своей основной задачей они достойно справляются, а вот дополнительные возможности у них очень бедны.

    Захват цифрового видео

    Как я уже упомянул выше, iuVCR поддерживает захват цифрового видео через интерфейс IEEE 1394 (FireWire). Также захват DV видео поддерживают многие современные видео редакторы: от простенького Windows Movie Maker (который входит в состав Windows XP или может быть бесплатно скачан с сайта Microsoft) до монстров типа Adobe Premiere или Ulead Media Studio. Если вы работаете только с захватом цифрового видео, то вам, возможно, не нужна вся функциональность iuVCR: выберите другую программу по душе.

    Сжатие

    Чтобы уменьшить потери качества, при захвате и монтаже записи используют специальные форматы сжатия: они сохраняют высокое качество даже при повторном применении, обеспечивают простой доступ к любому кадру видеозаписи, но используют очень много памяти.

    Для хранения видеозаписей применяют другие способы сжатия видео. Такие форматы сжатия используют специальные способы кодирования информации: вместо сохранения каждого кадра сохраняется только информация об изменившихся частях кадра (см. раздел «Типы кадров»). Это затрудняет доступ к произвольному кадру в видеозаписи, но позволяет достигнуть существенно большего сжатия информации. Также такие способы сжатия сохраняют меньше информации о деталях видеозаписи — что практически незаметно при однократном применении сжатия, но ведёт к появлению очень заметных артефактов при многократном применении такого способа сжатия.

    Таким образом, при монтаже используются способы сжатия, которые лучше сохраняют качество видеозаписи — но занимают очень большой объём памяти. Для хранения видеозаписей используются другие способы сжатия, которые обеспечивают неплохое качество записи и требуют существенно меньше памяти.

    Сжатие видео

    Рассмотрим разные кодеки — программы, которые позволяют кодировать и декодировать видео, используя какой-либо формат сжатия. Учтите, что «большие» графические редакторы содержат в своём комплекте ряд встроенных кодеков. В этом разделе будут описаны кодеки со стандартными интерфейсами, которые можно использовать в самых разных программах для работы с видео (захват, монтаж, редактирование). При захвате видео потоки данных достаточно велики, потому я буду приводить примерные значения в Мбайтах/сек и дублировать их в Гбайтах/час. Первая величина удобна для сравнения с пропускной способностью жёсткого диска. Вторая удобна для определения необходимого места на диске. Как легко подсчитать, эти величины пропорциональны с коэффициентом 3,5.

    Промежуточное сжатие видео

    Основные требования к промежуточному сжатию видео это: малое влияние на качество изображения даже при многократном повторном применении (в идеале — сжатие без потерь) и обеспечение простого и быстрого доступа к любому кадру (в идеале — каждый кадр сжимается независимо от других). Выполнение этих требований — залог высокого качества изображения и удобной работы при монтаже и редактировании видео.

    Несжатое видео

    При захвате видео с размером кадра 768 на 576 пикселей с платы оцифровки видео поступает поток данных примерно в 22 Мбайт/сек. (76 Гбайт/час) — и, соответственно 21 Мбайт/сек (73 Гбайта/час) при размере кадра 720 на 576. При захвате несжатого видео практически нет нагрузки на процессор компьютера, зато велика нагрузка на жёсткий диск. А главное — видео в таком виде занимает неоправданно много места. На практике в любительских условиях никто не работает с несжатым видео. Приведённые выше цифры вы можете использовать как предел сверху — как для необходимой скорости жёсткого диска, так и для необходимого для захвата места. Также, если ваша программа захвата вдруг показывает, что поток данных равен таким большим значениям, это означает наличие какой-то проблемы с видео кодером: реально у вас захватывается несжатое видео. В таком случае остановите захват и повторите настройку сжатия видео (возможно выбранный вами кодер видео не поддерживается программой захвата).

    HuffYUV

    Этот кодер идеально соответствует требованиям, которые перечислены в разделе «Промежуточное сжатие видео». Он сжимает каждый кадр отдельно при помощи одного из самых эффективных методов сжатия данных без потерь: методом Хаффмана (его также использует архиватор RAR). Хоть это нетипично для сжатия видео, но этот кодер обеспечивает сжатие данных совершенно без потерь. Правда, эффективность такого сжатия не очень велика: типичные потоки данных для HuffYUV — 10–13 Мбайт/сек (35–45 Гбайт/час). Учтите, что если часть кадра постоянно занимает однородный фон, то потребуется меньший поток данных: это касается записей широкоэкранных кинофильмов (с чёрными полосами сверху и снизу изображения). Кодек достаточно требователен к ресурсам компьютера: для захвата видео с размером кадра 768×576 нужен процессор не меньше 700 МГц. Автор — Ben Rudiak-Gould, последняя авторская версия — 2.1.1.

    Также в интернете доступна модифицированная версия от Klaus Post — 2.2.0. Мне не удалось заставить её работать: она создаёт файлы неправдоподобно малого размера (почти втрое меньше, чем версия 2.1.1), декодеры HuffYUV версий 2.1.1 и 2.2.0 зависают при попытке воспроизвести такой файл, декодер ffDShow показывает видеозапись, в которой большая часть кадра заполнена цветным мусором. (В конференции RU.MPEG сообщали о том, что эта версия кодера нормально работает при некоторых условиях: вы можете попробовать, будет ли она работать у вас.)

    MJPEG

    Идея этого метода кодирования достаточно проста: каждый кадр кодируется независимо от остальных, кадры сжимаются алгоритмом с потерями типа JPEG (который так широко используется для сжатия фотографий). Существует несколько реализаций алгоритма, в том числе и аппаратные: так, карта захвата Pinnacle Studio DC10+ выдаёт поток в формате MJPEG. Из программных реализаций наиболее распространены кодеки от Morgan Multimedia и Pegasus Imaging Corp. Кодек от Morgan специалисты не жалуют: и качество изображения у него похуже, и совместимость (не умеет декодировать некоторые MJPEG файлы). Кодек от Pegasus (PICVideo MJPEG) наоборот — очень популярен. Практически у него есть одна настройка: уровень качества (от 1 до 20). При захвате видео с целью получения максимального качества, как правило, используется уровень 19, поток данных при этом получается 5–7 Мбайт/сек. (17–25 Гбайт/час). При этом видео с размером кадра 768x576 можно захватывать на процессоре 450 МГц.

    Использовать самый большой уровень качества нет смысла: поток данных получается 12–17 Мбайт/сек. (40–60 Гбайт/час) — это больше, чем HuffYUV. При этом MJPEG сжимает с потерями, а HuffYUV — без потерь. Да и требования к процессору в таком режиме получаются больше, чем у HuffYUV.

    Вы можете использовать и меньшие значения уровня качества — при этом и поток данных, и загрузка процессора будут меньше. Но уже при уровне 18 артефакты сжатия становятся заметны на глаз: случайный шум в ТВ программах иногда вырождается в регулярные узоры (муар). При уровне 17 муар становятся постоянными.

    Уровень качества сжатия,
    кодер PICVideo MJPEG
    Типичный поток данных,
    Мбайт/сек (Гбайт/час)
    20
    12–17 (40–60)
    19
    5–7 (17–25)
    18
    3–6 (11–16,5)
    17
    2,5–4 (9–13)
    16
    2–3,5 (8–11)
    15
    1,8–2,8 (6,5–10)

    Кстати, VirtualDub содержит встроенный декодер формата MJPEG. Специалисты, правда, настоятельно рекомендуют не использовать его, а установить в систему кодек от Morgan или Pegasus.

    Pegasus недавно выпустили новую версию своего кодека: PICVideo MJPEG 3. Среди прочих новшеств этот кодек содержит пост-процессинг при декодировании видео: по аналогии с MPEG‑4 декодерами. Это позволит использовать более высокие степени сжатия видео при сохранении приблизительно такого же визуального качества изображения.

    MPEG–1, MPEG–2

    Мне не известны качественные MPEG–1 или MPEG–2 кодеры со стандартным DirectShow или V4W интерфейсом, которые бы можно было установить в систему и использовать из всех программ по работе с видео. Потому ниже пойдёт речь про MPEG кодеры, которые встроены в программное обеспечение карты захвата — как правило, они позволяют сохранять видео в формате MPEG–1 и MPEG–2. Также более дорогие карты захвата имеют встроенные MPEG-кодеры, они способны проводить сжатие видео «на лету» аппаратно, передавая системе для записи уже готовый MPEG поток.

    Стандарт MPEG–1 предусматривает потоки данных до 1,5 Мбит/сек для видео (лишь 188 Кбайт/сек) при разрешении до 384×288 — потому его не разумно применять для захвата видео в виду исключительно низкого качества. На практике, правда, некоторые программы захвата игнорируют эти ограничения и способны создавать MPEG-1 потоки с большими размером кадра и шириной потока данных: AverTV из комплекта поставки карты Aver203 может создать MPEG-1 видео с потоком вплоть до 20 Мбит/сек (2,5 Мбайт/сек, 9 Гбайт/час) и размером кадра 768×576. Полученный файл, конечно, не соответствует стандартам — однако VirtualDub вполне в состоянии его прочитать.

    Формат MPEG-2 формально имеет ограничение в 40 Мбит/сек., однако, конкретные программные реализации MPEG-2 кодеров, как правило, ограничены ещё меньшими потоками. Упомянутый выше AverTV ограничен 20 Мбитами/сек, ATI Multimedia Center имеет ограничение в 15 Мбит/сек. (2 Мбайта/сек, 7 Гбайт/час). Учтите, что VirtualDub не в состоянии читать файлы MPEG-2. VirtualDubMod имеет дополнительную надстройку, которая позволяет открывать ему файлы с MPEG-2 видео.

    Во время захвата видео кодеры MPEG-1 и MPEG-2 кодируют видео в режиме с постоянным потоком данных (CBR) и с постоянным видом группы кадров (GOP). Как было сказано в разделе «Поток данных (bitrate)» — это не оптимальный режим для метода сжатия с потерями. Группу кадров лучше сделать достаточно короткой (3-5 кадров), двунаправленные кадры не использовать вовсе (см. также раздел «Группы кадров»). Вы можете даже использовать только ключевые кадры — кодер будет работать в режиме, подобном MJPEG. Однако специалисты указывают на то, что иногда кодеры даже при больших потоках данных допускают артефакты, особенно это заметно для цветовой составляющей (см. Видеокарты от ATI с видеовходом: Лучшие возможности для оцифровки видеозаписей).

    MPEG-4

    Использовать MPEG-4 кодеры при захвате видео практически бессмысленно: DivX 5.1.1 в режиме 1-pass quality based (fastest, quality: 1, max keyframe interval: 1) создаёт поток такой же ширины, как и PICVideo MJPEG с качеством 19, при этом потребляет втрое больше мощности процессора. Возможно, в каких-то компромиссных вариантах — с низким качеством, небольшим размером кадра — DivX и можно использовать. Но в любом случае, он потребляет уйму вычислительных ресурсов. Если вы собираетесь сжимать в DivX видео с размером кадра 768×576 «на лету» — запаситесь процессором как минимум в 2ГГц. Очевидно, что с XviD ситуация аналогичная.

    DV

    Цифровые камеры используют свой формат сжатия видеозаписей — DV (Digital Video). Технически он схож с MJPEG, но не совместим с ним. Формат DV содержит дополнительные возможности, как то: наложение титров (удобно для видеокамер: подпись к записи записывается отдельно изображения, а не поверх него), специальный способ синхронизации аудио и видео информации. Поток данных DV имеет постоянную ширину: 3,6 Мбайт/сек (12,5 Гбайт/час).

    Существует несколько программных кодеков формата DV, более того: DirectX 6 и новее стандартно содержат DV кодек — правда он поддерживает только DirectShow интерфейс (соответственно VirtualDub не в состоянии его использовать). Тем не менее, специалисты рекомендуют использовать кодек от MainConcept: он обеспечивает корректную цветопередачу, более высокое качество изображения, а также менее ресурсоёмок. На сайте доступна демонстрационная версия, полная версия стоит $49. Декодер от Cannopus поддерживает только декодирование. Также в интернете можно найти кодек от Panasonic: судя по всему, он какое-то время назад был доступен на японском сайте компании, потом его убрали — но добрые люди успели его скопировать.

    Мне неизвестно, какой из этих кодеков лучше и почему — я совсем мало имею дела с цифровыми камерами и DV. За информацией по работе с DV рекомендую обратиться к сайту М. Афанасенкова или к FAQ по созданию и редактированию цифрового видео.

    Что же выбрать?

    Если ваша карта захвата способна выдавать оцифрованное видео только в закодированном виде, то вам не нужно его сжимать как-либо ещё: достаточно сохранить уже сжатое чипом карты захвата. Так, если вы используете плату Miro VIDEO DC30, нет никакого смысла сохранять полученное MJPEG видео даже сжатым без потерь (HuffYUV) — нужно сохранить MJPEG, который выдаёт карта захвата. При захвате цифрового видео его нужно сохранять в исходном виде — в формате DV.

    Если ваша карта захвата выдаёт несжатое видео — лучше всего его сохранять без потерь, применяя сжатие HuffYUV. Поскольку этот метод использует сжатие без потерь, вы можете применять это сжатие при многих последовательных операциях.

    Если у вас не так много места на жёстком диске — используйте Pegasus MJPEG с уровнем качества 19. Качество такого сжатия очень высокое: не смотря на то, что MJPEG сжимает с потерями, на глаз этого абсолютно незаметно.

    Оригинальное изображение
    Кадр, сжатый Pegasus MJPEG, качество: 19.

    Тем не менее, не стоит применять MJPEG сжатие много раз подряд: за счёт накопившихся погрешностей могут возникнуть заметные артефакты. Возьмите за правило: не более 2 пережатий в MJPEG.

    Если у вас мало места на жёстком диске — используйте MJPEG с более низкими уровнями качества. Также вы можете попробовать использовать MPEG, но эти методы достаточно требовательны к процессору (причём MPEG-4 более ресурсоёмок, чем MPEG-2, а MPEG-2 более сложен, чем MPEG-1) и не на много лучше MJPEG по качеству сжатия (если вообще лучше).

    Вам следует помнить, что если при подготовке видеозаписи несколько раз последовательно применялось сжатие с потерями, то достаточно заметно падает качество изображения. Алгоритмы MPEG не рекомендуется использовать в качестве промежуточных для захвата, обработки и редактирования видео.

    Финальное сжатие видео

    Методы финального сжатия видео должны обеспечивать высокую степень сжатия — возможно, с потерей информации. Современные кодеры используют специальные алгоритмы, которые призваны сделать искажения видео (артефакты) как можно менее заметными при воспроизведении. Также для проигрывания видео достаточно лишь последовательного доступа к кадрам видеоряда: доступ к произвольному кадру, как правило, сопряжён с большими задержками. Ещё одно преимущество таких способов сжатия видео: возможность задать размер видеозаписи в сжатом виде. Для использования этой возможности нужно рассчитать среднюю ширину потока данных (bitrate), до которой вы хотите сжать полученное видео. Рассчитать необходимое значение можно при помощи обычного калькулятора, однако удобнее это делать при помощи специальных программ: bitrate calculator. Кодеки DivX Pro и XviD содержат встроенные bitrate calculator’ы.

    DivX 5.2 Pro

    Кодек поддерживает как двухпроходный режим, так и использование однопроходного режима с постоянным качеством вместо первого прохода (см. раздел «Однопроходное сжатие»).

    Перед началом настройки кодера рекомендуется сбросить все установки: Restore Defaults. После этого нужно выбрать режим сжатия: Encoder mode — Multipass, 1st pass или Nth pass. При последнем проходе нужно указать необходимый битрейт, который определит размер сжатой видеозаписи. На первых проходах можно указывать любой другой битрейт, но рекомендуется, чтобы он отличался от конечного значения не более чем вдвое (в любую сторону).

    Следующий важный параметр: Encode Performance. Рекомендуется использовать Standard или Slow.

    При помощи движка Bitrate modulation вы можете дать рекомендацию кодеру, какие сцены сжимать с более высоким качеством: статичные (low-motion) или динамичные (high-motion). Выбор варианта определяется вашими предпочтениями, по умолчанию все сцены сжимаются с одинаковым уровнем качества.

    При помощи кнопки Select… вы можете выбрать имя файла, куда кодером на первом проходе будет записан результат анализа видеоряда (log file).

    На закладке Video вы можете включить использование системы психовизуальных улучшений (Psychovisual Enhancements: Fast или Slow, что соответствует двум разным вариантам алгоритма — ни один из них не даёт явно более качественного сжатия, но первый быстрее). При помощи настроек Crop вы можете обрезать края кадра видеозаписи, при помощи Resize — изменить размер кадра. Source Pre-processing включает дополнительную обработку видео перед сжатием, что иногда удобнее делать средствами редактора видео. При помощи переключателя Interlace вы можете включить режим сохранения чересстрочного видео: Preserve Interlace. Для прогрессивного видео следует указать Progressive source. Scene change threshold позволяет корректировать чувствительность алгоритма детектирования смены сцены: не рекомендуется использовать значения менее 40% или более 60%. Параметр Max Keyframe interval позволяет ограничить сверху максимальное расстояние между двумя ключевыми кадрами: чем меньше это число, тем быстрее будет осуществляться перемотка видеозаписи. Однако использование слишком большого числа ключевых кадров существенно ухудшит качество сжатия: MPEG-4 позволяет сжимать видео так хорошо именно при помощи использования большого числа промежуточных и двунаправленных кадров.

    Разного рода дополнительные возможности становятся доступными лишь после отключения DivX Cerfitied Profile:нажмите Select DivX Cerfitied Profile, отключите DivX Certified, нажмите Next. В следующем окне вы сможете включить использование более чем одного двунаправленного кадра подряд (Bidirectional encoding: Adaptive Multiple Consequtive — рекомендуется), компенсации движения (GMC — рекомендуется не включать) или четвертьпиксельной точности расчёта векторов движения (Quarter Pixel — рекомендуется не включать). Также после отключения DivX Cerfitied Profile становятся доступны 1-проходный режим сжатия с постоянным уровнем качества (Encoder mode: 1-pass quality-based) и MPEG матрица квантования (закладка Video, Quantization Type: MPEG-2 — рекомендуется использовать только при высоких битрейтах).

    При помощи кнопки Settings вы можете сохранять варианты настройки кодера (preset) или же загружать варианты, сохранённые ранее. Здесь же вы можете настроить некоторые параметры кодера: отключить выдачу кодером сообщений об ошибках и предупреждений (Do not prompt with errors and warnings); включить смену рекламных сообщений (Rotate artwork and product information); включить автоматическую проверку наличия новых версий кодека через интернет при каждом запуске (Always check for new version at startup). Тут же можно отключить окно с состоянием процесса кодирования видео (Disable the feedback window) — его удобно использовать для подтверждения того, верные ли настройки кодера вы используете. Также вы можете «на лету» корректировать настройки кодера, хотя обычно это делать не рекомендуется. Учтите, что отображение состояние процесса кодирования на треть снижает скорость сжатия видео — потому чаще его лучше отключать. Версия 5.2 содержит поддержку многопроцессорности и технологии HT: отображение окна состояния кодера ложится на второй процессор и не замедляет процесс кодирования видео.

    Учтите, что последняя версия — DivX 5.2 — содержит ряд недоработок.

    XviD 1.01

    Кодек поддерживают как двухпроходный режим, так и использование однопроходного режима с постоянным качеством вместо первого прохода (см. раздел «Однопроходное сжатие»).

    Перед началом настройки кодера рекомендуется сбросить все установки: Load Defaults. После этого нужно выбрать режим сжатия: Encoder type — Twopass, 1st pass или 2nd pass. При втором проходе нужно указать необходимый битрейт, который определит размер сжатой видеозаписи.

    При помощи верхней кнопки More… вы попадёте в окно настройки расширенных возможностей стандарта MPEG-4. Тут можно выбрать матрицу квантования (Quantization type: для высоких битрейтов рекомендуется MPEG, иначе — H.263), включить использование системы психовизуальных улучшений (Adaptive Quantization), четвертьпиксельной точности (Quarter Pixel), глобальной компенсации движения (Global Motion Compensation), сохранение чересстрочного видео (Interlaced encoding), использование двунаправленных кадров (B-VOPs). Не рекомендуется изменять настройки по умолчанию, кроме типа матрицы квантования и Adaptive Quantization — по крайней мере, если вы не знаете точно, что вы делаете.

    На закладке Aspect Ratio вы можете указать соотношение сторон обрабатываемого видеоряда: эта информация будет записана в сжатый видеоряд в соответствии со стандартом MPEG‑4. К сожалению, большинство программ-проигрывателей просто игнорируют эту информацию и показывают видео так, как будто пиксели видеоряда квадратные (имеют соотношение сторон 1:1).

    При помощи второй кнопки More… вы попадёте в окно настройки режима сжатия: тут можно выбрать имя файла, куда кодером на первом проходе будет записан результат анализа видеоряда (log file).

    Кнопка Advanced Options… позволяет настроить дополнительные параметры кодера. На закладке Motion собраны параметры алгоритмов выявления движения объектов в кадре: точность алгоритма (Motion search precision) и режим высокого качества (VHQ mode). Рекомендуется использовать варианты алгоритмов с наибольшими номерами: самые медленные, но обеспечивающие максимальное качество. Переключатель Use chroma motion управляет режимом поиска движения: использовать цветовые составляющие видеозаписи или только яркостную (рекомендуется включить). Режим Turbo включает использование более быстрых, но менее точных расчётов: решайте сами, что для вас важнее — качество без компромиссов или же скорость кодирования. Maximum I-frame interval позволяет ограничить сверху максимальное расстояние между двумя ключевыми кадрами: чем меньше это число, тем быстрее будет осуществляться перемотка видеозаписи. Однако использование слишком большого числа ключевых кадров существенно ухудшит качество сжатия: MPEG-4 позволяет сжимать видео так хорошо именно при помощи использования большого числа промежуточных и двунаправленных кадров. Переключатель Cartoon mode включает использование специально оптимизированного для мультфильмов режима.

    Закладка Quantization посвящена параметрам алгоритмов квантования. Рекомендуется не ограничивать диапазон коэффициентов квантования и оставить его 1—31 для всех типов кадров: кодер достаточно умён, чтобы выбирать оптимальные коэффициенты квантования самостоятельно. Тут же рекомендуется включить использование интеллектуального алгоритма выбора вариантов кодирования на основании оценки соотношения «качество/размер» (Trellis Quantization).

    На закладке Debug в разделе Performance optimizations вы можете проверить: правильно ли кодер определил набор инструкций, поддерживаемый вашим процессором? В случае ошибок автоматического определения вы можете вручную задать использование нужного набора. Параметр Print debug info on each frame позволяет выводить отладочную информацию по каждому кадру сжимаемого видео: это полезно для разработчиков и тестеров кодера. Параметр Display encoding status позволяет отображать окно с состоянием процесса кодирования видео: его удобно использовать для определения, верные ли настройки кодера вы используете? С другой стороны, отображение состояние процесса кодирования несколько снижает скорость сжатия видео — потому обычно его лучше отключить. При помощи параметра FourCC used вы можете указать желаемый декодер для декодирования вашего видео: XviD, DivX 4 (DivX) или DivX 5 (DX50). В определённых режимах кодер XviD способен производить видеоряд, на 100% совместимый с разными версиями декодера DivX (или же аппаратными MPEG‑4 проигрывателями), однако рекомендуется использовать «родной» код XviD.

    Кодек XviD содержит уникальную возможность: зональное кодирование. Вы можете указать кодеку несколько зон в сжимаемом видео, к каждой из которых можно применить свой набор параметров. Зоны определяются по номеру кадра, с которого она начинается: заканчивается зона либо с началом следующей зоны, либо с окончанием видеоряда. Для каждой зоны можно указать её относительную важность — «вес» (Weight) — так, зона с весом 0,25 будет закодирована с качеством в 4 раза ниже, чем зона с весом 1,00. В качестве альтернативы вы можете потребовать сжатия зоны в режиме с постоянным качеством: укажите нужный коэффициент квантования (Quantizer). Это очень удобно для сжатия менее важных частей видеоряда, например титры кинофильма. Также вы можете потребовать у кодера начать зону с ключевого кадра (Begin with keyframe — это удобно, если вам может понадобиться быстрая перемотка на начало зоны или же возможность разрезать видеоряд по границе зон), включить режим кодирования чёрно-белого изображения (Greyscale encoding, настоятельно рекомендуется включать этот режим для чёрно-белых записей и даже фрагментов: в противном случае вы рискуете получить тёмно-зелёные пятна в сжатом ч/б видео), использовать специальный фильтр, сглаживающий чёткие границы объектов (Chroma optimizer — уменьшает эффект «лестницы», использовать по вкусу), использовать больше или меньше двунаправленных кадров (BVOP sensitivity, соответственно значения больше или меньше нуля).

    В последней версии — 1.01 от 5 июня 2004 года — исправлен ряд ошибок, которые приводили к незначительному ухудшению качества сжатого видео.

    Сжатие звука

    Для сжатия звука к обработанной видеозаписи вы можете воспользоваться различными кодерами.

    MPEG-1 layer 3 (mp3)

    Для сохранения звука в AVI традиционно используют формат сжатия звука mp3. Лучший на сегодня кодер mp3 — безусловно, LAME (актуальная версия — 3.96). Про использование этого кодера несколько лет тому назад мною была написана статья, которая актуальна и по сей день: Использование пресетов mp3-кодера LAME.

    Разработчик популярного кодека mp3 — Fraunhofer Institute — сообщает о готовящемся выпуске нового варианта этого формата MP3 Surround с поддержкой многоканального звука. Предыдущая доработка формата mp3 — MP3 Pro — не обеспечивает должного качества звучания и потому не пользуется большой популярностью.

    Сжатие звука при помощи LAME

    Для сжатия звука рекомендуется использовать режим ‘preset <bitrate>’, для моно записей средний поток данных имеет смысл задавать около 60 Кбит/сек для обычных записей, 70‑80 для качественных записей (музыка, концерты) и 45-50, если в записи присутствует только речь. Стерео записи следует сжимать с потоком от 90 до 130 Кбит/сек — тем больше, чем более сложный звук записан. Для того чтобы LAME не передискретизировал звук при среднем потоке менее 60 Кбит/сек, дополнительно указывайте ключ «resample 48» (или другую частоту — должна равняться частоте дискретизации вашего файла).

    Возможно, вы захотите сжать звук с постоянным потоком данных — например для совместимости с аппаратными MPEG‑4 проигрывателями. В таком случае используйте режим «preset cbr <bitrate>», а значение ширины потока данных должно быть выбрано из набора: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320.

    Ogg Vorbis

    Формат сжатия Ogg Vorbis обеспечивает качество звука лучше, чем mp3 даже при небольших потоках данных, а также сжатие не только моно и стерео фонограмм, но и многоканального звука (как, например, 5.1 на видео DVD). Однако для того, чтобы использовать его в видеозаписи, вам нужно обязательно сохранять видео в контейнер OGM или Матрёшка (см. раздел «Формат контейнера видеозаписи»).

    MPEG-4 AAC

    В последнее время приобретает всё большую популярность формат сжатия звука MPEG-4 AAC (advanced audio coding), который примерно вдвое эффективнее mp3 или Ogg Vorbis, поддерживает не только моно и стерео фонограммы, но и многоканальный звук (как, например, 5.1 звуковые дорожки на DVD). Сегодня в интернете несложно найти целый ряд программ-кодеров для формата AAC, сравнения качества этих кодеров и другую информацию.

    Вам нужно учитывать, что не все аппаратные проигрыватели поддерживает звуковые дорожки с переменным потоком данных (VBR), потому возможно ради совместимости с аппаратными проигрывателями вы предпочтёте использовать режим сжатия звука с постоянным потоком данных (CBR) — подробнее см. раздел «Формат контейнера видеозаписи».

    Сведение видео и звука (muxing)

    При использовании контейнера AVI, для того, чтобы свести (mux) результирующую видеозапись вы можете использовать практически любой редактор видео (пожалуй, только Windows Movie Maker не поддерживает AVI: он сохраняет лишь WMV файлы). Если же вы намерены использовать контейнер OGM или Матрёшка, то вам понадобится специальная программа (OGM mux утилита или утилиты для Matroska mux). В качестве альтернативы вы можете использовать VirtualDubMod или AVIMux_GUI — универсальную программу для mux/demux видеозаписей. Также эти программы допускают включение нескольких звуковых дорожек и/или нескольких вариантов субтитров в конечный файл с видеозаписью.

    Обработка

    Полученная в результате оцифровки и захвата видеозапись, как правило, мало пригодна для хранения: разрешение неоправданно завышено (см. «Разрешение и чёткость изображения»), в изображении присутствуют характерные для аналоговых записей шумы и искажения, размер полученного файла огромен. Поэтому видеозапись требует некоторой обработки: устранение артефактов чересстрочности, уменьшение разрешения, устранение шумов.

    Для простого редактирования и монтажа видео — вырезать несколько фрагментов, склеить несколько записей и т. п. — вам вполне хватит VirtualDub’а. Если же вы хотите чего-то большего — используйте редакторы видео. Самый простой из них — Windows Movie Maker, который входит в состав Windows XP или может быть бесплатно скачан с сайта Microsoft. Среди других можно назвать Pinnacle Studio 9, Ulead Media Studio и Adobe Premiere. Все они отличаются функциональными возможностями, скоростью работы и количеством поставляемых фильтров (ко всем программам существуют дополнительные фильтры, которые можно найти в интернете).

    Сложные видео редакторы в силу чрезмерной универсальности выполняют типовые задачи достаточно медленно: типовую обработку видеозаписи с DV камеры VirtualDub выполняет в 8 раз быстрее, чем Adobe Premiere 7. Потому предварительную обработку видео имеет смысл произвести при помощи простой программы (VirtualDub), а в «большом» редакторе — собственно редактировать и монтировать.

    Описывать процесс редактирования видео я не буду по нескольким причинам. Во–первых, я никогда этим не занимался — кроме 2–3 попыток простенького оформления (вроде добавления титров). Во–вторых, в интернете есть масса материала, описывающего работу с «большими» видео редакторами. В–третьих мне кажется, что сложное редактирование видео имеет куда больше общего с творчеством, чем с технологией.

    VirtualDub, VirtualDubMod

    Эта программа была создана специально для обработки видео: взять исходный файл, применить к нему несколько преобразований, сохранить в выходной файл. Программа долгое время развивается, и на сегодня представляет собой самый мощный и гибкий инструмент в своём классе. VirtualDub также позволяет произвести несложное редактирование видеозаписи — вырезать ненужный фрагменты, склеить несколько файлов и т. п. Автор программы — Avery Lee, последняя версия — 1.5.10.

    Некоторое время назад автор программы опубликовал исходные коды своей программы. На основе этого кода возник проект VirtualDubMod, который расширяет функциональность программы VirtualDub: поддержка нескольких звуковых дорожек, поддержка контейнеров OGM и Матрёшка, чтение MPEG–2 видео и так далее. Рекомендуется всегда использовать не VirtualDub, а его расширенный вариант VirtualDubMod — он содержит множество функциональных улучшений, что очень удобно. Последняя версия — 1.5.10.1.

    VirtualDub на русском

    Поскольку программы VirtualDub и VirtualDubMod пользуется огромной популярностью, актуален вопрос перевода интерфейса этой программы на русский язык. Мне известен перевод Юрия Мильто (последние версии VirtualDub и VirtualDubMod) и перевод некоего Stevens Inc., который, во-первых, основан на переводе Юрия, а во-вторых, не подходит к последним версиям. Оба этих перевода выполнены любительским способом путём подмены сообщений в запускаемом файле программы: этот подход неудобен тем, что после выхода каждой новой версии, нужно ждать, пока переводчик сделает перевод для новой версии.

    Фильтры

    Собственно обработка видеозаписи производится фильтрами (filter) — небольшими программами, которые при помощи стандартного интерфейса подключаются к редактору видео. Как правило интерфейс подключения фильтра уникален для каждой программы. Все редакторы видео содержат в комплекте некоторый базовый набор фильтров, VirtualDub не исключение. Но часто лучших результатов можно достигнуть, используя фильтры, которые создают сторонние разработчики. Потому для процесса обработки видео важна не только программа обработки видео, а ещё и набор используемых фильтров.

    Ниже приводится описание полезных фильтров для VirtualDub, которые могут вам пригодиться при обработке видеозаписей. Стандартные фильтры подробно описаны в файле справки VirtualDub (кстати, его нет в поставке VirtualDubMod — ради справки рекомендую скачать VirtualDub). Если вы не дружите с английским — посмотрите описание стандартных фильтров VirtualDub’а на сайте TV&FM тюнеры.

    Замеры скорости работы фильтров достаточно условны, но, тем не менее, они дают представление о скорости работы. Тестовый файл в формате MPJEG пережимается без применения фильтров в формат MPJEG со скоростью 42 кадра в секунду. Для примера будет указано значение скорости обработки с применением единственного фильтра.

    2D Cleaner

    Фильтр несколько размывает изображение в равномерно окрашенных областях: таким образом, границы объектов остаются резкими, а различный шум поверх объектов убирается. Достаточно быстрый (10,5 к/с), но способен убирать лишь лёгкий и нерегулярный шум. Слегка размывает изображение. Фильтр не пригоден для исправления достаточно заметных и регулярных дефектов изображения: если попробовать использовать большие значения параметров, то изображение получится сильно размытым (см. подробнее DivX: особенности сжатия видео в домашних условиях). Актуальная версия — 2D Cleaner optimized (0.9), авторы: Jim Casaburi и Jaan Kalda.

    Chroma Noise Reduction

    Очень полезный фильтр для обработки записей аналоговых видео сигналов. При кодировании аналогового сигнала особое внимание уделяется кодированию яркостной составляющей сигнала, а цветовая составляющая сохраняется с намного меньшим качеством. Этот фильтр устраняет шумы в цветовой составляющей, не меняя яркостной. Эффект более всего заметен на ярких областях изображения: небо, например, приобретает равномерную окраску, без цветных полос. Однако необходимо внимательно настраивать этот фильтр, поскольку при неверных настройках он даёт заметные артефакты: множатся контуры движущихся тёмных объектов на ярком фоне. Фильтр заменяет стандартный «TV: chrominance average», и даёт намного лучшие результаты (за счёт использования более разумного метода устранения шумов, чем простое усреднение). Скорость — 18,5 кадров в секунду. Последняя версия — 1.1, автор — Gilles Mouchard.

    DeLogo

    Фильтр предназначен для удаления из изображения статических объектов, например логотипа телеканала, наложенный поверх видео. Более того, фильтр даже умеет удалять полупрозрачные логотипы, используя информацию об изображении, которая «просматривается» сквозь полупрозрачный логотип. Скорость работы очень сильно зависит от размера логотипа. Последняя версия — 1.3.2, автор — Karel Suhajda.

    Dynamic Noise Reduction

    Ещё один полезный фильтр для очистки записей аналоговых видео сигналов. Убирает мелкий и подвижный шум, которого обычно немало в таких записях (21 кадр в секунду). Актуальная версия — 2.1, автор — Steven Don.

    End Credits

    Фильтр реализует оригинальную идею по преобразованию подвижного изображения в набор стоп-кадров. Очевидно, что набор стоп-кадров можно гораздо эффективнее сжать. Авторы предлагают использовать этот фильтр для сжатия финальных титров в кинофильмах — вместо прокручивающегося текста вы получите набор статических кадров. При достаточном количестве фантазии этот фильтр возможно применять как-либо ещё. Актуальная версия — 1.0, авторы — И. Антипов и С. Корбут.

    Hue, Saturation, Intensity

    Позволяет регулировать тон, цветность и насыщенность изображения (24 кадра/сек). Версия — 1.2, автор — Donald Graft.

    QS Deinterlace

    Лучший, пожалуй, на сегодня фильтр для deinterlace чересстрочного видео. Основан на коде фильтра Smart Deinterlace от Donald Graft, но превосходит его по качеству результата. Автор также обещает преимущество в скорости на компьютерах поколения Intel Pentium IV/AMD Athlon; на моём Pentium III скорость работы чуть ниже оригинала: 12 к/с против 13 к/с. Последняя версия — 1.0, автор — Виктор Томилов. Существует даже вариант фильтра с интерфейсом на русском языке.

    Red, Green, Blue Adjustment

    Позволяет регулировать цветовые компоненты изображения (23 кадра/сек). Версия — 1.0, автор — Donald Graft.

    rmPal

    Убирает дефект, характерный для аналогового сигнала в формате PAL: сдвиг цветовой части изображения относительно яркостной (10 кадров/сек). Автор — Peter Schweizer.

    Smart Deinterlace

    Очень неплохой фильтр для deinterlace, но на сегодня лучше использовать оптимизированный вариант сделанный на его основе: QS Deinterlace. Скорость — 13 к/с. Последняя версия — 2.7 beta 2, автор — Donald Graft.

    Smart Resize

    Фильтр для изменения разрешения изображения, оснащён очень удобным калькулятором: он позволяет устанавливать кратность для разрешения, сохранять соотношение сторон и выбирать окончательный размер множеством способов. Скорость его работы не отличается от скорости встроенного фильтра для изменения разрешения — отличается он лишь наличием удобного интерфейса. Последняя версия — 1.1, автор — Donald Graft.

    Smart Smoother

    Фильтр для сглаживания изображения с сохранением чётких границ между объектами. Со слов автора за счёт этого фильтр повышает чёткость, однако это не совсем так: слабо контрастные объекты становятся размытыми (см. DivX: особенности сжатия видео в домашних условиях) Скорость — 7 кадров/сек. Последняя версия — 1.1, автор — Donald Graft.

    Smart Smoother HiQuality

    Доработанный вариант фильтра Smart Smoother, содержит ряд дополнительных возможностей для сохранения его структуры изображения. Творит чудеса при убирании сильного шума, регулярного шума (как, например, артефакты MPEG сжатия, см. DivX: особенности сжатия видео в домашних условиях) — хотя немного и размывает изображение. Скорость — 6,5 кадров/сек. Последняя версия — 2.11, автор — Klaus Post.

    Subtitler

    Фильтр позволяет добавить к изображению субтитры в формате SSA, поддерживает текстовые эффекты этого формата. Используется для создания «внутренних субтитров» (см. раздел «Субтитры»). Последняя версия — 2.3, автор — Avery Lee.

    Temporal Cleaner

    Этот фильтр выполняет очень важную, хоть и не заметную для глаза функцию: усредняет значения пикселей во времени. Таким образом, при последующем сжатии кодеру не нужно будет сохранять небольшие отклонения значений пикселей от среднего значения. При неверной настройке фильтра множатся контуры тёмных объектов на светлом фоне. Этот фильтр имеет смысл использовать, когда необходима скорость обработки (16 кадров/сек): он работает хуже, чем YATS и чаще требует подстройки вручную. Тем не менее, он на голову выше встроенного фильтра Temporal Smoother, который пригоден только для создания эффекта плавного перехода изображения из кадра в кадр. Последняя версия — 0.5 beta, втор — Jim Casaburi.

    Unsharp Mask

    Фильтр для избирательного увеличения контрастности: вблизи границы объектов. Это увеличивает резкость изображения (чёткость границ). Использован тот же метод поиска границ объектов, что и в Smart Smoother. Считается самым лучшим фильтром для увеличения резкости. Скорость: 8 кадров/сек. Версия — 1.4, автор — Donald Graft.

    Vobsub

    Часть одноимённого комплекта по работе с субтитрами, позволяет добавлять в изображение субтитры, сохранённые в формате VobSub (например, скопированные с видео DVD). Используется для создания «внутренних субтитров» (см. раздел «Субтитры»). Последняя версия — 2.23, автор — Gabest.

    Wavelet Noise Reduction

    Фильтр для подавления шумов, который использует необычную сегодня технологию вейвлетов (wavelets). Фильтр даёт достаточно интересные результаты (эффективное подавление шумов), но очень сложен в настройке. Последняя версия — 0.1.

    White balance

    Как пишет автор — фильтр изначально создан для удобной и простой процедуры восстановления баланса белого (что полезно для снятых камерой записей). Баланс белого можно настроить вручную при помощи стандартного фильтра Levels, этот же фильтр работает в автоматическом режиме. Позже фильтр оброс некоторым набором дополнительных функций: регулировка тона, насыщенности и цветности (скопировано с фильтра Hue/Saturation/Intensity от Donald Graft), регулировка яркости и контраста изображения, простенький deinterlace (не рекомендуется его использовать). Последняя версия — 1.0 beta, автор — Jim Leonard.

    XSharpen

    Увеличивает резкость изображения. Работает эффективно, но изображение в результате получается не очень естественным: Unsharp Mask предпочтительнее (правда, его скорость вдвое меньше: XSharpen обеспечивает 16 кадров/сек). Последняя версия — 1.0 beta 2, автор — Donald Graft.

    YATS

    Yet Another Temporal Smoother — ещё один фильтр temporal smoother. Работает существенно лучше, чем Temporal Cleaner (не говоря про Temporal Smoother): обработанная YATS запись сжимается до 30% эффективнее. Настройки по умолчанию работают практически всегда, по крайней мере, мне никогда не приходилось их менять (да и автор не советует это делать). Единственная его проблема — исключительно низкая скорость: 3,5 кадров/сек. Последняя версия — 1.3, автор — Eric A. Welsh.

    Звук

    Как правило «большие» видео редакторы содержат некоторые возможности по работе со звуковыми дорожками. Мне они кажутся абсолютно неудовлетворительными: например в Ulead Media Studio можно изменить длину звуковой дорожки только до целого количества секунд. Для редактирования звуковой дорожки удобно применять звуковой редактор — я использую Adobe Audition (так стал называться CoolEdit Pro, после того как Adobe купила Syntrillium Software). Вы можете использовать любой привычный для вас звуковой редактор, их функциональность во многом идентична.

    Несколько звуковых дорожек

    Вы можете подготовить одну или несколько звуковых дорожек для вашей видеозаписи: множество проигрывателей видео позволяют переключать звуковую дорожку записи, а некоторые даже воспроизводить несколько дорожек одновременно. Так, вы можете создать звуковую дорожку с надиктованными комментариями к вашей записи.

    Если вы хотите оставить только возможность воспроизведения вашей записи вместе с комментарием, то ради экономии места имеет смысл смикшировать оригинальную звуковую дорожку с вашими комментариями и полученную звуковую дорожку использовать в вашей записи. Если вы хотите иметь возможность просмотра вашей записи, как с комментарием, так и без него, то вам необходимо подготовить несколько звуковых дорожек. И помните, что подавляющее большинство проигрывателей видео позволяют лишь переключать звуковые дорожки: то есть одновременно может воспроизводиться лишь один звуковой ряд. Исключения — Light Alloy и BS Player, которые позволяет воспроизводить несколько звуковых дорожек одновременно, Windows Media Player 6.4 (и новее) — они воспроизводят все звуковые дорожки одновременно.

    Субтитры

    Вы можете снабдить вашу видеозапись текстовыми комментариями или переводом, которые будут появляться в кадре на некоторое время, исчезать, сменяться другим комментариями — в общем, субтитрами.

    Существует целый ряд инструментов по работе с субтитрами. Самые простые программы позволяют лишь задавать набор надписей и время их показа. Более сложные программы позволяют менять гарнитуру, начертание, размер и цвет шрифта, положение надписи, способ показа надписи (например, прокрутка вверх или в сторону), даже создавать стили для надписей (например, чтобы реплики разных персонажей выделять разными цветами). Следует помнить, что далеко не все проигрыватели или фильтры для отображения субтитров поддерживают различные выделения текста (я использую DivXG400, который полностью игнорирует информацию о стилях отображения и показывает субтитры всегда так, как настроено в его установках).

    Внутренние и внешние субтитры

    Существует два основных способа хранения субтитров для видеозаписи: внутренние и внешние субтитры.

    Внешними субтитрами называют текстовые файлы специального формата, которые содержат собственно надписи, время их показа и, возможно, дополнительную информацию о стилях. Проигрыватель видео (или специальный DirectShow фильтр) считывает этот файл во время воспроизведения видеозаписи и отображает субтитры поверх изображения. Вы можете изменить настройки отображения: цвет, размер шрифта и прочие. Вы можете не отображать субтитры вовсе или же сделать несколько вариантов субтитров (например, комментарии на разных языках) и переключать их во время просмотра записи. Субтитры можно отображать не только непосредственно поверх видеозаписи, но и сверху/снизу от неё (очень удобно при просмотре широкоэкранных записей на компьютере или телевизоре обычного формата — 4:3) Конечно, отображение субтитров будет требовать некоторых вычислительных ресурсов, однако. по современным меркам затраты эти совершенно мизерные: в сравнении со сложностью декодирования видеозаписи их можно игнорировать. Нужно учитывать, что если в ваших субтитрах содержится информация о стилях текста, методах отображения текста и т.п., то конечный пользователь может не увидеть всего этого, так как его проигрыватель не поддерживает такие возможности субтитров. Ещё одно преимущество внешних субтитров, которое не относится к субтитрам самим по себе, это «чистота» видеозаписи: множество резких границ (так представляются видео кодеру буквы) существенно ухудшат качество сжатого видео.

    Внутренние субтитры интегрируются в видеозапись на этапе финального сжатия при помощи специального фильтра (см. Subtitler или Vobsub). Необходимо понимать, что качество сжатия видео из-за присутствия множества контрастных объектов — букв — существенно ухудшится (при одинаковом размере конечного файла). Также вы не сможете никаким способом позже убрать субтитры из видеоряда. С другой стороны, вся информация о стилях, цветах, способах отображения текста будет сохранена. (Этим часто пользуются любители японской анимации «аниме»: в интернете вы легко сможете найти как исходные файлы субтитров в формате SSA, так и готовые видеозаписи. В этих субтитрах реплики каждого из персонажей выделены другим цветом; расположены надписи с той стороны экрана, где находится герой; песни содержат два комплекта субтитров: перевод и караоке-версию (на японском) — подчас даже с подсветкой пропетых слов. Как вы понимаете, японским владеет очень малая часть населения планеты, потому мало кому понадобится вариант такой записи без субтитров.)

    Чисто технически субтитры могут храниться в отдельных файлах или же быть упакованы (muxed) в один контейнер вместе с видео и звуком — это не делает их внутренними. Главное, что блок данных с субтитрами хранится отдельно от блока данных с видеорядом: в случае внутренних субтитров есть только блок данных видеоряда.

    Subtitle Workshop

    Пожалуй, самая удобная сегодня программа по работе с субтитрами. Имеет классический для подобных программ интерфейс: таблица с надписями, временем начала и окончания их показа («таблица» или «простыня»). В дополнение к этому вы можете отобразить вашу видеозапись в том же окне. Богатые возможностями по навигации и работе с субтитрами делают эту программу очень удобной. К сожалению, программа поддерживает лишь базовые стилевые выделения текста: жирный, наклонный, подчёркнутый и цветной текст. С другой стороны, программа поддерживает уйму разных форматов субтитров, плюс содержит возможности по автоматическому разрезанию и склеиванию субтитров — это делает её универсальным инструментом по работе с субтитрами. Также есть удобный режим для перевода субтитров на другой язык: в таблице выводится две колонки для надписей: на языке оригинала и на языке перевода. Есть возможность проверки орфографии текста субтитров при помощи службы проверки орфографии Microsoft Office. Интерфейс программы и документация по использованию переведены на русский, последняя версия — 2.51, разработка — URUSoft.

    Sub Station Alpha

    Редактор субтитров, который поддерживает множество способов выделения текста, эффектов по выводу субтитров, а также стили текста. Поддерживает собственный формат субтитров SSA, на сегодня это единственный распространённый формат субтитров с такими богатыми возможностями. У программы есть огромный набор функций по редактированию субтитров и уникальные возможности по записи субтитров: автоматическое генерирование пустых надписей по звуковому файлу (удобно, когда вы хотите продублировать в субтитрах реплики персонажей) или по нажатию клавиши во время просмотра видеозаписи. Есть встроенная проверка орфографии для английского языка. Также имеет уникальную возможность автоматического изменения времени показа субтитров по двум контрольным точкам. Программа порядком устарела, но аналогов до сих пор нет. Последняя версия — 4.08, автор — Kotus.

    SubStudio SAMI

    Очень многообещающая программа, к сожалению, пока она не закончена. Автор сделал упор на поддержку формата субтитров SAMI — самого мощного HTML-подобного формата с поддержкой стилей текста, шрифтовых выделений, нескольких языковых вариантов в одном файле и многого другого. Также программа имеет уникальный интерфейс: собственно текст субтитров представлен не только в виде набора реплик со временем начала и окончания показа (традиционная «простыня»), но и в виде линейки времени (timeline). При помощи этой линейки вы можете редактировать время показа субтитров при помощи мыши, двигая события по линейке времени. Это особенно удобно в комбинации с возможностью просмотра видеоряда тут же, в окне программы. Конечно, программа поддерживает импорт и экспорт субтитров в другие форматы — их число будет расти со временем. Планируется поддержка нескольких языков интерфейса программы (в том числе и русского), автоматическая расстановка переносов, проверка орфографии средствами Microsoft Office или Open Office. Автор программы — Антон Бреусов, ближайшая готовящаяся к выпуску версия — 1.2.0.

    Использованные термины и сокращения

    AVI — Audio Video Interleaved, стандартный в Windows формат контейнера для хранения видеозаписей.

    HuffYUV — формат сжатия видео без потерь (методом Хаффмана). Формат удобен при монтаже, используется для промежуточного сжатия видео.

    MJPEG — Motion JPEG, формат сжатия видео с потерями, в котором каждый кадр сжимается алгоритмом типа JPEG. Формат удобен при монтаже, используется для промежуточного сжатия видео.

    MPEG — Moving Picture Expert Group, организация, занимающаяся разработкой стандартов сжатия цифрового видео с потерями. В частности ими разработаны стандарты сжатия MPEG–1, MPEG–2, MPEG–4 (стандарта MPEG–3 не существует: номер пропустили, чтобы не путать его с популярным форматом сжатия звука mp3).

    Mp3 — сокр. от MPEG–1 Layer 3, подраздел стандарта MPEG–1, посвящённый сжатию звука.

    Ogg Vorbis — более новый и более эффективный, чем mp3, формат сжатия звука.

    OGM — Ogg media format, формат контейнера для файлов с Ogg Vorbis звуком, в том числе видеозаписей с Ogg Vorbis звуком.

    Артефакт (artifact) — заметный дефект изображения, привнесённый в процессе оцифровки, обработки или сжатия видео сигнала.

  • Декодер — decoder, программа для декодирования сжатой информации.

  • Кадр — изображение, часть видеоряда. Видеоряд состоит из набора изображений, которые сменяются со скоростью около 25 кадров/сек.

    Карта — в тексте понимается как «карта расширения для компьютера», плата с PCI интерфейсом (или AGP — для видеокарт), которая вставляется внутрь системного блока компьютера. Различные карты дополняют ваш компьютер различными функциями.

    Кодек — CoDec, coder/decoder, программа, которая может выполнять функции кодера и декодера видео (см.). Как правило, кодеки поддерживают стандартный интерфейс и могут быть использованы разными программами для работы с видео (захват, редактирование и т. п.)

    Кодер — coder, программа для сжатия информации (звук или видео) согласно какому-то формату сжатия.

    Сцена — последовательность кадров, снятых за один приём, не выключая камеры. Все кадры сцены содержат очень похожее изображение.

    Фильтр — специальная подпрограмма, которая обрабатывает отдельные кадры оцифрованного видео для достижения какого-либо эффекта, например: изменение яркости, устранение эффекта чересстрочности, изменение разрешения видео и так далее. Фильтр не в состоянии работать самостоятельно: он может использоваться только под управлением программы по обработке видео.

    Юникод (Unicode) — новый стандарт представления текстовой информации для компьютерной техники, поддерживает все возможные символы всех возможных алфавитов со всего земного шара. Пришёл на смену т. н. «кодировкам» (encoding) — каждая из которых способна хранить только символы из одного алфавита (плюс базовую латиницы, например: греческий, кириллический, символы центрально-европейских языков, японский, и т. п.).

    Ссылки

    В этом разделе собраны ссылки на различные сайты и страницы в интернете, которые упоминались в тексте.

    Сайты по обработке видео

    На русском языке

    Обсерватория Маленького острова — лучший на сегодня русскоязычный сайт, посвящённый обработке видео при помощи компьютера на любительском уровне. Множество статей, описаний программ, методик, советов. Авторы сайта постоянно работают с видео: на сайте описывается их богатый практический опыт. Также действует форум, посвящённый работе с видео на компьютере.

    Сайт М. Афанасенкова посвящён более дорогой и более качественной технологии обработки видео: цифровая видеокамера, захват цифрового видео, монтаж и редактирование видео на компьютере, запись результата на DVD.

    TV & FM тюнеры — описания множества моделей карт захвата; а также различных программ, которые используются для просмотра ТВ программ, прослушивания радио, захвата видео, управления компьютером при помощи пульта дистанционного управления. Автор сайта постоянно отслеживает новости в мире карт приёма ТВ передач и карт оцифровки видео, в том числе появление новых моделей устройств и новых версий программ. Уровень изложения материала по технологии оцифровки очень простой — рекомендуется в том случае, если материал этой работы показался вам слишком сложным.

    Эхоконференция fido7.ru.mpeg — конференция сети FidoNET, посвящённая вопросам сжатия видео и звука. Также тут обсуждают смежные вопросы, связанные с оцифровкой, захватом, обработкой видео, аппаратуру для работы с видео и так далее.

    MP3 Forum — первый русскоязычный форум, посвящённый сжатию звука mp3. Позже тематика форума была расширена за счёт других форматов сжатия звука, а потом — и сжатия видео.

    Zvёzdные тропки — сайт содержит раздел, посвящённый захвату и обработке видео (очень подробные описания со множеством картинок а-ля «нажать сюда, потом сюда» — рекомендую тем, кто не дружит с английским). Также тут можно найти обширную подборку фильтров для VirtualDub.

    На английском языке

    DivX Networks — разработчик самого популярного MPEG‑4 кодера видео DivX. На сайте DivX действует форум и размещено множество документации, в том числе отличное Официальное руководство по DivX 5.2.

    Doom9 — самый крупный и самый известный сайт, посвящённый технологиям хранения, сжатия и обработки видео, в том числе правовым и законодательным вопросам в этой области. Автор сайта отслеживает самые последние новости, создаёт и публикует многочисленные руководства по работе с видео, проводит сравнения качества сжатия видео различными кодерами. Существует десяток разных языковых вариантов этого сайта (русского пока нет). Также на сайте действует крупнейший в мире форум, посвящённый этой тематике (здесь же размещён форум по разработке XviD).

    Статьи по обработке видео

    На русском языке

    FAQ по оцифровке видео с минимальными затратами — статья освещает вопросы по любительской работе с видео на компьютере. Статья написана два года тому назад и потому частично устарела: за это время выпущены новые кодеры, программы, разработаны новые методы работы.

    Захват и обработка аналогового видео с максимальным качеством для сжатия в MPEG-4 — описан метод, который лёг в основу моих экспериментов с оцифрованным видео. Пожалуй, самая толковая статья по данной тематике. Тема продолжена в статье Видеокарты от ATI с видеовходом: Лучшие возможности для оцифровки видеозаписей.

    Цифровой видеоархив для дома и FAQ по созданию и редактированию цифрового видео — статьи описывают создание качественного видеоархива домашних записей с использованием достаточно дорогой аппаратуры: качественной аналоговой или цифровой видеокамеры, карты захвата с аппаратным сжатием видео, записью на DVD.

    Телевизионные стандарты: описания, характеристика — краткое описание различных стандартов телевизионного вещания.

    50 кадров в секунду — описаны различные методы преобразования чересстрочного видео к виду «50 кадров в секунду».

    Как и из чего делать VCD/SVCD — подготовка записей к сжатию в форматы VCD/SVCD.

    DivX: особенности сжатия видео в домашних условиях — моя прошлогодняя статья, в которой рассказывается о некоторых особенностях работы с видео, в частности описаны особенности выбора и настройки фильтров и кодера DivX.

    На английском языке

    Регулярное сравнение кодеров видео на сайте Doom9, последний раз проводилось в конце декабря 2003 года.

    Официальное руководство по DivX 5.2 — очень подробное описание настройки кодера, механизмов его работы, а также способов обработки и сжатия цифрового видео. Руководство отлично оформлено и иллюстрировано. Настоятельно рекомендуется к ознакомлению.

    XviD Options Explained — руководство по настройке кодера XviD. За последний год развития кодера этот документ практически не потерял своей актуальности.

    Использование пресетов mp3-кодера LAME — использование самого качественного на сегодня кодера звука в формат mp3. Статья написана два года тому назад, но актуальна до сих пор: система пресетов кодера LAME не претерпела изменений вплоть до последней версии 3.96.

    Программы

    Драйверы

    Microsoft DirectX — набор системных библиотек Windows для работы с аудио и видео, в том числе применяется при захвате видео.

    Альтернативные драйверы Ивана Ускова для карт оцифровки и захвата видео на базе чипа Conexant bt848/878. Разработаны для работы в паре с программой захвата видео iuVCR.

    Альтернативные драйверы Eduardo Jose Tagle для карт оцифровки и захвата видео на базе чипа Conexant bt848/878. Поддерживают захват видео с разрешением до 768×576 не только при помощи DirectShow, но и посредством Video for Windows (например, программой VirtualDub).

    kX Project — альтернативные драйверы для звуковых карт семейства Creative Live! и Audidgy.

    Кодеки
    Промежуточное сжатие видео

    HuffYUV — кодек, сжимающий видео без потерь. Наилучший вариант для промежуточного сжатия видео.

    Morgan Multimedia и Pegasus Imaging Corp. распространяют программные MJPEG кодеки, особенно популярен кодек от Pegasus (PICVideo MJPEG).

    DV кодеки

    MainConcept — самый популярный DV кодек, обеспечивает высокое качество изображения.

    Декодер от Cannopus — полезен, если вы не собираетесь сохранять записи в формат DV.

    Кодек от Panasonic: судя по всему, он какое-то время назад был доступен на японском сайте компании, потом его убрали, но добрые люди успели его скопировать.

    Финальное сжатие видео

    DivX — самый популярный на сегодня MPEG‑4 видео кодек, разрабатывается компанией DivX Networks.

    XviD — самый качественный на сегодня MPEG‑4 видео кодек, разрабатывается как проект с открытыми исходными кодами. Скачать последнюю версию можно с сайта Koepi.

    Альтернативные кодеки

    3ivX — фирменный набор кодеров: видео (MPEG‑4), звук (MPEG‑4 AAC), инструменты для поддержки контейнера MP4.

    libavcodec — библиотека для работы со всевозможными форматами сжатия звука и видео, декодирование и кодирование. Проект начал развивается под ОС Unix с открытыми исходными кодами, этот код используется многими программами под ОС Windows. Например, декодер ffDShow, проигрыватель Windows Media Player Classic, набор кодеков ffvfw.

    Mpegable — мало известный MPEG‑4 кодер, описание его см. в статье Хорошие и плохие стороны кодека Mpegable MPEG-4, рекомендации и советы по использованию.

    Nero Digital — MPEG‑4 кодер, также кодер AAC, поддержка контейнера MP4.

    On2 — автор и издатель многообещающего кодека VP6, который обеспечивает высокое качество изображения при достаточно малых потоках данных (см. статью On2 VP6 6.2 (VP62) — 10 тысяч метров, полет нормальный).

    RealVideo — долгожитель в мире кодирования видео выпускает всё новые и новые версии кодеров: версии 9 и 10 основаны на технологии MPEG‑4, 10‑я версия сейчас готовится к выпуску.

    Windows Media Video — дальнейшее развитие линии MPEG‑4 кодеров от Microsoft.

    Программы для захвата видео

    iuVCR — безусловный лидер среди программ захвата видео.

    TheFlyDS — популярная программа для просмотра и записи ТВ программ при помощи карты ТВ приёмника. Позволяет также производить захват видео.

    FlyCap и FlyDS — небольшие простые программы для захвата видео — используют Video for Windows и Direct Show соответственно.

    Редактирование видео

    VirtualDub — самая популярная программа для несложного монтажа видео.

    VirtualDubMod — модификация программы VirtualDub, которая значительно расширяет её функциональность. По популярности уже переплюнула базовую программу.

    Юрий Мильто перевёл интерфейс VirtualDub и VirtualDubMod на русский язык.

    AviSynth — необычная программа по обработке видео, управляемая при помощи файлов сценария (scripts). Имеет определённую популярность среди энтузиастов, для AviSynth разработано много фильтров.

    Windows Movie Maker — несложный редактор, который предоставляет базовые возможности по редактированию видео. Программа входит в состав Windows XP или может быть бесплатно скачана с сайта Microsoft.

    Фильтры для VirtualDub

    Описание стандартных фильтров VirtualDub’а — часть статьи про VirtualDub, описывающая действие стандартных фильтров (на русском языке).

    Подборка фильтров для VirtualDub с краткими описаниями на сайте Zvёzdные тропки.

    Сайт Donald’а Graft’а — автора многочисленных фильтров для VirtualDub и AviSynth. Кроме авторских разработок на этом сайте собрано много других полезных фильтров.

    Chroma Noise Reduction — полезный фильтр, убирающий шум в цветовой составляющей видеосигнала (это характерно для аналоговых видеозаписей).

    QS Deinterlace — лучший на сегодня фильтр для устранения артефактов чересстрочности для VirtualDub.

    rmPal — фильтр для устранения искажений, характерных для PAL видеосигнала.

    Subtitler — фильтр для добавления к видеозаписи субтитров в формате SSA, используется для создания «внутренних субтитров».

    Tenporal Cleaner — быстрый и достаточно эффективный фильтр для подготовки видеозаписи к MPEG сжатию.

    Wavelet Noise Reduction — перспективный фильтр для подавления шумов в видеозаписи, использующий нетрадиционную технологию: вейвлеты (wavelets).

    YATS — Yet Another Temporal smoother — лучший фильтр для подготовки видео к MPEG сжатию.

    Программные проигрыватели видео

    BS Player — популярный проигрыватель, множество сервисных функций.

    DivX Player — проигрыватель, разработанный DivX Networks, содержится в пакете установки кодека DivX. Единственная программа, которая поддерживает аппаратное ускорение пост-процессинга видео в формате DivX на видеокартах ATI Redeon 9500 и старше.

    Light Alloy — очень популярный проигрыватель.

    Sasami 2000 (Sasami2k) — популярный 2-3 года тому назад проигрыватель, содержит множество фильтров для обработки видео и звука.

    Windows Media Player Classic — встроенная поддержка форматов MPEG‑1, AC3, DTS, контейнеров OGM и Матрёшка. Воспроизводит видео в форматах RealVideo и QuickTime.

    Zoom Player — самый сложный и функциональный проигрыватель видео.

    Дополнительные фильтры для воспроизведения

    AC3Filter — декодер звука в формате AC3. Очень гибкие настройки, поддержка любой конфигурации акустической системы.

    DivXG400 — изначально этот фильтр был создан для обхождения ошибки драйверов видеокарт семейства Matrox G400, позже получил ряд дополнительных свойств: изменение частоты кадров, обрезание краёв широкоэкранного видео, отображение субтитров.

    ffDShow – универсальный декодер, основанный на библиотеке libavcodec. Поддержка множества форматов видео (DivX версии 3, 4 и 5, XviD, MPEG‑1 и 2, Microsoft MPEG‑4 (v. 1, 2, 3), MJPEG, HuffYUV, Cinepack, Indeo) и звука (mp2, mp3, AC3, AAC, WMA 1 и 2). Также содержит много фильтров для обработки изображения — deinterlace, яркость/контрастность, добавление или убирание шума, размытие, увеличение резкости и так далее. В интернете также можно скачать свежую альфа версию этого декодера.

    Matroska splitter — набор программ для воспроизведения видеозаписей в формате Матрёшка (mkv).

    Ogg/OGM DirectShow filter — набор программ для воспроизведения видеозаписей в формате OGM со звуковой дорожкой в формате Ogg Vorbis.

    VobSub — фильтр для отображения субтитров, поддерживает множество различных форматов.

    Другие программы
    Сведение (мультиплексирование)

    AVIMux_GUI — программа для сведения (muxing) видеозаписей, поддерживает несколько звуковых потоков и субтитры, форматы контейнеров: AVI и Матрёшка. Содержит ряд сохранённых установок (presets) для совместимости с различными аппаратными MPEG-4 проигрывателями.

    OGM mux — утилита для сведения в формат Ogg (OGM, Ogg Media File).

    Matroska mux — утилита для сведения в формат Матрёшка.

    VirtualDubMod — модификация программы VirtualDub, которая значительно расширяет её функциональность. В частности содержит поддержку контейнеров OGM и Матрёшка, расширена штатная поддержка AVI (несколько звуковых дорожек, субтитры).

    Создание и редактирование субтитров

    Subtitles Workshop — самый популярный и достаточно удобный редактор субтитров.

    Sub Station Alpha — редактор субтитров, поддерживающий все возможности формата SSA и содержащий ряд уникальных функций.

    Sub Studio SAMI — редактор субтитров, ориентированный на визуальное редактирование последовательности отображения субтитров. В качестве базового формата субтитров использует очень гибкий формат SAMI.

    Обработка звука

    Adobe Audition — звуковой редактор, который удобно использовать для редактирования звуковых дорожек видеозаписей.

    Кодер LAME — самый качественный на сегодня кодер звука в формат mp3.

    GoGo — самый быстрый кодер звука в формат mp3, построен на основе версии 3.88 кодера LAME.

    Ogg Vorbis — более совершенный, чем mp3, формат сжатия звука: обеспечивает лучшее качество при том же потоке данных.