4PDA, 2006 № 02-03 | страница 14



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

Здесь ключевым моментом является количество бит, выделяемых для хранения цвета одного пикселя. В этой связи появляется термин «битрейт». Битрейт – это размер видеопоследовательности в битах, отнесенный к его длительности в секундах. Единицей измерения битрейта служит 1 бит/с – один бит в секунду (1bps – 1 bit(s)-per-second). Поскольку 1 бит/с – величина очень маленькая в приложении к цифровому видео, также вводятся килобит/с (кбит/с). Чем выше битрейт и, соответственно, бит выделено под хранение одного пикселя, тем реалистичнее картинка, но тем больше объем конечного файла.


Параметры кодирования

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

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

Однопроходный режим с постоянным битрейтом

Этот режим – самый простой: каждый кадр имеет одинаковый размер, а результирующий поток видеоданных имеет постоянный битрейт. Алгоритм этого режима весьма прост и, соответственно, нересурсоемок. Однако, результаты, полученные в таком режиме, существенно уступают результатам в других однопроходных режимах. В современных кодеках практически не используется.

Однопроходный режим с переменным битрейтом


Он реализует простейшую схему: если кадр простой для сжатия, то используется лишь часть выделенных для нее битов. Остальные биты «откладываются» в своего рода копилку – резервуар. Благодаря этому на сложных сценах мы можем использовать больше бит для сжатия кадра, заимствуя часть битов из резервуара. Данная схема проста и эффективна, потому она дает лучшее качество изображения, чем в режиме с постоянным битрейтом. Но, реальный битрейт получится на усмотрение кодека, поэтому точно контролировать размер фала не получится.