Как играть в звук в Луа - PullRequest
2 голосов
/ 20 марта 2011

Как воспроизвести звук в Луа?Есть ли какой-нибудь простой трюк, как это сделать?

Моя цель - воспроизвести некоторые ogg (или mp3) файлы во время игры, которая запрограммирована на lua.Он работает на Windows.

Ответы [ 5 ]

5 голосов
/ 21 марта 2011

Lua не имеет встроенных звуковых API. Поскольку вы работаете в Windows, у вас есть следующие опции:

  • Напишите привязки для выбранной звуковой системы (OpenAL или чего-то более высокого уровня - как отдельный, не относящийся к Lua вопрос, если вам нужна помощь в выборе одного).

  • Используйте LuaJIT2 FFI для прямого доступа к функциям DLL выбранной звуковой системы.

  • В противном случае, если вы не используете LuaJIT2, используйте библиотеку Alien FFI.

  • Или, действительно, используйте LuaCOM для воспроизведения звука (с DirectSound?), Если вы знакомы с вещами COM.

2 голосов
/ 20 марта 2011

Lua не имеет собственных звуковых API.Если у Lua есть плагин / расширение для управления аудио / воспроизведения, вам придется покопаться в этом отдельно.Или, если Lua поддерживает COM, вы можете напрямую обратиться к аудиоустройствам Windows.

1 голос
/ 21 января 2015

Вы можете использовать библиотеку 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

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

proteaAudio - довольно простая библиотека для lua, позволяющая воспроизводить аудио или даже генерировать звук на лету.

0 голосов
/ 24 августа 2018

В окнах используйте luacom

require('luacom').CreateObject("wmplayer.ocx").URL="my.mp3"--Need to keep host process alive, not to close.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...