Совместное использование аудиосигнала (микрофона) с несколькими приложениями на Android ⇐ Android
-
Гость
Совместное использование аудиосигнала (микрофона) с несколькими приложениями на Android
Согласно официальной документации
В Android 10 (уровень API 29) и выше применяется схема приоритетов, которая позволяет переключать входной аудиопоток между приложениями во время их работы. В большинстве случаев, если новое приложение получает аудиовход, предыдущее приложение, записывающее звук, продолжает работать, но получает тишину. В некоторых случаях система может продолжать передавать звук в оба приложения. Ниже описаны различные сценарии обмена.
За исключением некоторых особых случаев, звук не передается между приложениями.
Но я видел множество приложений, использующих аудиовход, но не попадающих в указанные выше особые случаи. Например. Масштаб: когда я разговариваю по телефону в режиме масштабирования и запускаю диктофон, оба приложения получают звук, хотя интенсивность звука при масштабировании снижается.
Аналогично, Omlet Arcade может записывать звук с микрофона, даже если доступ к микрофону предоставлен другим приложениям.
Как это возможно? А согласно документации, этого допускать нельзя.
Обновление: Этого удалось добиться с помощью гобоя. Но это не одинаково на всех устройствах. Это также вызывает проблемы с синхронизацией в моем приложении потоковой передачи. Звук слышен с задержкой
Согласно официальной документации
В Android 10 (уровень API 29) и выше применяется схема приоритетов, которая позволяет переключать входной аудиопоток между приложениями во время их работы. В большинстве случаев, если новое приложение получает аудиовход, предыдущее приложение, записывающее звук, продолжает работать, но получает тишину. В некоторых случаях система может продолжать передавать звук в оба приложения. Ниже описаны различные сценарии обмена.
За исключением некоторых особых случаев, звук не передается между приложениями.
Но я видел множество приложений, использующих аудиовход, но не попадающих в указанные выше особые случаи. Например. Масштаб: когда я разговариваю по телефону в режиме масштабирования и запускаю диктофон, оба приложения получают звук, хотя интенсивность звука при масштабировании снижается.
Аналогично, Omlet Arcade может записывать звук с микрофона, даже если доступ к микрофону предоставлен другим приложениям.
Как это возможно? А согласно документации, этого допускать нельзя.
Обновление: Этого удалось добиться с помощью гобоя. Но это не одинаково на всех устройствах. Это также вызывает проблемы с синхронизацией в моем приложении потоковой передачи. Звук слышен с задержкой
Мобильная версия