Что за кодек mjpeg

Обновлено: 02.07.2024

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

Чтобы научиться снимать хорошее видео, потребуется приложить определенные усилия, но все становится еще более сложным, когда вы захотите во всей красе продемонстрировать свой шедевр другим людям. Может быть, вам нужно загрузить его на YouTube, может вы собираетесь записать свой Blu-ray или DVD диск, возможно, захотите загрузить видео на мобильный телефон или планшетный компьютер.

Разобраться в том, какой кодек и контейнер лучше подойдет для создания вашего видеошедевра порой достаточно сложно. Помочь в решении этой проблемы сможет представленный далее материал.

Какая разница между кодеком и контейнером?

Начинающие пользователи часто бывают озадачены, когда пытаются выяснить разницу между кодеками и контейнерами. Сейчас слово Кодек стало чем-то общеупотребительным, а изначально термин являлся сокращением от понятия КОмпрессор-ДЕКомпрессор. Что же делают кодеки?

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


Несжатое (англ. raw означает необработанное или часто говорят « сырое») видео и аудио требует для хранения огромного дискового пространства. Несжатое видео высокой четкости формата 1080i, записываемое со скоростью 50 кадров в секунду, съедает до 410 гигабайт в час. Аудио с CD дисков, довольно устаревшее по современным стандартам, звучит около 74 минут при емкости диска 680 мегабайт. Однако, восьмиканальный звук, кодируемый с 24 битным разрешением, потребует уже 16 мегабит в секунду, или несколько гигабайт в час. Даже возможностей широкополосного соединения с интернет порой не хватит, чтобы послушать музыку в полном аудио разрешении. Вот почему цифровые видео и аудио записи должны быть сжаты для передачи и хранения.

После того как медиа данные ужаты в разумные пределы, они должны быть упакованы для транспортировки и последующего отображения. Для этого используются форматы-контейнеры, выполняющие роль «черного ящика», наполняемого различными медиа-форматами. Хорошие форматы контейнеров могут вмещать файлы, сжатые разными кодеками.

Давайте разберемся с типами кодеков.

Общее понятие о кодеках

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


Ввод и архивирование видео

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

x.264/ MPEG-4 AVC (Advanced Video Coding). Этот наиболее распространенный кодек используется в современных цифровых видео- и фотокамерах, в которых результаты съемки сохраняются в виде файлов на встроенных жестких дисках, картах памяти, и т.д.

MJPEG (Motion JPEG). Это более старый формат, используемый некоторыми цифровыми камерами и видеотехникой прежнего поколения. Он был разработан теми же специалистами (Joint Picture Experts Group), которые занимались еще ранее разработкой кодека JPEG для сжатия обычных статичных изображений, отсюда и название этого кодека.

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


Дисковые форматы

Перейдем к устаревающим уже DVD или чуть более модным Blu-ray дискам. Несмотря на растущую популярность потокового видео, возможность передачи медиа данных с помощью дисков в обозримом будущем по-прежнему будет востребована. Записанные на диски материалы спокойно можно передавать там, где нет каналов связи и смотреть везде, даже там, где нет возможности подключиться к интернету.

MPEG-2. Необходимо различать кодек MPEG-2, также известный как x.262, от формата контейнера MPEG-2. MPEG-2 используется для сжатия видео на дисках DVD и сигналов телевидения высокой четкости (DVB), передаваемого по эфирным каналам. Первоначально MPEG-2 применяли и для сжатия на Blu-ray дисках, хотя большинство современных Blu-ray фильмов не используют MPEG-2.

x.264/MPEG-4 AVC. x.264 используется при сжатии видео для Blu-ray дисков. По сути это тот же кодек, который применяется для сжатия видео в современных видеокамерах. Данный метод очень масштабируемый и при высоком битрейте сжатое по стандарту x.264видео выглядит просто фантастически.

Microsoft VC-1. Microsoft VC-1 включает три разных по степени сжатия кодека. VC-1 Advanced Profile, также известный как Windows Media Video 9 Advanced Profile или просто WVC1 является одним из трех кодеков, применяемых для кодирования содержимого Blu-ray дисков. VC-1 в качестве альтернативы технологии Adobe Flash используется в интернет-платформе Microsoft Silverlight.


Потоковое и веб видео

Передача видео через интернет обязательно подразумевает компромиссы, в основном между качеством изображения и скоростью передачи данных, которая сегодня и ограничивает максимально достижимое качество. Скорость передачи или, как еще говорят, ширина канала во многом зависит от возможностей интернет-провайдера и используемой им технологии доставки сигнала в вашу квартиру.

MPEG-1. Это старый боевой конь для доставки видео в сети интернет. Хотя YouTube, Netflix, и другие поставщики относительно качественного потокового видео уже отказались от MPEG-1, масса видео стандартного разрешения на базе MPEG-1 все еще доступна на других сайтах.

WMV (Windows Media Video). Есть Windows Media Video кодек и контейнерный формат файла. Хотя, этот метод сжатия был и не так используем, как MPEG-1, в сети все еще есть много WMV контента. Но при создании своих видеоматериалов, его очевидно также не стоит применять.

x.264/ MPEG-4 AVC. x.264 обеспечивает при относительно низкой скорости передачи, достаточно высокое качество видео. x.264, вероятно, становится наиболее распространенным кодеком. Adobe поддерживает его во Flash, x.264может использоваться с изображениями HTML 5, на x.264ориентируется YouTube и Apple полностью поддерживает этот метод компрессии. Однако при создании видео сжатого в форматах x.264вы не сможете воспроизводить их на старых устройствах, это ставка на будущее.

Правильный контейнер: гибкий и удобный

Далее кратко рассмотрены наиболее распространенные сегодня контейнерные форматы медиафайлов. У каждого из них есть свои достоинства и недостатки. Выбор зависит от предполагаемой задачи. Контейнерные файлы, кроме сжатого видео, вмещают и цифровой звук, сжатый соответствующими аудио кодеками, а также меню и дополнительную информацию.

Контейнеры для архивирования и ввода

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

Advanced Systems Format (ASF) – разработанный Microsoft контейнерный формат. Встречается несколько расширений, включая .asf, .wma и.wmv. Отметьте, что файл с расширением .wmv, вероятно, сжат кодеком WMV (Windows Media Video), но сам файл помещен в контейнерный файл ASF. Файлы ASF, в теории, могут содержать видео и аудио файлы, сжатые любым кодеком. Однако, практически воспроизведение иногда может стать проблемным, особенно с видео, сжатым кодеками x.264. Если вы планируете пользоваться продуктами Microsoft, ASF прекрасный выбор, но могут быть проблемы с медиа файлами на основе иных кодеков.

Audio Video Interleave (AVI) – один из более старых контейнерных форматов Microsoft. Вероятно, его уже не стоит использовать в новых проектах.


QuickTime: компания Apple продвигает собственный контейнерный формат QuickTime, который поддерживает множество кодеков для аудио и видео. Apple - убежденный сторонник x.264, таким образом, файлы QuickTime (.mov, .qt) могут содержать видео, сжатое кодеком x.264.

MP4. Этот контейнерный формат разработан Motion Pictures Expert Group, известен также как MPEG-4, часть 14. Видео внутри файлов MP4 кодируется кодеком x.264, а аудио – кодеком AAC, но могут использоваться и другие стандарты сжатия звука.

VOB и BDAV MPEG-2. Эти контейнерные форматы используются для упаковки данных на DVD и Blu-ray дисках, соответственно. В файлах Blu-ray дисков (.m2ts) могут содержаться видеозаписи сжатые кодеками x.264и VC-1, звук может быть сжат одним из кодеков Dolby или использоваться несжатый многоканальный сигнал в формате PCM.

AVCHD: Этот стандарт контейнера применен во многих видеокамерах. Снимаемое видео предварительно сжимается кодеком x.264. Аудиосигнал для контейнера кодируется кодеком Dolby Digital (AC3) или используется несжатый – PCM.


Flash: Компания Adobe имеет собственный контейнерный формат Flash, который поддерживает множество кодеков. Большая часть недавно созданного Flash видео кодирована с использование видеокодека x.264и аудиокодека AAC, но не стоит ожидать, что на всех сайтах используются только эти кодеки, особенно для ранее созданного видео.

Прочие контейнеры: Среди прочих форматов контейнеров, широко используемых особенно для доставки видео через интернет, можно упомянуть популярный во многом за счет своей универсальности и открытого кода формат Matroska (.mkv, .mk3d, .mka, .mks), а также OGG и DiVX. Файлы с расширением .divx вмещают видео, ужатое одноименным кодеком с пиратской родословной, который позволяет получить достаточно высокое качество видео при эффективной компрессии видеоматериалов. Долгое время Divx официально не признавался и его использование не приветствовалось. Однако сегодня многие известные производители уже встраивают аппаратные кодеки DiVX в свою видеотехнику.

Какой кодек и контейнер выбрать

Если вы будете размещать свое видео на домашнем сервере, с тем чтобы впоследствии смотреть его на экране телевизора, подключаемого непосредственно к сети или через медиаплеер, необходимо выяснить какие форматы распознают телевизор и плеер. Практически всеми устройствами поддерживается сегодня кодирование в соответствии со стандартом MPEG-2, но в этом случае потребуется достаточно большой объем для хранения видео в HD разрешении. Очевидно, наиболее подходящим в ближайшем будущем можно считать различные варианты кодека x.264, в котором реализован алгоритм сжатия, поддерживаемый всеми популярными контейнерами.


Если больше интересует воспроизведение готового видео, и вы планирует нарезать (ripping) фильмы из своей персональной коллекции DVD дисков для передачи по домашней сети, вас может устроить контейнер MP4, как удачный компромисс между степенью сжатия и качеством.


Затраты на хранение данных зачастую становятся основным пунктом расходов при создании системы видеонаблюдения. Впрочем, они были бы несравнимо больше, если бы в мире не существовало алгоритмов, способных сжимать видеосигнал. О том, насколько эффективны современные кодеки, и какие принципы лежат в основе их работы, мы и поговорим в сегодняшнем материале.

Для большей наглядности начнем с цифр. Пускай видеозапись будет вестись непрерывно, в разрешении Full HD (сейчас это уже необходимый минимум, во всяком случае, если вы хотите полноценно использовать функции видеоаналитики) и в режиме реального времени (то есть, с фреймрейтом 25 кадров в секунду). Предположим также, что выбранное нами оборудование поддерживает аппаратное кодирование H.265. В этом случае при разных настройках качества изображения (высоком, среднем и низком) мы получим примерно следующие результаты.

Кодек

Интенсивность движения в кадре

Использование дискового пространства за сутки, ГБ

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

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

Учитывая, что в сутках 86400 секунд, цифры выходят поистине астрономические:

148×86400/1024=12487 ГБ

Итак, если бы мы записывали видео без сжатия в максимальном качестве при заданных условиях, то для хранения данных, полученных с одной единственной видеокамеры в течение суток нам бы потребовалось 12 терабайт дискового пространства. Но даже система безопасности квартиры или малого офиса предполагает наличие, как минимум, двух устройств видеофиксации, тогда как сам архив необходимо сохранять в течение нескольких недель или даже месяцев, если того требует законодательство. То есть, для обслуживания любого объекта, даже весьма скромных размеров, потребовался бы целый дата-центр!

К счастью, современные алгоритмы сжатия видео помогают существенно экономить дисковое пространство: так, использование кодека H.265 позволяет сократить объем видео в 90 (!) раз. Добиться столь впечатляющих результатов удалось благодаря целому стеку разнообразных технологий, которые давно и успешно применяются не только в сфере видеонаблюдения, но и в «гражданском» секторе: в системах аналогового и цифрового телевидения, в любительской и профессиональной съемке, и многих других ситуациях.

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

А вот со снижением детализации все оказывается уже совсем не так однозначно. Технически квантование (то есть, разбиение диапазона сигнала на некоторое число уровней с последующим их приведением к заданным значениям) работает великолепно: используя данный метод, размер видео можно многократно уменьшить. Но так мы можем упустить важные детали (например, номер проезжающего вдалеке автомобиля или черты лица злоумышленника): они окажутся смазаны и такая запись будет для нас бесполезной. Как же поступить в этой ситуации? Ответ прост, как и все гениальное: стоит взять за точку отсчета динамические объекты, как все тут же становится на свои места. Этот принцип успешно используется со времен появления кодека H.264 и отлично себя зарекомендовал, открыв ряд дополнительных возможностей для сжатия данных.

Это было предсказуемо: разбираемся, как H.264 сжимает видео

Вернемся к таблице, с которой мы начали. Как видите, помимо таких параметров, как разрешение, фреймрейт и качество картинки решающим фактором, определяющим конечный размер видео, оказывается уровень динамичности снимаемой сцены. Это объясняется особенностями работы современных видеокодеков вообще, и H.264 в частности: используемый в нем механизм предсказания кадров позволяет дополнительно сжимать видео, при этом практически не жертвуя качеством картинки. Давайте посмотрим, как это работает.

Кодек H.264 использует несколько типов кадров:

  • I-кадры (от английского Intra-coded frames, их также принято называть опорными или ключевыми) — содержат информацию о статичных объектах, не меняющихся на протяжении длительного времени.
  • P-кадры (Predicted frames, предсказанные кадры, также именуемые разностными) — несут в себе данные об участках сцены, претерпевших изменения по сравнению с предыдущим кадром, а также ссылки на соответствующие I-кадры.
  • B-кадры (Bi-predicted frames, или двунаправленные предсказанные кадры) — в отличие от P-кадров, могут ссылаться на I-, P- и даже другие B-кадры, причем как на предыдущие, так и на последующие.

[НАЧАЛО СЪЕМКИ] I-P-P-P-P-P-P-P-P-P-P-P-P-P- .

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

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


Независимая обработка статических и динамических объектов позволяет сэкономить дисковое пространство

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


Кодек формирует кадры, предсказывая, куда будет двигаться объект

В свою очередь, использование двунаправленных предсказанных кадров позволяет в несколько раз сократить время доступа к каждому кадру в потоке, поскольку для его получения будет достаточно распаковать только три кадра: B, содержащий ссылки, а также I и P, на которые он ссылается. В данном случае цепочку кадров можно изобразить следующим образом.

[НАЧАЛО СЪЕМКИ] I-B-P-B-P-B-P-B-P-B-P-B-P-B-P-B-P-…

Такой подход позволяет существенно повысить скорость быстрой перемотки с показом и упростить работу с видеоархивом.

В чем разница между H.264 и H.265?


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

Так, обновленная версия кодека стала использовать макроблоки дерева кодирования (Coding Tree Unit, CTU) переменного размера с разрешением до 64×64 пикселей, тогда как ранее максимальный размер такого блока составлял лишь 16×16 пикселей. Это позволило существенно повысить точность выделения динамических блоков, а также эффективность обработки кадров в разрешении 4K и выше.

Кроме того, H.265 обзавелся улучшенным deblocking filter — фильтром, отвечающим за сглаживание границ блоков, необходимым для устранения артефактов по линии их стыковки. Наконец, улучшенный алгоритм прогнозирования вектора движения (Motion Vector Predictor, MVP) помог заметно снизить объем видео за счет радикального повышения точности предсказаний при кодировании движущихся объектов, чего удалось достичь за счет увеличения количества отслеживаемых направлений: если ранее учитывалось лишь 8 векторов, то теперь — 36.

Помимо всего перечисленного выше, в H.265 была улучшена поддержка многопоточных вычислений: квадратные области, на которые разбивается каждый кадр при кодировании, теперь могут обрабатываться независимо одна от другой. Появилась и поддержка волновой параллельной обработки данных (Wavefront Parallelel Processing, WPP), что также способствует повышению производительности сжатия. При активации режима WPP обработка CTU осуществляется построчно, слева направо, однако кодирование каждой последующей строки может начаться еще до завершения предыдущей в том случае, если данных, полученных из ранее обработанных CTU, для этого достаточно. Кодирование различных строк CTU с временной задержкой со сдвигом, наряду с поддержкой расширенного набора инструкций AVX/AVX2 позволяет дополнительно повысить скорость обработки видеопотока в многоядерных и многопроцессорных системах.

Флэш-карты для видеонаблюдения: когда значение имеет не только размер

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

138×30/1024 = 4

По нынешним меркам 4 терабайта для винчестера индустриального класса — практически ничто: современные жесткие диски для видеонаблюдения имеют емкость до 14 терабайт и могут похвастаться рабочим ресурсом до 360 ТБ в год при MTBF до 1.5 миллионов часов. Что же касается карт памяти, то здесь все оказывается не так однозначно.

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

При бытовом использовании подобное попросту невозможно, поэтому даже самая бюджетная карта памяти способна прослужить вам несколько лет к ряду без единого сбоя. А все благодаря алгоритмам выравнивания износа (wear leveling). Схематично их работу можно описать следующим образом. Пусть в нашем распоряжении есть новенькая флеш-карта, только что из магазина. Мы записали на нее несколько видеороликов, использовав 7 из 16 гигабайт. Через некоторое время мы удалили часть ненужных видео, освободив 3 гигабайта, и записали новые, объем которых составил 2 ГБ. Казалось бы, можно задействовать только что освободившееся место, однако механизм выравнивания износа выделит под новые данные ту часть памяти, которая ранее никогда не использовалась. Хотя современные контроллеры «тасуют» биты и байты куда более изощренно, общий принцип остается неизменным.


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

Нетрудно догадаться, что wear leveling перестает играть хоть сколько-нибудь значимую роль в том случае, если флэш-карта постоянно перезаписывается целиком: здесь на первый план уже выходит выносливость самих чипов. Наиболее объективным критерием оценки последней является максимальное количество циклов программирования/стирания (program/erase cycle), или, сокращенно, циклов P/E, которое способно выдержать флеш-память. Также достаточно точным и в данном случае наглядным (так как мы можем заранее рассчитать объемы перезаписи) показателем является коэффициент TBW (Terabytes Written). Если в технических характеристиках указан лишь один из перечисленных показателей, то вычислить другой не составит особого труда. Достаточно воспользоваться следующей формулой:

TBW = (Емкость × Количество циклов P/E)/1000

Так, например, TBW флеш-карты емкостью 128 гигабайт, ресурс которой составляет 200 P/E, будет равен: (128 × 200)/1000 = 25,6 TBW.

Давайте считать дальше. Выносливость карт памяти потребительского уровня составляет 100–300 P/E, и 300 — это в самом лучшем случае. Опираясь на эти цифры, мы можем с достаточно высокой точностью оценить срок их службы. Воспользуемся формулой и заполним новую таблицу для карты памяти емкостью 128 ГБ. Возьмем за ориентир максимальное качество картинки в Full HD, то есть в сутки камера будет записывать 138 ГБ видео, как мы выяснили ранее.

Прошло больше года с момента появления на российском рынке первой MPEG-4 фотовидеокамеры - Sanyo Xacti C1. С тех пор появилось более десятка цифровых фотокамер, обеспечивающих съемку видео в формате MPEG-4 с разрешением 640x480, 30 кадров в секунду. В предыдущей статье "Обработка записей MPEG-4 фотовидеокамер" мы рассматривали теоретические аспекты работы такого рода устройств и этапы создания MPEG4-CD без перекодирования видео, а в настоящем материале мы акцентируем внимание на конкретных параметрах и конкретных моделях.

Сейчас наличием MPEG-4 видео в фотоаппарате уже сложно кого-то удивить. При выборе цифровой камеры все чаще обращают внимание на ее видеофункции, в том числе на возможность записи видео в формате MPEG-4. Тем временем, в большинстве обзоров цифровых камер видеофункции упоминаются поверхностно, либо не упоминаются вообще. Дело в том, что многие профессионалы и продвинутые любители не рассматривают "фотоаппаратное" видео всерьез, придерживаясь мнения "для фото есть фотоаппараты, а для видео - видеокамеры". Это мнение имеет свои основания, так как по качеству видео и некоторым другим параметрам лучший по видеофункциям цифровой фотоаппарат заведомо уступает даже самой недорогой miniDV-видеокамере.

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

Фотовидео- или видеофотокамера?

В большинстве фотокамер видео позиционируется как дополнительная функция, основной функцией этих устройств остается фотосъемка, о чем говорит их "фотоаппаратный" дизайн. Исключение составляют, пожалуй, только фотовидеокамеры Sanyo Xacti C1/C4/C5 и Pentax Optio MX/MX4, так как их форма предназначена в первую очередь для съемки видео (Pentax, правда, не блещет качеством звука - 8000 Гц моно), при этом они обеспечивают фотосъемку на уровне средних "цифромыльниц". Возможно, эти устройства правильнее было бы назвать видеофотокамерами, так как для них съемку видео можно считать основной функцией (например, Sanyo позиционирует Xacti C1/C4/C5 именно как видеокамеры с возможностью фото).

При выборе фотовидеокамеры стоит обратить внимание на форм-фактор устройства - классический фотоаппарат менее удобен для съемки видео, чем устройство "видеокамерного" типа, особенно если держать его одной рукой и снимать длинные ролики.

Форматы фотоаппаратных видеороликов

Цифровое видео характеризуется несколькими основными параметрами - размером кадра, частотой кадров (Frames Per Second, FPS), битрейтом, типом развертки и форматом кодирования. Об этих параметрах можно подробно прочитать здесь: "Захват, обработка и хранение видео с использованием ПК").

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

MPEG-4 или Motion JPEG

В первую очередь стоит определиться, нужна ли вам поддержка MPEG-4 в фотоаппарате, или достаточно будет MJPEG 640х480, 30 кадров/сек.

Основным отличием MPEG-4 от MJPEG является наличие межкадрового сжатия, позволяющего в несколько раз снизить размер конечного файла при незначительном снижении качества (около часа видео на 1Гб карту). Однако "обратной стороной медали" является зависимость качества или битрейта от динамичности сцены. Дело в том, что на динамичных сценах соседние кадры сильнее отличаются друг от друга, поэтому для кодирования очередного кадра необходимо больше байт, либо неизбежно снижение качества. Компьютерные MPEG-4 кодеки (например, DivX или XviD) "умеют" менять битрейт при кодировании видео, увеличивая его на динамичных сценах для обеспечения заданного уровня качества (при этом, на быстрых сценах битрейт может возрастать в несколько раз). MPEG-4 фотовидеокамеры неспособны менять битрейт в таких широких пределах, поэтому они лучше отрабатывают статичные сцены - это обязательно надо учитывать при съемке. Также в фотовидеокамерах используются упрощенные алгоритмы кодирования, что приводит к более низкому качеству.

Качество Motion JPEG видео не зависит от динамичности сцены, однако платой за это является в несколько раз больший размер конечных роликов. С другой стороны, Motion JPEG более удобен для последующего монтажа видео, так как кадры не зависят друг от друга, можно вырезать/вставлять фрагменты, начиная с любого кадра.

Таким образом, MPEG-4 предпочтительнее для более длительной видеосъемки, особенно если для обработки отснятого материала достаточно операций линейного монтажа, в этом случае можно достаточно быстро получить MPEG-4 CD, пригодный для просмотра на любом DVD-MPEG4 проигрывателе.

Контейнер

Тип контейнера (хранилища данных) определяется расширением файла видеоролика. В фотоаппаратах используются типы MP4, MOV, AVI или MPG.

MP4 - контейнер, предусмотренный стандартом MPEG-4. Этот контейнер предполагает использование MPEG4 ASP/AVC для кодирования видео и формат AAC (Advanced Audio Coding) для кодирования аудио. Формат AAC также имеет несколько уровней (профайлов) - AAC LC (Low Complexity) и более "продвинутый" HE (High Efficiency) AAC. В фотовидеокамерах используется AAC LC, как минимум, не уступающий по качеству популярному аудиоформату MP3.

Следует разграничивать формат сжатия видео MPEG-4 и тип контейнера MP4 - их часто путают. MPEG-4 видео может находиться в любом их рассматриваемых контейнеров - MP4, MOV или AVI, в то время как контейнер MP4 предусматривает только MPEG-4 видео.

Контейнер MOV связан историческими корнями с программой QuickTime, его часто с ней ассоциируют. Иногда можно услышать формулировку "видео в формате QuickTime" - это не совсем корректно, так как в контейнере MOV может быть и Motion JPEG, и MPEG-4 видео (а также множество других форматов). Кроме того, QuickTime - не единственная альтернатива для работы с MOV-роликами. Примеры MPEG-4 фотовидеокамер с MOV-роликами - Pentax Optio MX/MX4 (звук в формате PCM), Samsung V50/70 (звук в формате u-Law).

AVI (Audio and Video Interleaved) - менее "продвинутый", однако гораздо более распространенный контейнер. Его понимают большинство программ видеомонтажа и все DVD-MPEG4 проигрыватели, чего нельзя сказать о контейнерах MP4 и MOV.

Кодек H.264

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

Этот программный элемент сегодня в большей степени определяет цену на оборудование систем видеонаблюдения (видеорегистраторы, видеосерверы, платы видеозахвата и IP камеры ).

Чтобы понять причину этому, необходимо хотя бы в общих чертах понимать, особенности работы кодеков H.264, MPEG-4 и MJPEG, а также вытекающие из этого преимущества и недостатки их использования.

MJPEG (Motion JPEG)

  • Данный кодек использует покадровую компрессию

Что это означает? Грубо говоря, данный принцип сжатия аналогичен тому, если бы вы собственноручно брали каждый кадр видео и сжимали его в формате JPEG с помощью, например, Microsoft Paint или Photoshop. Главным преимуществом данного кодека считается простота алгоритма сжатия, что не требует высокопроизводительного процессора. А вот недостатки этого продукта и стали причиной того, что применение его стремительно падает в системах видеонаблюдения. Итак, это в первую очередь – высокие требования к размерам дискового пространства для хранения информации. Кроме того, при реализации возможности удаленного доступа к видео данным посредством Интернет использование кодека MJPEG характеризуется не рациональным использованием пропускного канала связи, так как при сжатии отдельных кадров не учитываются изменения в последовательности кадров, что приводит к отправке лишней (одинаковой) информации. Таким образом, кодек MJPEG остается актуален для бюджетных вариантов систем видеонаблюдения, так как не предъявляет высоких требований к техническим характеристикам компьютеризированной части, однако для многофункциональных систем мониторинга и камер с большим разрешением его использование является не рациональным.

Читайте также: