[Принципы аудио и видео] Концепция кадра I P B видеокадров ② (Кадр B - кадр двунаправленной интерполяции | Концепция группы изображений | Влияние различных типов ошибок декодирования кадров | Порядок кодирования и декодирования группы изображений | Общие алгоритмы сжатия видео)
[Принципы аудио и видео] Концепция кадра I P B видеокадров ② (Кадр B - кадр двунаправленной интерполяции | Концепция группы изображений | Влияние различных типов ошибок декодирования кадров | Порядок кодирования и декодирования группы изображений | Общие алгоритмы сжатия видео)

1. B-кадр – двунаправленный интерполированный кадр.


1. Введение в B-кадр

Полное название B-кадра — «Двунаправленные прогнозируемые кадры», в котором используется двунаправленное прогнозирующее кодирование. То есть B-кадр записывает разницу между текущим B-кадром и предыдущим и последующим I-кадрами или P-. рамки;

Уведомление : B рамка Прежде чем это сделать, нужно зависеть от ближайшего I рамка или P рамка и самый последний после P рамка декодировать , B рамка не могу Зависит от B рамка ;

  • B рамка Зависимость Маичирамка может быть I рамка или P рамка ;
  • B рамка Зависимость Последний кадр Определенно P рамка , невозможный да I рамка ;

хотетьдекодированиеBрамка, Вам нужно не только получить предыдущий кэшированный экран , Также нужно расшифровать картинку , проходить до и послеэкранрамка и Рамка общий 3 рамкаиз Наложение данных Получите финальную картинку ;

B рамка Высокая степень сжатия , B рамка из сжатие и декодирование Высокие требования к производительности компьютера. ;

2. Случай декодирования B-кадра

B рамкадекодирование , Нужна ссылка до и после два кадра данные ;

подиз трирамка данныедекодироватьчас ,

первый , декодирование I рамка Ключевая рамка ,

Затем , декодирование P рамка , в соответствии с I рамка декодирование P рамка ,

наконец , декодирование B рамка , в соответствии с I рамка и P рамка декодирование B рамка ;

2. Понятие группы изображений.


1. Концепция группы изображений.

Группа изображений ( Group of Pictures ) Зависит от I рамка / P рамка / B рамка композиция ;

  • I рамкада " внутренняя кодирующая рамка ( Intra Coded Frames ) " , Может использоваться как ориентир для произвольного доступа из , и его можно рассматривать как полное изображение ;
    • Группа изображений из Первая рамка , Мустда I рамка ;
    • один Группа изображенийсередина , только один I рамка ;
  • P рамкада " Рамка прогнозирования вперед ( Predicted Frames ) " , запись изда относительно предыдущего кадра обмен ;
  • B рамкада " Рамка двунаправленной интерполяции ( Bi-directional Predicted Frames ) " , запись изда Относительно до и послерамка изразличия ;

Группа изображений ( GOP , Group of Pictures ) из длина и P рамка / B рамкаиз количества и другие параметры , Чтобы видеосжатие эффективностии Качество изображение имеет большое влияние.

Группа изображений ( GOP , Group of Pictures ) длинатем длиннее , P рамка и B рамка Чем больше число ,

  • видеосжатие Чем выше эффективность ;
  • Качество изображения Чем хуже ;

Требуется в практических приложениях в соответствии Особые потребности и сцена выбрать правильное из GOP параметр , чтобы достичь лучшего эффект сжатия и Качество изображения ;

2. Влияние различных типов ошибок декодирования кадров

B рамка Нетдассылкарамка, декодированиеошибка Не распространяется на другую рамку , Это затронет только одного человека, которым вы владеете. ;

I рамка Однажды ошибка декодирования , повлияет на всю Группа изображений из показывать ;

P рамка декодированиеошибка , повлияет Следовать за P рамка , илиполагаться Должен P рамка До или после из B рамка из экранпоказывать ;

3. Последовательность кодека группы изображений


1. Несколько инструкций по последовательности, связанных с группами экранов.

Группа Несколько пояснений последовательности, связанных с изображениями : существуют несколько связанных последовательностей на картинке ниже ;

  • декодированиезаказ : Первыйдекодирование I рамка Ключевая рамка ,Сновадекодирование P рамка, наконецдекодирование B рамка ;
  • показыватьзаказ : то естьрамка Обычная комплектация под заказ ;
  • DTS : Decoding Time Stamp , декодирование временной метки ,сообщить игроку Долженсуществоватьчточасдекодирование Вот этотрамкаизданные, Должен временная метка да AVPacket Член структуры ,выражатьэтотсжатие Бао Ин Долженчточасодеялодекодирование ;
  • PTS : Presentation Time Stamp , показать временную метку , Сказать игроку Долженсуществовать, когда покажу эти кадризданные , Долженданные ключевые факторы при определении кадрасуществовать фактическое время показа во время воспроизведения ;

большинство стандарт декодирования ( нравиться : H.264 ) ,Порядок кодирования и показыватьзаказ может быть не последовательным,особенныйдадолжен сохранитьсуществоватьBрамкачас ;

в это время DTS и PTS становится особенно важным , Эти две временные метки Возможность гарантировать, что музыка воспроизводится в правильной синхронизации и последовательности. ;

2. Детальный анализ последовательности декодирования группы изображений.

каждый GOP Группа изображений Все на основе I рамканачинать , Первый I рамкадекодированиепублично заявить;

I рамка иметь в виду перезапуск :

  • выброситьданные : если бы только I рамкадекодированиепублично заявить, Вы можете изменить переднюю часть GOP Группа изображений выбросить ,выбросить ; До Предыдущий Группа изображений GOP декодированиепублично заявитьиз данные, Сохранить из серединаданных ,разницаданные, Ключевая рамкаданные , Это все выбросить ;
  • новый Ключевая рамка : послеиз данные Все с этот I рамка в качестве основыдекодировать ,
  • Завершение с ошибкой: нравитьсяфруктыфронт из Группа изображений Есть ошибка декодирования , Итак, из этого I рамка начинать , Не будет никакой ошибки ;

Группа изображений из Первая рамка I рамка ,декодированиепублично заявитьпосле, Просто поставь зависит от Должен I рамкаиз Рамка прогнозирования вперед P рамка ,декодированиепублично заявить,Это второй нуждатьсяхотетьдекодированиеизрамка ;

существовать I рамка и P рамка средний из два B рамка , Всезависит от фронт из I рамка и обратно из P рамка ;

  • второй B рамка , запись изданныедаи первый I рамка и четвертый P рамка изразницаданные;
  • третий B рамка , запись изданныедаи первый I рамка и четвертый P рамка изразницаданные;

два B рамкаиз до и послезаказ, то есть до и после того, как Приказ определит из ;

нравитьсяфрукты нарушение декодирования , Вы также можете следить показать временную метку руководить Играйте правильно ;

4. Часто используемые алгоритмы сжатия видео (только для справки)


1. Алгоритм лагеря MPEG

MPEG алгоритм лагеря : Moving Picture Experts Group , Международная организация по разработке аудиостандартов ;

  • Алгоритм MPEG-1: против 1.5 Mbps Следующая скорость передачи данных с цифровых носителей информации, движущихся изображений и сопровождающего их аудиокодирования по международным стандартам , Широкий спектр применения , нравиться : VCD ;
  • Алгоритм MPEG-2: Обеспечивает качество, близкое к вещательному , Обычно используется DVD / цифровое кабельное телевидение поле ;
  • Алгоритм MPEG-4: потоковое мультимедиа Видео высокого качества алгоритм , в способе изсжатия объекта Повышенная эффективность , В то же время он обеспечивает лучшую интерактивность и гибкость. ;
  • Алгоритм H264: также известный как " AVC алгоритм " , Сжатие по высоте стандарт декодирования цифрового видеокомпилятора , Передовые технологии делают существование равным состоянию. изображенияизв условиях , увеличение после изданного количества, чем до из стандарта ; широко используется в сетьпотоковое мультимедиа / видеозвонок / HDTV-трансляции и многое другое поле ;
  • Алгоритм H265: также известный как " HEVC алгоритм " , Обеспечить более высокую эффективность , Извидео в большем разрешении , нравиться 4K / 8K ; Может существовать одинаковое качество видео в одно и то же время , Двойная эффективность изсжатия видеофайлов , этотиметь в Файлы видео будут уменьшены вдвое ;

2. Алгоритм китайского лагеря

серединастранаалгоритм лагеря :

  • Алгоритм АВС: Китай имеет независимые права интеллектуальной собственности на стандарты технологий кодирования видео. , Разработать технические стандарты для цифрового звука, интерпретации, обработки и представления и т. д. , Обеспечить эффективную и экономичную технологию редактирования для систем цифрового аудиооборудования. ;

3. Алгоритм лагеря Google

Google алгоритм лагеря :

  • Алгоритм VP8: Google Разработать формат видеосжатия с открытым исходным кодом , да WebM часть проекта , Обеспечиваем высококачественное видеосжатие в реальном времени. , сохраняя при этом низкую сложность издекодирования ;
  • Алгоритм VP9: Обеспечивает более высокую эффективность , такжеда WebM часть , используется для Сетевое потоковое видео и WebRTC и другие приложения ;
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 и детали кода