Как воспроизводить левый и правый канал отдельно с помощью AudioTrack?

Во-первых, мне нужно на лету сгенерировать 2 тона синусоидальной волны, которые имеют одинаковую частоту, но противоположные фазы, и воспроизвести их отдельно в правый и левый канал в стереорежиме на Android. Воспроизведение должно быть идеально синхронизированным, чтобы синусы левого и правого каналов были «зеркальными» (когда левый канал имеет, скажем, значение выборки 120, правый канал должен иметь -120).

Дело в том, что я не нашел никаких доказательств того, как подобная установка могла бы работать. Есть ли возможность подать 2 отдельных тона / буфера сэмплов на AudioTrack для воспроизведения в левом и правом канале по отдельности и одновременно? В противном случае приветствуются любые другие решения для достижения конечного результата.

Я предполагаю, что одним из вариантов было бы использовать предварительно сгенерированные файлы стереофонических волн и передавать их с помощью AudioTrack , но это кажется слишком негибким для решения в разработке. В то же время, если AudioTrack может воспроизводить эти предварительно записанные аудиофайлы в «реальном» стерео режиме, я бы ожидал, что то же самое будет возможно и с сгенерированными звуками.

7
задан Ry- 9 January 2012 в 01:31
поделиться