Любые материалы, в виде архивов, изображений или в ином виде, которые можно скачать и использовать для работы в каком - либо софте, в монтаже, на компьютере, необходимо, по возможности, заворачивать в тег [spoil_zakon ][/spoil_zakon ].
• Чтобы уменьшить потери качества, при захвате и монтаже записи используют специальные форматы сжатия •
Сжатие Чтобы уменьшить потери качества, при захвате и монтаже записи используют специальные форматы сжатия: они сохраняют высокое качество даже при повторном применении, обеспечивают простой доступ к любому кадру видеозаписи, но используют очень много памяти.
Для хранения видеозаписей применяют другие способы сжатия видео. Такие форматы сжатия используют специальные способы кодирования информации: вместо сохранения каждого кадра сохраняется только информация об изменившихся частях кадра (см. Типы кадров). Это затрудняет доступ к произвольному кадру в видеозаписи, но позволяет достигнуть существенно большего сжатия информации. Также такие способы сжатия сохраняют меньше информации о деталях видеозаписи — что практически незаметно при однократном применении сжатия, но ведёт к появлению очень заметных артефактов при многократном применении такого способа сжатия.
Таким образом, при монтаже используются способы сжатия, которые лучше сохраняют качество видеозаписи — но занимают очень большой объём памяти. Для хранения видеозаписей используются другие способы сжатия, которые обеспечивают неплохое качество записи и требуют существенно меньше памяти.
Сжатие видео Рассмотрим разные кодеки — программы, которые позволяют кодировать и декодировать видео, используя какой–либо формат сжатия. Учтите, что «большие» графические редакторы содержат в своём комплекте ряд встроенных кодеков. В этом разделе будут описаны кодеки со стандартными интерфейсами, которые можно использовать в самых разных программах для работы с видео (захват, монтаж, редактирование). При захвате видео потоки данных достаточно велики, потому я буду приводить примерные значения в Мбайтах/сек и дублировать их в Гбайтах/час. Первая величина удобна для сравнения с пропускной способностью жёсткого диска. Вторая удобна для определения необходимого места на диске. Как легко подсчитать, эти величины пропорциональны с коэффициентом 3,5.
Кратность разрешения кадра В виду того, что в цифвровом видео специальным образом кодируются группы из двух или четырёх пикселей (см. Кодирование цвета), размер кадра видеозаписей должен всегда быть чётным, т. е. делиться на 2 (а в случае кодирования 4:1:1 — горизонтальный размер должен делиться на 4). Некоторые методы сжатия видео — например, HuffYUV — требуют, чтобы размер кадра был кратен четырём: в противном случае запись получится испорченной. Семейство алгоритмов MPEG–1, –2, –4 ASP при сжатии изображения разделяют его на квадратные блоки 8x8 пикселей — при использовании этих алгоритмов крайне желательно, чтобы размер кадра был кратен восьми. Алгоритмы обнаружения движения в кадре, которые используются в MPEG–4 ASP, разбивают кадр на макроблоки размером 16x16 пикселей, потому при сжатии любым кодером на основе алгоритмов MPEG–4 ASP рекомендуется использовать размер кадра, кратный 16.
Промежуточное сжатие видео Основные требования к промежуточному сжатию видео это: малое влияние на качество изображения даже при многократном повторном применении (в идеале — сжатие без потерь) и обеспечение простого и быстрого доступа к любому кадру (в идеале — каждый кадр сжимается независимо от других). Выполнение этих требований — залог высокого качества изображения и удобной работы при монтаже и редактировании видео.
Несжатое видео При захвате видео с размером кадра 768 на 576 пикселей с платы оцифровки видео поступает поток данных примерно в 22 Мбайт/сек (76 Гбайт/час) — и, соответственно 21 Мбайт/сек (73 Гбайта/час) при размере кадра 720 на 576. При захвате несжатого видео практически нет нагрузки на процессор компьютера, зато велика нагрузка на жёсткий диск. А главное — видео в таком виде занимает неоправданно много места. На практике в любительских условиях никто не работает с несжатым видео. Приведённые выше цифры вы можете использовать как предел сверху — как для необходимой скорости жёсткого диска, так и для необходимого для захвата места. Также, если ваша программа захвата вдруг показывает, что поток данных равен таким большим значениям, это означает наличие какой–то проблемы с видео кодером: реально у вас захватывается несжатое видео. В таком случае остановите захват и повторите настройку сжатия видео (возможно выбранный вами кодер видео не поддерживается программой захвата).
HuffYUV Этот кодер идеально соответствует требованиям, которые перечислены в разделе «Промежуточное сжатие видео». Он сжимает каждый кадр отдельно при помощи одного из самых эффективных методов сжатия данных без потерь: методом Хаффмана (его также использует архиватор RAR). Хоть это нетипично для сжатия видео, но этот кодер обеспечивает сжатие данных без потерь. Правда, эффективность такого сжатия не очень велика: типичные потоки данных для HuffYUV — 10—13 Мбайт/сек (35—45 Гбайт/час). Учтите, что если часть кадра постоянно занимает однородный фон, то потребуется меньший поток данных: это касается записей широкоэкранных кинофильмов (с чёрными полосами сверху и снизу изображения). Кодек достаточно требователен к ресурсам компьютера: для захвата видео с размером кадра 768x576 нужен процессор не меньше 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 Гбайт/час). При этом видео с размером кадра 768×576 можно захватывать на процессоре 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 декодерами. Это позволит использовать более высокие степени сжатия видео при сохранении приблизительно такого же визуального качества изображения.
AlparySoft Lossless Video Codec В последнее время приобретает популярность разработка российских программистов из AlparySoft — их Lossless Video Codec позволяет сжимать видеозаписи «на лету» как в режиме «без потерь» (аналог HuffYUV), так и «визуально без потерь» (аналог MJPEG) — в последнем случае сжатие существенно эффективнее. В режиме «без потерь» кодек обеспечивает более эффективное сжатие, чем популярный HuffYUV: см. сравнение степени сжатия различных беспотерьных кодеков — правда, вычислительных ресурсов он требует намного больше.
Также кодек содержит ряд необычных и удобных функуций, например специальный режим сжатия черессточного видео и преобразование видеозаписи в формат YV12: последнее очень удобно при обработке видеозаписей непосредственно перед финальным сжатием. Дело в том, что подавляющее большинство кодеров поколения MPEG–4 прежде чем закодировать видео, преобразуют его в формат YV12. Сохраняя обработанное видео в формате YV12, мы экономим на размере промежуточной видеозаписи, не добавляя никаких дополнительных потерь качества видео. Учтите, что преобразование в формат YV12 нужно использовать только единожды: непосредственно перед финальным сжатием видео — в противном случае качество вашей записи несколько снизится.
Программа распространяется бесплатно, хотя и требует выполнения процедуры бесплатной регистрации через интернет (неудобно то, что коды регистрации привязываются к конкретному компьютеру). Последняя версия — 2.0 альфа.
MPEG–1, MPEG–2 Мне не известны качественные MPEG–1 или MPEG–2 кодеры со стандартным DirectShow или VfW интерфейсом, которые бы можно было установить в систему и использовать из всех программ по работе с видео. Потому ниже пойдёт речь про MPEG кодеры, которые встроены в программное обеспечение карты захвата — как правило они позволяют сохранять видео в формате MPEG–1 и MPEG–2. Также более дорогие карты захвата имеют встроенные MPEG–кодеры, они способны проводить сжатие видео «на лету» аппаратно, передавая системе для записи уже готовый MPEG поток.
MPEG–1 предусматривает потоки данных до 1,5 Мбит/сек для видео (лишь 188 Кбайт/сек) при разрешении до 384x288 — потому его не разумно применять для захвата видео в виду исключительно низкого качества. На практике, правда, многие программы захвата игнорируют эти ограничения и способны создавать MPEG–1 потоки с большими размером кадра и шириной потока данных: AverTV может создать MPEG–1 видео с потоком вплоть до 20 Мбит/сек . Полученный файл, конечно, не соответствует стандартам — однако VirtualDub вполне в состоянии его прочитать.
Стандарты MPEG–1 и MPEG–2 формально имеет ограничение в 40 Мбит/сек, однако конкретные программные реализации MPEG–1/2 кодеров как правило ограничены ещё меньшими потоками. AverTV из комплекта поставки карты Aver 203 ограничен 20 Мбит/сек (2,5 Мбайт/сек, 9 Гбайт/час), 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 видео с размером кадра 768x576 «на лету» — запаситесь процессором как минимум в 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 не стоит использовать также и потому, что в этом формате создаётся поток с постоянной шириной (CBR): куда как эффективнее использовать MJPEG с переменной шириной потока (VBR). Единственное разумное применение програмного DV кодера — это сжатие видео перед записью его на цифровую DV видеокассету. Мне неизвестно, какой из этих кодеков лучше и почему — я совсем мало имею дела с цифровыми камерами и DV. За информацией по работе с DV рекомендую обратиться к сайту М. Афанасенкова или к FAQ по созданию и редактированию цифрового видео.
Что же выбрать? Если ваша карта захвата способна выдавать оцифрованное видео только в закодированном виде, то вам не нужно его сжимать как–либо ещё: достаточно сохранить уже сжатое чипом карты захвата. Так, если вы используете плату Miro VIDEO DC30, нет никакого смысла сохранять полученное MJPEG видео даже сжатым без потерь (HuffYUV) — нужно сохранить MJPEG, который выдаёт карта захвата. При захвате цифрового видео его нужно сохранять в исходном виде — в формате DV (слить с камеры).
Если ваша карта захвата выдаёт несжатое видео — лучше всего его сохранять без потерь, применяя сжатие HuffYUV. Поскольку этот метод использует сжатие без потерь, вы можете применять это сжатие при многих последовательных операциях.
Если у вас не так много места на жёстком диске — используйте Pegasus MJPEG с уровнем качества 19. Качество такого сжатия очень высокое: не смотря на то, что MJPEG сжимает с потерями, на глаз этого абсолютно незаметно.
Тем не менее, не стоит применять MJPEG сжатие много раз подряд: за счёт накопившихся погрешностей могут возникнуть заметные артефакты. Возьмите за правило: не более 2 пережатий в MJPEG.
Если у вас мало места на жёстком диске — используйте MJPEG с более низкими уровнями качества. Также вы можете попробовать использовать MPEG, но эти методы достаточно требовательны к процессору (причём MPEG–4 более ресурсоёмок, чем MPEG–2, а MPEG–2 более сложен, чем MPEG–1) и не на много лучше MJPEG по качеству сжатия (если вообще лучше).
Вам следует помнить, что если при подготовке видеозаписи несколько раз последовательно применялось сжатие с потерями, то достаточно заметно падает качество изображения. Алгоритмы MPEG не рекомендуется использовать в качестве промежуточных для захвата, обработки и редактирования видео.
Финальное сжатие видео Методы финального сжатия видео должны обеспечивать высокую степень сжатия — возможно, с потерей информации. Современные кодеры используют специальные алгоритмы, которые призваны сделать искажения видео (артефакты) как можно менее заметными при воспроизведении. Также для проигрывания видео достаточно лишь последовательного доступа к кадрам видеоряда: доступ к произвольному кадру, как правило, сопряжён с большими задержками. Ещё одно преимущество таких способов сжатия видео: возможность задать размер видеозаписи в сжатом виде. Для использования этой возможности нужно рассчитать среднюю ширину потока данных (bitrate), до которой вы хотите сжать полученное видео. Рассчитать необходимое значение можно при помощи обычного калькулятора, однако удобнее это делать при помощи специальных программ: bitrate calculator. Кодеки DivX Pro и XviD содержат встроенные bitrate calculator’ы.
MPEG–2 Мне не известны качественные MPEG–2 кодеры со стандартным DirectShow или VfW интерфейсом, которые бы можно было установить в систему и использовать из любой программы по работе с видео. Потому для финального сжатия видео в формат MPEG–2 нужно использовать специальные программы, например Cannopus Pro Coder или TMPEnc Encoder (многие «большие» редакторы видео, как Adobe Premierre, содержат встроенные MPEG–2 кодеры, однако указанные специализированные программы обеспечивают более высокое качество сжатия видео). Мне не доводилось сжимать видео в MPEG–2, за информацией рекомендую обратиться к сайту М. Афанасенкова или к FAQ по созданию и редактированию цифрового видео.
DivX 5.2.1 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 содержала целый ряд ошибок, используйте последнюю версию — 5.2.1.
XviD 1.02 Кодек поддерживают как двухпроходный режим, так и использование однопроходного режима с постоянным качеством вместо первого прохода (см. Однопроходное сжатие).
Перед началом настройки кодера рекомендуется сбросить все установки: 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, однако рекомендуется использовать «родной» код XviD.
Кодек XviD содержит уникальную возможность: зональное кодирование. Вы можете указать кодеку несколько зон в сжимаемом видео, к каждой из которых можно применить свой набор параметров. Зоны определяются по номеру кадра, с которого она начинается: заканчивается зона либо с началом следующей зоны, либо с окончанием видеоряда. Для каждой зоны можно указать её относительную важность — «вес» (Weight) — так, зона с весом 0,25 будет закодирована с качеством в 4 раза ниже, чем зона с весом 1,00. В качестве альтернативы вы можете потребовать сжатия зоны в режиме с постоянным качеством: укажите нужный коэффициент квантования (Quantizer). Это очень удобно для сжатия менее важных частей видеоряда, например титры кинофильма. Также вы можете потребовать у кодера начать зону с ключевого кадра (Begin with keyframe — это удобно, если вам может понадобиться быстрая перемотка на начало зоны или же возможность разрезать видеоряд по границе зон), включить режим кодирования чёрно–белого изображения (Greyscale encoding, настоятельно рекомендуется включать этот режим для чёрно–белых записей и даже фрагментов: в противном случае вы рискуете получить тёмно–зелёные пятна в сжатом ч/б видео), использовать специальный фильтр, сглаживающий чёткие границы объектов (Chroma optimizer — уменьшает эффект «лестницы», использовать по вкусу), использовать больше или меньше двунаправленных кадров (BVOP sensitivity, соответственно значения больше или меньше нуля).
Сжатие звука После захвата звукового сопровождения видеозаписи, желательно убрать (уменьшить) шумы, которые присутствуют в звукозаписи. Для этого удобно использовать звуковые редакторы: подавляющее большинство имеют разнообразные инструменты для шумоподавления. На практике наиболее эффективным оказывается метод удаления шума «по образцу»: в качестве образца «чистого шума» используется пауза — фрагмент записи, в котором нет никаких звуков, только шум. Далее редактор, согласно выбранному образцу, убирает шум по всей звукозаписи. Как правило, полученный в результате такой обработки звук воспринимается на слух намного комфортнее, чем зашумленный оригинал. Подробно такая технология рассмотрена в разделе Adobe Audition: обработка звука. Также следует помнить, что чем больше шума содержит звукозапись, тем большей ширины потребуется поток данных при сжатии звука — для сохранения приемлимого уровня качества звучания.
Для сжатия звука к обработанной видеозаписи вы можете воспользоваться различными кодерами.
MPEG–1 layer 3 (mp3) Для сохранения звука в AVI традиционно используют формат сжатия звука mp3. Лучший на сегодня кодер mp3 — безусловно LAME (актуальная версия — 3.96.1). Про использование этого кодера несколько лет тому назад мною была написана статья, которая актуальна и по сей день: Использование пресетов mp3–кодера LAME. Разработчик популярного кодека mp3 — Fraunhofer Institute — сообщает о готовящемся выпуске нового варианта этого формата MP3 Surround с поддержкой многоканального звука. Предыдущая доработка формата mp3 — MP3 Pro — не обеспечивает должного качества звучания и потому не пользуется большой популярностью. Сжатие звука при помощи LAME
Для сжатия звука рекомендуется использовать режим ‘preset <bitrate>’, для моно записей средний поток данных имеет смысл задавать около 60 кбит/сек для обычных записей, 70–80 для качественных записей (музыка, концерты) и 45–50, если в записи присутствует только речь (здесь приведены значения ширины потока данных, которые были получены экспериментально; они обеспечивают сохранение качественного звучания очищенных от шума звукозаписей). Стерео записи следует сжимать с потоком от 90 до 170 кбит/сек — тем больше, чем более сложный звук записан. Для того, чтобы 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).
Обработка Полученная в результате оцифровки и захвата видеозапись, как правило, мало пригодна для хранения: разрешение неоправданно завышено (см. Разрешение и чёткость изображения), в изображении присутствуют характерные для аналоговых записей шумы и искажения, размер полученного файла огромен. Поэтому видеозапись требует некоторой обработки: устранение артефактов чересстрочности, уменьшение разрешения, устранение шумов.
Для простого редактирования и монтажа видео — вырезать несколько фрагментов, склеить несколько записей и т.п. — вам вполне хватит 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, уже разработана и сейчас тестируется версия 1.6.0.
Некоторое время назад автор программы опубликовал исходные коды своей программы. На основе этого кода возник проект VirtualDubMod, который расширяет функциональность программы VirtualDub: поддержка нескольких звуковых дорожек, поддержка контейнеров OGM и Матрёшка, чтение MPEG–2 видео и так далее. Рекомендуется всегда использовать не VirtualDub, а его расширенный вариант VirtualDubMod — он содержит множество функциональных улучшений, что очень удобно. Последняя версия — 1.5.10.1.
VirtualDub на русском Поскольку программы VirtualDub и VirtualDubMod пользуется огромной популярностью, актуален вопрос перевода интерфейса этой программы на русский язык. Мне известен перевод Юрия Мильто (последние версии VirtualDub и VirtualDubMod) и перевод некоего Stevens Inc., который во–первых основан на переводе Юрия, а во–вторых не подходит к последним версиям. Оба этих перевода выполнены любительским способом путём подмены сообщений в запускаемом файле программы: этот подход неудобен тем, что после выхода каждой новой версии, нужно ждать, пока переводчик сделает перевод для новой версии.