mirror of
https://github.com/nucular/sfxrlua.git
synced 2024-12-24 18:44:20 +00:00
A port of the sfxr sound effect synthesizer to Lua
demo | ||
docs | ||
rockspec | ||
.gitignore | ||
.gitmodules | ||
config.ld | ||
LICENSE | ||
README.md | ||
sfxr.lua |
sfxr.lua
luarocks install sfxr
A port of the sfxr sound effect synthesizer to pure Lua, designed to be used together with the awesome LÖVE game framework.
Demo
To run the demo application you first need to download LoveFrames as a submodule:
git submodule update --init
love demo
Note: Due to LoveFrames only supporting LÖVE 0.9.x, this dependency is inherited by the demo. A move to a new GUI framework is pending.
Example usage
The following code examples demonstrate how to play a randomly generated sound:
With LÖVE:
local sfxr = require("sfxr")
function love.load()
local sound = sfxr.newSound()
sound:randomize()
local sounddata = sound:generateSoundData()
local source = love.audio.newSource(sounddata)
source:play()
end
With lao:
require("ao")
local sfxr = require("sfxr")
local driverId = ao.defaultDriverId()
local device = ao.openLive(driverId, {bits = 16, rate = 44100, channels = 1})
local sound = sfxr.newSound()
sound:randomize()
device:play(sound:generateString())
Documentation
The latest documentation build is available here
This project uses LDoc for autogenerated API documentation.