Google запускает бета-версию кодека Lyra, чтобы уменьшить использование полосы пропускания голосовых вызовов

Источник · Перевод автора

Сегодня Google представила бета-версию Lyra – аудиокодека, который использует машинное обучение для создания высококачественных голосовых вызовов. Код и демонстрация, доступные на GitHub, сжимают необработанный звук до 3 килобит в секунду для «качества, которое выгодно отличается от других кодеков», – говорит Google.

В то время как возможности мобильного подключения неуклонно росли за последнее десятилетие, взрывной рост вычислительной мощности на устройствах опередил доступ к надежному и быстрому Интернету. Даже в областях с надежными соединениями появление возможности работать из любого места и удаленная работа расширили границы данных. Например, по данным BroadbandNow, в начале пандемии почти в 90 из 200 крупнейших городов США скорость интернета снизилась из-за ограничения пропускной способности.

Google утверждает, что Lyra может изменить ситуацию в этих сценариях.

Архитектура Lyra разделена на две части: кодировщик и декодер. Когда кто-то разговаривает по телефону, кодировщик улавливает отличительные атрибуты, называемые функциями, из его речи. Lyra извлекает эти функции порциями по 40 миллисекунд, а затем сжимает и отправляет их по сети. Задача декодера – преобразовать функции обратно в звуковую волну, которую можно воспроизвести на телефоне слушателя.

Согласно Google, архитектура Lyra похожа на традиционные аудиокодеки, которые составляют основу интернет-коммуникаций. Но хотя эти традиционные кодеки основаны на методах цифровой обработки сигналов, ключевое преимущество Lyra заключается в способности его декодера восстанавливать высококачественный сигнал.

Google считает, что существует ряд приложений, для которых Lyra может быть уникально приспособлена: от архивирования больших объемов речи и экономии заряда батареи до уменьшения перегрузки сети в чрезвычайных ситуациях.

«Мы рады видеть, как творческий потенциал сообщества разработчиков открытого исходного кода применяется к Lyra, чтобы создавать еще более уникальные и эффективные приложения», – написали в блоге инженеры Google Chrome Эндрю Сторис (Andrew Storus) и Майкл Чинен (Michael Chinen). «Мы [хотим] помочь разработчикам и получить обратную связь как можно скорее».

Код Lyra написан на C++ с использованием платформы сборки Bazel. Базовый API предоставляет интерфейс для кодирования и декодирования на уровне файлов и пакетов, а также предоставляется полный набор инструментов для обработки сигналов, который включает фильтры, а также преобразования. Пример кода Google интегрируется с Android NDK, чтобы показать, как Lyra может работать с приложениями Android на базе Java, и Google также предоставил весовые и векторные квантователи, необходимые для запуска Lyra.

«Этот выпуск предоставляет разработчикам инструменты, необходимые для кодирования и декодирования звука с помощью Lyra, оптимизированные для 64-битной платформы Android ARM, с разработкой на Linux», – продолжили Сторис и Чинен. «Мы надеемся расширить эту кодовую базу и разработать улучшения и поддержку дополнительных платформ в тандеме с сообществом».