Зачем? Первая причина заключается в том, что используемые методы оценки кодирования по специализированным графикам (где отображается множество характеристик, вроде количества I, P, B кадров и их групповой последовательности) лишь теоретически дают представление о потерях. В реальности, кодирующие и декодирующие системы, с многочисленными модулями интерполяции, сглаживания и т. п., могут давать визуальный результат, совершенно не совпадающий с теоретическим расчётом. Вторая причина в том, что существующие (разработанные ранее) испытательные таблицы статичны и созданы для целей настройки изображения на различных типах экранов. Таблица тестирования работы видеокодеков должна учитывать следующие особенности их работы: 1) Видеокодеки используют не все, а только ключевые, кадры оригинального видеоряда, между которыми записывают в видеофайл лишь изменённую, в каждом промежуточном кадре, информацию. Такая информация определяется детектором изменения в блоках размером, например 16х16 пикселей. 2) Видеокодеки применяют существенное уменьшение оттенков оригинального цветового диапазона, и могут переводить оригинальные цветовые профили, в более подходящие для целей кодирования. 3) От финального битрейта видеофайла зависит визуальная дифференциация и чёткость мелких деталей на изображении. Данная тестовая таблица, на всей протяжённости воспроизведения, является динамической, как по определённым элементам, так и по яркости, контрастности, и цветовой насыщенности – в целом. Такой подход позволяет заставить видеокодек максимально работать в каждом кадре и давать объективные сведения о времени и качестве кодирования видео при определённых настройках видеокодека.
Визуальные элементы тестовой таблицы: 1) Малый центральный круг и четыре аналогичных круга по углам имеют чёрный, белый и два оттенка серого цвета (30% и 60% чёрного, соответственно). Малый центральный круг вращается против часовой стрелки. Круги по углам вращаются по часовой стрелке. 2) Средний центральный круг имеет чёрный, белый и девять оттенков серого цвета (от 10% до 90% чёрного, соответственно ). Средний центральный круг вращается по часовой стрелке. 3) Большой центральный круг разбит лучами зелёного цвета, выходящими из его центра, на 360 сегментов. А, так же 45-ю кольцами, между внутренней окружностью красного цвета и внешней окружностью синего цвета, с перетеканием цвета по кольцам между цветами внутренней и внешней окружности. Большой центральный круг вращается против часовой стрелки. 4) Статичная полоса с семью цветами радуги для теста цветопередачи основных цветов. 5) Статичная полоса, окрашенная в цвета стандартного тестового шаблона цветопередачи. 6) Три статичные рамки зелёного, красного, и синего цвета, толщина которых, в различных местах, имеет 2 и 3 пикселя. Рамки являются одним из важнейших индикаторов передачи трёх основных цветов относительно изменений подвижного фона, и относительно неподвижных участков цветовых полос таблицы, с которыми они пересекаются. 7) Статичные белые треугольники и треугольники с градиентом серого цвета в четырёх углах служат исключительно для визуального определения полноты рабочей области. 8) Фон с радужной заливкой, меняющий в процессе вращения характеристики яркости, контрастности, и цветовой насыщенности. Фон вращается по часовой стрелке. В результате его вращения, постоянно, в каждую единицу времени, меняет свои характеристики большая часть блоков и пикселей испытательной таблицы. 9) Счётчик времени и кадров служит и для тестовых целей и навигации по кадрам. 10) Информационные текстовые надписи.
Характеристики тестового видео: General Complete name: Video encoding quality test table FullHD by Alexandr Tsvet.AVI Format: AVI Format/Info: Audio Video Interleave Format profile: OpenDML File size: 20.9 GiB Duration: 2mn 24s Overall bit rate: 1 246 Mbps
Video ID: 0 Format: RGB Codec ID: 0x00000000 Codec ID/Info: Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples Duration: 2mn 24s Bit rate: 1 244 Mbps Width: 1 920 pixels Height: 1 080 pixels Display aspect ratio: 16:9 Frame rate: 25.000 fps Bit depth: 8 bits Bits/(Pixel*Frame): 24.000 Stream size: 20.9 GiB (100%)
Audio ID: 1 Format: PCM Format settings, Endianness: Little Format settings, Sign: Signed Codec ID: 1 Duration: 2mn 24s Bit rate mode: Constant Bit rate: 1 536 Kbps Channel(s): 2 channels Sampling rate: 48.0 KHz Bit depth: 16 bits Stream size: 26.4 MiB (0%) Alignment: Aligned on interleaves Interleave, duration: 40 ms (1.00 video frame)
Методы визуальной проверки: 1) Произвести частичную или полную кодировку эталонного видеофайла тестовой таблицы испытуемым кодеком (в видеоредакторе или специализированными программами), с записью результата в отдельный видеофайл. В процессе кодирования можно сделать оценку времени, которое уходит на это действие при полной загрузке работы кодека с его текущими настройками (конечно же, в данном случае - без учёта времени обработки каких-либо видеоэффектов). 2) Сравнить изображение эталонного видеофайла с изображением файла, получившимся после кодировки. Сравнение нужно проводить в программах, поддерживающих одновременный, полноформатный просмотр нескольких файлов, с возможностью увеличения определённых элементов изображения до 300% и более, от исходного. Для этих целей, например, подойдёт программа Adobe Photoshop. 3) При сравнении изменений, в первую очередь, необходимо синхронизировать сравниваемые изображения по счётчику кадров (последний сектор счётчика времени в нижней правой части тестовой таблицы). Сам счётчик, относительно меняющегося фона, уже достаточно неплохо показывает такие потери при кодировании, как изменения в движущихся блоках (в народе говорят – картинка рассыпается на пиксели, а на самом деле - на блоки пикселей). Во-вторых, нужно обратить внимание на три цветовые рамки (зелёного, красного, и синего цвета), описанные ранее. На передачу цвета в участках, где эти рамки пересекаются со статичными цветовыми полосами. На чёткость этих рамок. В-третьих, важным моментом является отчётливость движений разных сегментов большого центрального круга, в разных, соседних кадрах. 4) Последнее, на что нужно обратить внимание в визуальном сравнительном анализе – общая цветопередача. Необходимо помнить, что эталонный файл тестовой таблицы имеет встроенный цветовой профиль RGB (в оригинале sRGB IEC61966-2.1). Скорее всего, при кодировании, он будет изменён на один из профилей: YV12, IYUV, YUY2, YVYU, UYVY, VYUY, Y800 (4:2:0 – максимальное сжатие цвета по количеству оттенков, 4:2:2 – сжатие без потерь оттенков цвета, 4:4:4 – сжатие цвета отсутствует), или ещё какой-нибудь, не RGB. В таком случае сразу же будут заметны изменения в цветопередаче. Это не принципиально, если в дальнейшей работе будет использоваться один и тот же кодек. Просто нужно всегда помнить о соответствии цветовых профилей или потере оригинальной цветопередачи, при кодировании в другой цветовой профиль.
Контрольные суммы файла:Video encoding quality test table FullHD by Alexandr Tsvet.AVI CRC32: B860DC47 MD5: 4E5B47761BC25FA52E64704FFFFC6CE6 SHA-1: 2E61EC1ABB5199EC83FFFAA8AA7B280671914518