[go: up one dir, main page]

Skip to content

autogenerated LuaJIT bindings for SDL2 with threads and audio

Notifications You must be signed in to change notification settings

sonoro1234/LuaJIT-SDL2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LuaJIT-SDL2

autogenerated LuaJIT bindings for SDL2 2.30.3

Set CMake LUAJIT_BIN to the LuaJIT directory for installing.

See test folder examples for usage

luajit-async (taken from https://github.com/sonoro1234/luajit-async) needs to be installed for providing lua functions that can be called from another thread (sdl.MakeAudioCallback and sdl.MakeThreadFunc).

This repo is used in https://github.com/sonoro1234/LuaJIT-ImGui where you get very usefull GUI widgets.

All above can be found at https://github.com/sonoro1234/anima

sdlAudioPlayer

simple interface for playing sndfile files from disk

local sndf = require"LuaJIT-libsndfile"
local AudioPlayer = require"sdlAudioPlayer"

--copy specs from file
local info = sndf.get_info(filename)
local audioplayer,err = AudioPlayer({
    --device = device_name, --nil as device
    freq = info.samplerate, 
    format = sdl.AUDIO_S16SYS,
    channels = info.channels, 
    samples = 1024})

--insert several files
for i=1,10 do
	--filename, level, timeoffset
	audioplayer:insert(filename,(11-i)*0.1,i*0.6)
end
--show them
for node in audioplayer:nodes() do
    print("node",node.sf)
end

--play them 7 secs
audioplayer:start()
sdl.Delay(7000);
--close
audioplayer:close()

About

autogenerated LuaJIT bindings for SDL2 with threads and audio

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages