Инсайдеры из Android Authority изучили очередную сборку с обновлениями Android 16 и выяснили, что в ожидаемую версию ОС добавлена поддержка встроенных программных аудиокодеков, позволяющих запускать медиакодеки внутри процесса приложения, а не в песочнице, как это было ранее, начиная с Android 7.0.
Это производится посредством класса MediaCodecInfo, который теперь включает метод getSecurityModel(), возвращающий информацию о типе безопасности кодеков. Режим «операция внутри процесса» считается безопасным благодаря тому, что кодеки написаны на безопасном для памяти языке Rust.
Основная мотивация Google для разработки этой функции заключается в повышении производительности кодека AAC и снижении энергопотребления. Оценки компании показывают, что до 50% процессорного времени, затрачиваемого на работу с кодеком AAC, уходит на межпроцессное взаимодействие, что в итоге может снизить производительность.
Поэтому переход на внутрипроцессные кодеки должен повысить эффективность декодирования и кодирования AAC. Google намерена сделать так, чтобы все встроенные кодеки были написаны на языке Rust для обеспечения безопасности.
Впервые об этой функции сообщили на мероприятии 2023 Mainline Summit, где представлялись изменения в модулях Project Mainline.