Я хочу получить данные с пользовательского устройства USB и воспроизвести их на устройстве Android. Я попытался с кодом Android Java по умолчанию и обнаружил низкую производительность и полный шум попкорна.
Я узнал о Гобой и начал его реализовывать. Пример LiveEffect показался мне правильным. Я непосредственно собрал приложение и поиграл, не слышал ни звука. Затем я изменил параметры воспроизведения и смог слышать звук, но с большим количеством попкорна и реальным звуком.
Позже я попробовал приложение OboeTester с выбором Echo Input to Output
не мог слышать звук. Затем я попытался Record and Play
и смог слушать чистый звук без попкорна.
Я предполагаю, что, поскольку мой источник имеет моноканал, а приемник имеет двухканальный, я не смог услышать Звук с сэмплом LiveEffect.
Я установил правильные параметры с помощью приложения OboeTester, но все еще не могу получить правильный звук, похожий на LiveEffect.
Почему я могу получить правильный звук с запись и воспроизведение, а не прямая выборка и воспроизведение?
// Input parameters (USB device)
API: Aaudio
Device: USB
SRate: 8000
Channels: 1
Format: PCM_I16
Perf: LOW_LATENCY
InPreset: VoiceRec
// Output parameters
API: Aaudio
Device: Auto Select
SRate: 8000
Channels: 1
Format: PCM_I16
Perf: LOW_LATENCY
Примечание:
- Пробовал на разных телефонах, похожие результаты
- На моем устройстве Android API 27 +