Вы не указали, зачем вам нужны необработанные аудиоданные или какие файлы вы собираетесь обрабатывать, поэтому я поговорю в общем.К сожалению, AFAIK нет чистого кода Lua, чтобы делать то, что вы хотите достичь.Вы можете использовать только внешние библиотеки.Реализация всего аудиодекодера AMR, который обычно встроен в контейнер 3GP, на чистом Lua будет сложной задачей.У вас есть примерно следующие опции:
- Если Corona поддерживает LuaJIT с FFI, вы можете попробовать скомпилировать FFmpeg или его форк Libav и использовать егонепосредственно из исходного кода Lua, как показано в моем примере .
- Если вы можете загружать внешние библиотеки, попробуйте создать некоторый простой код привязки, который использует приведенные выше библиотеки (или, возможно, некоторые другие) для преобразованияи вернуть данные в Lua-читабельном стиле, например, в таблице.
Если вы не можете использовать внешние библиотеки, я вижу только эту опцию:
- Использовать веб-услуга, которой пользователь / приложение отправляет 3GP и возвращает необработанные данные.Это будет работать только для небольших звуков / быстрого соединения.