Что это такое? Кодирование видео – это преобразование файлов определенного типа из одного формата в другой, более подходящий для конкретных целей. Сюда же относят изменение некоторых спецификаций цифрового потока.
Зачем нужно? Данный процесс необходим чаще всего для уменьшения объема видеоинформации с как можно меньшими потерями качества изображения. Если этого не делать, то пропускной способности каналов связи и места для хранения данных во многих случаях может оказаться недостаточно.
Оглавление:
Смысл кодирования видео
Цифровое видео появилось в 1980-х годах. В то время оно использовалось в несжатом виде, что требовало от оборудования огромной емкости памяти и делало практически невозможным использование такой технологии в бытовых устройствах. И даже сегодня, когда вместимость жестких дисков и пропускная способность интернета сильно выросли, без компрессии использование цифровых видеофайлов станет настоящим краш-тестом не только для компьютера или гаджета, но и нервной системы.
Только представьте. Любое видео состоит из тысяч фреймов, как кадры диафильма. Звук может содержать потоки для многоканального воспроизведения, увеличивая объем аудиодорожки в разы. Для их хранения потребуются десятки гигабайт памяти.
Например, видеофайл длительностью всего 30 секунд с размером изображения 768 на 576 пикселей, с цветопередачей 24 бит, частотой смены кадров 25 fps, дискретизацией звука 48 кГц в исходном виде весит около 1000 Мб. Если у нас есть фильм продолжительностью 2 часа, то он легко займет все место на винчестере. Однако современные технологии позволяют этого избежать.
Скачивайте и используйте уже сегодня:
10 шагов, которые помогут выбрать добросовестного подрядчика
Поможет сохранить бюджет и уложиться в сроки проекта
С помощью кодирования информации в видеофайле можно оптимизировать последовательность соседних кадров, имеющих минимум различий. В этом случае берется часть изображения, которая от кадра к кадру остается неизменной, а изменяющиеся элементы записываются отдельно. Это позволяет значительно уменьшить объем записи. Кроме того, может использоваться понижение качества изображения в тех участках, где оно будет наименее заметно. За все эти преобразования отвечают особые программы – кодеки (компрессоры/декомпрессоры).
Когда мы смотрим фильм на компьютере, то мы не задумываемся, какой сложный процесс происходит прямо на наших глазах. Процессор непрерывно обрабатывает множественные данные, выполняет декодирование звука и видео, при этом постоянно загружается информация из внешней и оперативной памяти, происходит ее передача на средства вывода. Познание сугубо технических особенностей этого процесса вполне может оказаться интереснее самого фильма.
Типы сжатия видеоинформации
Когда проводится компрессия видеофайла, особые алгоритмы, реализованные в кодеке, обрабатывают информацию, удаляя часть данных, которые не влияют на общее восприятие изображения. В результате на выходе занимаемое файлом место в памяти устройства оказывается значительно меньше исходного.
Различают два метода кодирования видео.
При покадровом сжатии происходит анализ каждого кадра как самостоятельного изображения, из множества которых состоит видеоряд. Такой тип кодирования видео позволяет добиться хорошего качества конечной записи, однако сжатие оказывается невысоким. Объясняется это просто. Даже если на видео воспроизводится отрезок с полностью статичной сценой, все кадры, из которых она состоит, сохраняются полностью, ни один из них не исключается.
Межкадровое кодирование использует другой подход. Суть его в том, что обрабатывается последовательность кадров, на каждом из которых присутствует неизменный участок. Для каждого изображения записывается лишь его изменяемая часть, статичный фрагмент сохраняется только в одном из них. Такая методика обеспечивает огромный прирост коэффициента сжатия и уменьшение размера файла.
Вместе с тем нужно понимать, что даже наиболее совершенные кодеки в той или иной степени понижают качество записи. Однако такое ухудшение с развитием цифровых технологий становится все менее заметным. Среднестатистический пользователь, не имеющий повышенных требований к качеству видео, может и вовсе не увидеть различий, особенно на записи статичных сцен.
Обеспечить приемлемое качество позволяет грамотный выбор таких настроек, как разрешение видео, объем выходной записи, цветопередача, контрастность. Также влияет и само содержание видео (если на нем запечатлена трансляция хоккейного матча, то потеря качества будет более заметна, чем на записи выступления докладчика, стоящего неподвижно за трибуной). В зависимости от этих параметров нужно подбирать наиболее подходящие кодек и формат.
Переменные форматов кодирования
Изложенные доводы не оставляют сомнений. Какое бы содержание ни имела запись на экране телевизора или гаджета, мы имеем возможность смотреть ее лишь благодаря кодированию видеоинформации, позволяющему сжать файл, сохранить его на устройстве и передать по интернет-каналу.
Разработано множество различных форматов видео. В каждом из них используются собственные алгоритмы. Все они отличаются по ряду параметров: тип контейнера (.MOV, .FLV, .MP4, .OGG, .WMV, WebM), кодеки (H264, VP6, ProRes), битрейт (количество данных, содержащихся в одной секунде записи).
Популярные видеоконтейнеры
Говоря о различных форматах видео, рядовые пользователи обычно подразумевают тип видеоконтейнера. Чаще всего используются AVI, MKV, MPEG / RM / RMV, MPEG-4, MOV, WMV. Каждый из них можно сравнить с ящиком, в который помещается несколько элементов: видео, звук, субтитры. При этом одни из них предоставляют возможность включения нескольких аудиодорожек, файлов субтитров, а другие имеют определенные ограничения. Так, если вы захотите добавить субтитры к контейнеру AVI или WMV, скорее всего, их придется разместить прямо на видео, то есть они станут составным элементом изображения.
Различные видеокодеки
Обычно тип контейнера допускает использование нескольких форматов кодирования. Они и определяют алгоритм обработки и компрессии изображения и звука. Наибольшее распространение получили Theora, DivX / XviD, FFMPEG, h264 / x264.
Один и тот же формат кодирования видео может без проблем использоваться в одном контейнере, но оказаться несовместимым с другим. И наоборот, использование некого определенного контейнера исключает возможность кодирования в отдельных форматах.
При одном и том же размере файла разные форматы дают различное качество. Так, AVI, DivX или XviD, совместимые с большинством устройств, при высоком сжатии сильно искажают запись.
Если кодирование выполнено с помощью формата х264, то качество будет гораздо выше. При этом он совместим с MKV, который допускает использование нескольких дорожек видео и звука. Подходит он и для MP4, который может без труда распознать практически любое устройство, однако поместить в это контейнер несколько дорожек не получится.
Низкий и высокий битрейт
От битрейта зависит, какой объем данных будет содержаться в одной секунде записи. Чем он выше, тем больше размер файла и выше качество. Этот показатель можно оставить при компрессии без изменений, но во многих случаях имеет смысл подобрать его оптимальное значение, которое обеспечит золотую середину между объемом файла и степенью искажения изображения и звука.
Также нужно принимать во внимание пропускную способность канала, по которому будет осуществляться передача файлов. Если планируется трансляция в Интернете, возможно, придется пожертвовать качеством, чтобы видео воспроизводилось без задержек. Специальное программное обеспечение позволяет выставить оптимальное качество кодирования видео, соответствующее имеющейся скорости интернет-соединения.
Подходящие стандарты сжатия для камер видеонаблюдения
В системах видеонаблюдения наибольшее распространение получили несколько форматов. Разберем их.
Алгоритм M-JPEG (Motion JPEG)
В 90-х годах данный формат являлся основным. Однако сегодня он уже выглядит морально и технически устаревшим. Современные кодеки давно не используют покадровое кодирование.
В M-JPEG каждый кадр обрабатывается отдельно, сохраняется полное его содержание с понижением качества записи. Ни о каких блоках изображения, единых для нескольких фреймов, здесь речи не идет. В результате при компрессии данным кодеком на выходе получается файл не самого высокого качества, обладающий при этом довольно ощутимым объемом.
Алгоритм MPEG-4
Более совершенный, но все же устаревший формат. Его отличительной особенностью является возможность кодирования отдельных элементов изображения, находящихся в динамическом состоянии, при сохранении базового для нескольких кадров элемента. Диапазон значений, который можно задать для сжатия, достаточно широк. Возможна оптимизация под соединение практически с любой скоростью, что делает данный формат популярным для интернет-трансляций.
Алгоритмы H.264 и H.264+
Получившие широкое распространение форматы, которые способны обеспечить высокое качество видео при хорошем сжатии файла. Подходят для хранения длительных записей, так как имеют небольшой вес кодированного файла и невысокие требования к скорости интернета.
H.264 – оптимальный вариант для камер наружного видеонаблюдения. Он обеспечивает запись в формате высокой четкости, высокую частоту обновления кадров. Однако для его использования потребуется мощное оборудование, чтобы запись и воспроизведение видео происходили без задержек.
H.264+ – это дальнейшее развитие кодека H.264, которое позволяет повысить коэффициент компрессии по сравнению с предшественником.
Алгоритмы H.265 и H.265+
Формат H.265 обеспечивает более высокую компрессию, чем H.264, при одинаковом качестве видео. Разница может достигать 200 %. Файлы одинакового размера в этих двух форматах будут иметь заметную разницу в качестве изображения.
Добиться таких показателей позволяют три основных особенности. Во-первых, кодирование с предсказанием, то есть алгоритм анализирует, какие изменения произойдут на следующих кадрах по сравнению с предыдущим. Во-вторых, применяется подавление фонового шума, то есть происходит удаление мелких деталей, занимающих драгоценные мегабайты от объема файла, но отсутствие которых незаметно глазу. В-третьих, используется метод долгосрочного управления видеопотоком.
Как вы помните, видеорегистраторы способны распознавать движение. Когда его не происходит, то есть наблюдаемая обстановка не меняется, битрейт записи автоматически снижается, что позволяет экономить немало места в памяти жесткого диска. H.265+, по сравнению с H.265, использует технологию длительного управления битрейтом, то есть значительно в большей степени понижает битрейт видео там, где высокое качество не требуется.
Кроме того, H.265+, если в кадре присутствует движущийся предмет, способен эффективно отделять его от статичной части изображения. Динамический элемент регистрируется в максимально возможном качестве, а статичный фон записывается с искажениями. В результате не только уменьшается объем записи, но и снижаются требования к вычислительным мощностям оборудования.
Итак, идеальным вариантом для видеорегистратора следует признать кодек H.265+. Однако здесь необходимо учитывать, что пока данный формат является относительно новым, и далеко не все камеры способны с ним работать. Читайте информацию производителя регистратора. Если же записи просматриваются изредка либо к их качеству не предъявляется высоких требований, более привычные кодеки помогут сэкономить ощутимую сумму при установке системы наблюдения.
Несколько слов о том, на каком кодеке остановить свой выбор. Кодирование видео в формате MPEG-4 подойдет для задач, связанных с использованием домашних систем, имеющих ограниченные технические возможности, а также для трансляции записи в реальном времени на экране гаджета. Это поможет снизить нагрузку на устройство.
Если же требуется профессиональная система, способная обеспечить использование самых современных технологий, включая распознавание видео и переменное сжатие, то лучшим вариантом будет H.265+. При этом в данное время уже ведутся работы над совершенствованием алгоритмов, которые будут способны обеспечить еще более высокие характеристики кодирования видео.