Декодирование с низкой задержкой в MediaCodec

Эта функция была добавлена в Android 11, чтобы обеспечить декодирование медиаконтента с низкой задержкой, что важно для приложений, работающих в реальном времени. Партнеры по производству чипсетов должны предоставить драйвер декодера для поддержки этой функции. Фреймворк мультимедиа сигнализирует об этом режиме с помощью параметров конфигурации Codec 2.0/OMX, доступных в AOSP. Информацию о том, как включить эту функцию, можно найти в реализации.

Реализация

Чтобы поддерживать эту функцию, партнерам по однокристальным системам необходимо реализовать драйверы декодера. Разработчики приложений могут использовать новый API для работы с этой функцией. Партнеры должны предоставить драйверы декодера. Это новый общедоступный API, который ещё не использовался. Для этой функции не нужно реализовывать системный интерфейс или расширение.

Настройка канала

API позволяет пользователям включать и отключать эту функцию. Если она включена, декодер должен возвращать декодированные кадры как можно быстрее в соответствии со стандартом кодирования (не дожидаясь дальнейших входных данных) и не должен отключаться. Если этот параметр отключен, декодер может использовать оптимизацию энергопотребления, из-за чего декодированные кадры будут возвращаться позже, чем необходимо, а при задержке декодер может отключиться.