Может ли кто-нибудь сказать мне, можно ли использовать alsa lib непосредственно в C-коде на языке Android?
Поскольку я должен получать необработанные данные из собственного C-кодового сокета fd, я думаю, что лучше воспроизвести его и на родном C. Я много искал и обнаружил, что могу воспроизводить данные pcm напрямую, используя устройство msm_pcm_out, но не смог найти это устройство на своей платформе. Поэтому мой последний выбор - использование alsa lib. Мои вопросы:
Могу ли я добавить устройство msm_pcm_out самостоятельно? И использовать его так же, как образец playwav.c?
Если добавить msm_pcm_out устройство невозможно, могу ли я использовать alsa lib в native C?
Если все, о чем я говорил выше, невозможно, любое предложение?
Спасибо.
Результат поиска:
MSM_PCM_ * - это указанные устройства в чипе Qualcomm MSM7K, поэтому на другой платформе этого не будет!
Похоже, что использование ALSA lib непосредственно в native C невозможно, потому что ресурс ALSA будет задействован системой.
Обновление: использование ALSA API для воспроизведения не будет работать, но запись работает! (Странный...)
Моим последним выбором может быть использование OpenSL ES...
Любое предложение будет оценено по достоинству.