[Принципы аудио и видео] Концепции, связанные с изображением ⑤ (Хранение данных YUV | Описание формата I444 | Описание формата I422 | Описание формата I420 | Описание формата NV12 | Описание формата NV21)
[Принципы аудио и видео] Концепции, связанные с изображением ⑤ (Хранение данных YUV | Описание формата I444 | Описание формата I422 | Описание формата I420 | Описание формата NV12 | Описание формата NV21)

1. Хранение формата YUV 4:4:4.


1. Описание формата I444

Формат выборки YUV 4:4:4, соотношение компонента яркости Y к компоненту цветности UV составляет 1:1;

Если формат выборки YUV444 хранится в соответствии с плоским форматом, то это формат YUV444P;

Формат YUV444P, также называемый форматом I444, соответствует идентификатору формата пикселей AV_PIX_FMT_YUV444P в FFmpeg;

AV_PIX_FMT_YUV444P идентификатор формата пикселей в FFmpeg. Описание:

  • AV_PIX_FMT_ Префикс да FFmpeg середина Используется для идентификации внутреннего формата пикселя. ;
  • YUV444 выражать Каждый отдельный пиксель имеет независимый изY U Vмасса , Цветовая масса не подвергается субдискретизации , и Яркостьмасса остается прежней изResolution ;
  • P выражать YUV масса да плоский формат хранилище из , выражать YUV масса , Хранится в трииндивидуальныйдругойизмножество середина ; Относительная вещь Пакет Форматхранилище ,YUV массанаборсерединамагазинсуществоватьодининдивидуальныймножествосередина ;

2. Преимущества и недостатки формата YUV444.

Формат YUV444 обеспечивает высококачественную цветопередачу, поскольку каждый пиксель содержит полную информацию о цвете;

Формат YUV444 не выполняет понижающую дискретизацию компонентов цветности. Он также требует больше места для хранения данных изображения и потребляет больше полосы пропускания во время передачи данных.

3. Хранение данных YUV444P.

Формат хранения данных YUV444P показан на рисунке ниже:

Различные типы компонентов размещаются в разных массивах,

Компонент значения серого Y хранится в верхнем массиве. На рисунке ниже значения серого Y0 ~ Y7 хранятся в массиве;

Компонент значения цветности U хранится в промежуточном массиве. На рисунке ниже значения цветности U0 ~ U7 хранятся в массиве;

Компонент значения цветности V хранится в нижнем массиве. На рисунке ниже значения цветности V0 ~ V7 хранятся в массиве;

2. Хранение формата YUV 4:2:2.


1. Описание формата I422

Формат выборки YUV 4:2:2, соотношение компонента яркости Y к компоненту цветности UV составляет 2:1;

Если формат выборки YUV422 хранится в соответствии с плоским форматом, то это формат YUV422P;

Формат YUV422P, также называемый форматом I422, соответствует идентификатору формата пикселей AV_PIX_FMT_YUV422P в FFmpeg;

AV_PIX_FMT_YUV422P идентификатор формата пикселей в FFmpeg. Описание:

  • AV_PIX_FMT_ Префикс да FFmpeg середина Используется для идентификации внутреннего формата пикселя. ;
  • YUV422 выражать Каждый отдельный пиксель имеет независимый из Y Яркостьмасса , UV Цветовая масса из Частота выборкида Яркостьмассаполовина , И да чередуется в горизонтальном направлении из ;
  • P выражать YUV масса да плоский формат хранилище из , выражать YUV масса , Хранится в трииндивидуальныйдругойизмножество середина ; Относительная вещь Пакет Форматхранилище ,YUV массанаборсерединамагазинсуществоватьодининдивидуальныймножествосередина ;

2. Преимущества и недостатки формата YUV422.

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

Поскольку частота горизонтальной выборки компонента УФ-цветности уменьшена вдвое, это может сэкономить определенный объем места для хранения, сохраняя при этом хорошее качество изображения в большинстве условий просмотра;

3. Хранение данных YUV422P.

Формат хранения данных YUV422P показан на рисунке ниже:

Различные типы компонентов размещаются в разных массивах,

Компонент значения серого Y хранится в верхнем массиве. На рисунке ниже значения серого Y0 ~ Y7 хранятся в массиве;

U Значение цветности масса , хранится в в среднем массиве , На картинке ниже U0 ~ U3 из Значение цветности Просто сохраните его в массиве , U только индивидуальный номер 4 индивидуальный , да Y массаиндивидуальныйчислополовина ;

V Значение цветности масса , хранится в Нижний измножествосередина , На картинке ниже V0 ~ V3 из Значение цветности Просто сохраните его в массиве , V масса только индивидуальный номер 4 индивидуальный , да Y масса индивидуальныйчислополовина ;

вышеиз данные середина ,

  • Y0 и Y1 значение серого использовать U0V0 Значение цветности , 2 используется отдельный пиксель 4 байт ,одининдивидуальный Пиксель 2 байт ;
  • Y2 и Y3 значение серого использовать U1V1 Значение цветности , 2 используется отдельный пиксель 4 байт ,одининдивидуальный Пиксель 2 байт ;
  • Y4 и Y5 значение серого использовать U2V2 Значение цветности , 2 используется отдельный пиксель 4 байт ,одининдивидуальный Пиксель 2 байт ;
  • Y6 и Y7 значение серого использовать U3V3 Значение цветности , 2 используется отдельный пиксель 4 байт ,одининдивидуальный Пиксель 2 байт ;

3. Хранение формата YUV 4:2:0.


1. Описание формата I420

YUV 4:2:0 Формат выборки , Y Яркостьмасса и UV Цветовая масса непропорционально 4:1 ;

Если YUV420 Формат выборки в соответствии с плоский формат Planar магазин , Тогда просто да YUV420P Формат ;

YUV420P Формат , позвони еще раз I420 Формат , и FFmpeg серединаиз AV_PIX_FMT_YUV420P Соответствие идентификатора формата пикселя ;

FFmpeg серединаиз AV_PIX_FMT_YUV420P Идентификатор формата пикселя иллюстрировать :

  • AV_PIX_FMT_ Префикс да FFmpeg середина Используется для идентификации внутреннего формата пикселя. ;
  • YUV420 выражать Каждый отдельный пиксель имеет независимый из Y Яркостьмасса , UV Цветовая масса существуют горизонтально и вертикально из Частота выборкида Яркостьмасса Y половина , Каждыйиндивидуальный 2x2 из Пиксельблокировать общий доступодинверно Цветовая значение массы ;
  • P выражать YUV масса да плоский формат хранилище из , выражать YUV масса , Хранится в трииндивидуальныйдругойизмножество середина ; Относительная вещь Пакет Форматхранилище ,YUV массанаборсерединамагазинсуществоватьодининдивидуальныймножествосередина ;

2. Преимущества и недостатки формата YUV420.

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

YUV422P Формат из UV Цветовая массаизнизкая частота отбора проб , Это может значительно уменьшить размер изображения. , сохраняя при этом хорошие визуальные эффекты , Особенно для человеческого глаза, который более чувствителен к информации о яркости. ;

3. Хранение данных YUV420P.

YUV420P данныехранилище Форматнравиться Как показано ниже :

Различные типы компонентов размещаются в разных массивах,

  • Компонент значения серого Y хранится в верхнем массиве. На рисунке ниже значения серого Y0 ~ Y7 хранятся в массиве;
  • U Значение цветности масса , хранится в в среднем массиве , На картинке ниже U0 ~ U3 из Значение цветности Просто сохраните его в массиве , U только индивидуальный номер 4 индивидуальный , да Y массаиндивидуальныйчислополовина ;
  • V Значение цветности масса , хранится в Нижний измножествосередина , На картинке ниже V0 ~ V3 из Значение цветности Просто сохраните его в массиве , V масса только индивидуальный номер 4 индивидуальный , да Y масса индивидуальныйчислополовина ;

вышеиз данные середина ,

  • Y0 , Y1 , Y4 , Y5 значение серого использовать U0V0 Значение цветности , 4 используется отдельный пиксель 6 байт ,одининдивидуальный Пиксель 1.5 байт ;
  • Y2 , Y3 , Y6 , Y7 значение серого использовать U1V1 Значение цветности , 4 используется отдельный пиксель 6 байт ,одининдивидуальный Пиксель 1.5 байт ;
  • Y8 , Y9 , Y12 , Y13 значение серого использовать U2V2 Значение цветности , 4 используется отдельный пиксель 6 байт ,одининдивидуальный Пиксель 1.5 байт ;
  • Y10 , Y11 , Y14 , Y15 значение серого использовать U3V3 Значение цветности , 4 используется отдельный пиксель 6 байт ,одининдивидуальный Пиксель 1.5 байт ;

4. Хранение данных формата NV12.

NV12 Цветовое кодирование изображения Формат такжеда YUV 420 Форматиз , также известный как " YUV420SP Формат " , Просто даит UV Значение цветностьиз композиции и I420 Формат другой ;

  • существовать I420 Форматсередина , Y массада плоский формат , UV масса Также даплоский формат ,Y и U и V Все разделенысуществоватьтрииндивидуальныйдругойизмножествосередина ;
  • существовать NV12 Форматсередина , Y массада плоский формат , UV масса daПакет Формат ,Y помещатьсуществоватьодининдивидуальныйодинизмножествосередина,UV помещатьсуществоватьодининдивидуальныйодинизмножествосередина ;

5. Хранение данных формата NV21.

NV21 и NV12 разница в том, да , UV массаиз разного порядка ,

  • NV12 середина ,U массасуществоватьвперед,V массасуществоватьназад ;
  • NV21 середина ,V массасуществоватьвперед,U массасуществоватьназад ;
boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода