Use Source:setFilter(type, params...) to set a filter.
Use Source:setFilter() to detach the current filter.
Use Source:getFilter() to get the currently set filter (or nil).
Squashed from pull request 27, and the clean-pr27 branch in love-experiments.
--HG--
branch : minor
RecordingDevice class added
(number)love.audio.getRecordingDeviceCount() and (table)love.audio.getRecordingDevices() exposed
(bool):startRecording([samples, sampleRate, bitDepth, channels], (SoundData):stopRecording([SoundData]),
(SoundData):getData([SoundData]), (number):getSampleCount(), (number):getSampleRate(), (number):getBitDepth(),
(number):getChannels(), (string):getName(), (number):getID(), (bool):isRecording() member functions exposed
previously existed stub implementation removed
getFormat moved to love::audio::openal::Audio
getFormat arguments order swapped to (bitDepth, channels)
getFormat now returns AL_NONE if format is invalid
--HG--
branch : minor-mic-input
warnings fixed
added type checking to Lua functions
stopping queueable source clears buffered data
getting queueable source to auto-play if it underruns and then gets re-filled
will probably require re-designing pool usage strategy
--HG--
branch : minor
success state return added to queueData functions
queueable source is now seekable while stopped
fixed bug with creating queueable source with invalid format silently crashing LOVE
fixed bug with stopped queueable source reported as not queueable
--HG--
branch : minor
Previously, sources that had never been started, were paused with 'stop', or had finished playing, aka the 0.10.x definition of stopped, would ignore seek.
--HG--
branch : minor
Instead of having three states, stopped, paused and playing, now there's only
two states: paused and playing.
This means resume() is gone, as is isStopped(), and isPaused() has become
isPlaying(). stop() now pauses and rewinds, whereas pause() only pauses.
rewind() has been removed, and should either be replaced with stop() or
seek(0).
The same has been applied to the functions in the love.audio module, except they
get some extra magic:
- love.audio.pause() now returns a table/list of Source objects, which contains
only the sources it has just paused. This means you can then later restart
only them, instead of everything (as before).
- love.audio.play/pause/stop now have variants that take a list of Source
objects, and it starts or stops them all at the same time, this means calling
play(srcA, srcB) should mean srcA and srcB are much more (but possibly not
exactly) synchronised than they were with play(srcA); play(srcB).
--HG--
branch : minor
When combined with Source:setDirection (and Source:setPosition or love.audio.setPosition), the cone parameters allow for directional sound output from a Source.