Lua - конвертировать 3gp файл в raw (или wav)? - PullRequest
1 голос
/ 24 декабря 2011

Я использую версию Lua от Ansca Corona, и мне было интересно, как лучше всего получить необработанные несжатые образцы данных в аудиофайле 3GP длиной 5 секунд?

Возможно, конвертировать 3GP в RAW (или WAV)?

1 Ответ

1 голос
/ 28 декабря 2011

Вы не указали, зачем вам нужны необработанные аудиоданные или какие файлы вы собираетесь обрабатывать, поэтому я поговорю в общем.К сожалению, AFAIK нет чистого кода Lua, чтобы делать то, что вы хотите достичь.Вы можете использовать только внешние библиотеки.Реализация всего аудиодекодера AMR, который обычно встроен в контейнер 3GP, на чистом Lua будет сложной задачей.У вас есть примерно следующие опции:

  • Если Corona поддерживает LuaJIT с FFI, вы можете попробовать скомпилировать FFmpeg или его форк Libav и использовать егонепосредственно из исходного кода Lua, как показано в моем примере .
  • Если вы можете загружать внешние библиотеки, попробуйте создать некоторый простой код привязки, который использует приведенные выше библиотеки (или, возможно, некоторые другие) для преобразованияи вернуть данные в Lua-читабельном стиле, например, в таблице.

Если вы не можете использовать внешние библиотеки, я вижу только эту опцию:

  • Использовать веб-услуга, которой пользователь / приложение отправляет 3GP и возвращает необработанные данные.Это будет работать только для небольших звуков / быстрого соединения.
...