Как воспроизвести звук в Луа?Есть ли какой-нибудь простой трюк, как это сделать?
Моя цель - воспроизвести некоторые ogg (или mp3) файлы во время игры, которая запрограммирована на lua.Он работает на Windows.
Lua не имеет встроенных звуковых API. Поскольку вы работаете в Windows, у вас есть следующие опции:
Напишите привязки для выбранной звуковой системы (OpenAL или чего-то более высокого уровня - как отдельный, не относящийся к Lua вопрос, если вам нужна помощь в выборе одного).
Используйте LuaJIT2 FFI для прямого доступа к функциям DLL выбранной звуковой системы.
В противном случае, если вы не используете LuaJIT2, используйте библиотеку Alien FFI.
Или, действительно, используйте LuaCOM для воспроизведения звука (с DirectSound?), Если вы знакомы с вещами COM.
Lua не имеет собственных звуковых API.Если у Lua есть плагин / расширение для управления аудио / воспроизведения, вам придется покопаться в этом отдельно.Или, если Lua поддерживает COM, вы можете напрямую обратиться к аудиоустройствам Windows.
Вы можете использовать библиотеку Corona:
--Loads the selected audio (make sure the name is the same as the .wav file) local audio1 = audio.loadSound( "audio1.wav" ) --Plays the audio on any available channel (theres up to 32 channels) local audio1Channel = audio.play( audio1 )
источник: http://docs.coronalabs.com/api/library/audio/play.html
proteaAudio - довольно простая библиотека для lua, позволяющая воспроизводить аудио или даже генерировать звук на лету.
В окнах используйте luacom
require('luacom').CreateObject("wmplayer.ocx").URL="my.mp3"--Need to keep host process alive, not to close.