Я создал приложение для Android, которое записывает экран устройства (используя MediaProjection) API и видео с камеры одновременно. Я использую MediaRecorder в обоих случаях. Мне нужен способ узнать, действительно ли устройство может записывать два видеопотока одновременно. Я предполагаю, что существует некоторое ограничение на количество потоков, которые могут быть закодированы одновременно на данных устройствах, но я не могу найти API на платформе Android для запроса этой информации.Максимальное количество одновременных экземпляров MediaRecorder на Android?
вещей я обнаружил до сих пор:
Документация для MediaRecorder.release() советует выпустить MediaRecorder как можно скорее, как: "Даже если несколько экземпляров одного и тот же кодек поддерживается, некоторое ухудшение производительности можно ожидать, когда нет необходимости многократной экземпляры используются одновременно ». Это говорит о том, что существует ограничение на количество экземпляров кодированного кода, которое напрямую ограничивает число медиарекордеров.
Я написал тестовый код, который создает MediaRecorders (настроенный на использование MPEG4/H264) и запускает их в цикле. На Nexus 5 он всегда терпит неудачу с java.io.IOException: prepare failed
при вызове prepare() на 6-м экземпляре. Это говорит о том, что у вас может быть только 5 экземпляров MediaRecorder на Nexus5.