This is the mixalot Reference Manual, version 0.0.3, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 06:08:46 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
mixalot
Mixalot mixer for ALSA/libao
Andy Hefner <ahefner@gmail.com>
MIT-style license
0.0.3
cffi
(system).
bordeaux-threads
(system).
alexandria
(system).
ffi-common.lisp
(file).
mixalot.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
mixalot/ffi-common.lisp
mixalot
(system).
memset
(function).
seek_cur
(constant).
seek_end
(constant).
seek_set
(constant).
valid-pointer
(function).
validate-pointer
(function).
mixalot/mixalot.lisp
ffi-common.lisp
(file).
mixalot
(system).
%stereo-left
(function).
%stereo-right
(function).
add-stereo-samples
(function).
alsa-error
(condition).
array-index
(type).
clamp-sample
(function).
clamp-sample+
(function).
create-mixer
(function).
destroy-mixer
(function).
dummy-mixer
(class).
fast-vector-streamer-interleaved-stereo
(class).
fast-vector-streamer-joint-stereo
(class).
fast-vector-streamer-mono
(class).
main-thread-init
(function).
make-fast-vector-streamer-interleaved-stereo
(function).
make-fast-vector-streamer-joint-stereo
(function).
make-fast-vector-streamer-mono
(function).
make-test-streamer
(function).
make-vector-streamer-interleaved-stereo
(function).
make-vector-streamer-joint-stereo
(function).
make-vector-streamer-mono
(function).
make-vector-streamer-mono-double-float
(function).
make-vector-streamer-mono-single-float
(function).
mix-stereo-samples
(function).
mixer
(structure).
mixer-add-streamer
(function).
mixer-current-time
(reader).
(setf mixer-current-time)
(writer).
mixer-note-write
(generic function).
mixer-rate
(reader).
(setf mixer-rate)
(writer).
mixer-remove-all-streamers
(function).
mixer-remove-streamer
(generic function).
mixer-shutdown-flag
(reader).
(setf mixer-shutdown-flag)
(writer).
mixer-stream-list
(reader).
(setf mixer-stream-list)
(writer).
mixer-stream-lock
(reader).
(setf mixer-stream-lock)
(writer).
mono->stereo
(function).
mono-sample
(type).
pf-length
(reader method).
playback-finished
(condition).
sample-vector
(type).
signal-playback-finish
(macro).
split-sample
(function).
stereo->mono
(function).
stereo-incf
(macro).
stereo-left
(function).
stereo-mixf
(macro).
stereo-right
(function).
stereo-sample
(function).
stereo-sample
(type).
streamer-cleanup
(generic function).
streamer-length
(generic function).
streamer-mix-into
(generic function).
streamer-pause
(generic function).
streamer-paused-p
(generic function).
streamer-position
(generic function).
streamer-seek
(generic function).
streamer-seekable-p
(generic function).
streamer-unpause
(generic function).
streamer-write-into
(generic function).
vector-streamer
(class).
vector-streamer-interleaved-stereo
(class).
vector-streamer-joint-stereo
(class).
vector-streamer-mono
(class).
vector-streamer-mono-double-float
(class).
vector-streamer-mono-single-float
(class).
with-array-pointer
(macro).
%req-remove-streamer
(function).
%snd-pcm-open
(function).
%var-accessor-stdout
(function).
(setf %var-accessor-stdout)
(function).
+mixer-buffer-size+
(constant).
call-with-pcm
(function).
check-error
(function).
copy-mixer
(function).
define-vector-streamer
(macro).
dummy-mixer-callback
(reader method).
dump-pcm-info
(function).
elts-per-sample
(reader method).
end
(reader method).
make-mixer
(function).
meta-vector-streamer
(macro).
mixer-buffer-index
(type).
mixer-device
(reader).
(setf mixer-device)
(writer).
mixer-p
(function).
mixer-stream-state
(reader).
(setf mixer-stream-state)
(writer).
position-of
(reader method).
remove-removable
(function).
run-mixer-process
(function).
scale-sample
(function).
scale-stereo-sample
(function).
seek-to
(reader method).
(setf seek-to)
(writer method).
sign-extend-16
(function).
snd-output-stdio-attach
(function).
snd-pcm-close
(function).
snd-pcm-dump
(function).
snd-pcm-open
(function).
snd-pcm-recover
(function).
snd-pcm-set-params
(function).
snd-pcm-writei
(function).
snd-strerror
(function).
start
(reader method).
stdout
(symbol macro).
update-playable
(function).
vector-of
(reader method).
vector-stream-do-seek
(function).
with-mixer-lock
(macro).
Packages are listed by definition order.
mixalot-ffi-common
cffi
.
common-lisp
.
memset
(function).
seek_cur
(constant).
seek_end
(constant).
seek_set
(constant).
valid-pointer
(function).
validate-pointer
(function).
mixalot
bordeaux-threads
.
cffi
.
common-lisp
.
mixalot-ffi-common
.
%stereo-left
(function).
%stereo-right
(function).
add-stereo-samples
(function).
alsa-error
(condition).
array-index
(type).
clamp-sample
(function).
clamp-sample+
(function).
create-mixer
(function).
destroy-mixer
(function).
dummy-mixer
(class).
fast-vector-streamer-interleaved-stereo
(class).
fast-vector-streamer-joint-stereo
(class).
fast-vector-streamer-mono
(class).
main-thread-init
(function).
make-fast-vector-streamer-interleaved-stereo
(function).
make-fast-vector-streamer-joint-stereo
(function).
make-fast-vector-streamer-mono
(function).
make-test-streamer
(function).
make-vector-streamer-interleaved-stereo
(function).
make-vector-streamer-joint-stereo
(function).
make-vector-streamer-mono
(function).
make-vector-streamer-mono-double-float
(function).
make-vector-streamer-mono-single-float
(function).
mix-stereo-samples
(function).
mixer
(structure).
mixer-add-streamer
(function).
mixer-current-time
(reader).
(setf mixer-current-time)
(writer).
mixer-note-write
(generic function).
mixer-rate
(reader).
(setf mixer-rate)
(writer).
mixer-remove-all-streamers
(function).
mixer-remove-streamer
(generic function).
mixer-shutdown-flag
(reader).
(setf mixer-shutdown-flag)
(writer).
mixer-stream-list
(reader).
(setf mixer-stream-list)
(writer).
mixer-stream-lock
(reader).
(setf mixer-stream-lock)
(writer).
mono->stereo
(function).
mono-sample
(type).
pf-length
(generic reader).
playback-finished
(condition).
sample-vector
(type).
signal-playback-finish
(macro).
split-sample
(function).
stereo->mono
(function).
stereo-incf
(macro).
stereo-left
(function).
stereo-mixf
(macro).
stereo-right
(function).
stereo-sample
(function).
stereo-sample
(type).
streamer-cleanup
(generic function).
streamer-length
(generic function).
streamer-mix-into
(generic function).
streamer-pause
(generic function).
streamer-paused-p
(generic function).
streamer-position
(generic function).
streamer-seek
(generic function).
streamer-seekable-p
(generic function).
streamer-unpause
(generic function).
streamer-write-into
(generic function).
vector-streamer
(class).
vector-streamer-interleaved-stereo
(class).
vector-streamer-joint-stereo
(class).
vector-streamer-mono
(class).
vector-streamer-mono-double-float
(class).
vector-streamer-mono-single-float
(class).
with-array-pointer
(macro).
%req-remove-streamer
(function).
%snd-pcm-open
(function).
%var-accessor-stdout
(function).
(setf %var-accessor-stdout)
(function).
+mixer-buffer-size+
(constant).
call-with-pcm
(function).
check-error
(function).
copy-mixer
(function).
define-vector-streamer
(macro).
dummy-mixer-callback
(generic reader).
dump-pcm-info
(function).
elts-per-sample
(generic reader).
end
(generic reader).
make-mixer
(function).
meta-vector-streamer
(macro).
mixer-buffer-index
(type).
mixer-device
(reader).
(setf mixer-device)
(writer).
mixer-p
(function).
mixer-stream-state
(reader).
(setf mixer-stream-state)
(writer).
position-of
(generic reader).
remove-removable
(function).
run-mixer-process
(function).
scale-sample
(function).
scale-stereo-sample
(function).
seek-to
(generic reader).
(setf seek-to)
(generic writer).
sign-extend-16
(function).
snd-output-stdio-attach
(function).
snd-pcm-close
(function).
snd-pcm-dump
(function).
snd-pcm-open
(function).
snd-pcm-recover
(function).
snd-pcm-set-params
(function).
snd-pcm-writei
(function).
snd-strerror
(function).
start
(generic reader).
stdout
(symbol macro).
update-playable
(function).
vector-of
(generic reader).
vector-stream-do-seek
(function).
with-mixer-lock
(macro).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Convenience macro, which by default assumes, that LENGTH variable contains the length, that should be output in STREAMER-MIX-INTO or STREAMER-WRITE-INTO.
Add two stereo samples, without clipping.
Create a new mixer at the specified sample rate, running in its own thread.
Mix two stereo samples by clamped addition
rate
.
dummy-mixer
) streamer) ¶playback-finished
)) ¶Release resources and perform any other cleanups needed when a streamer is destroyed as a result of a call to mixer-remove-streamer. Called outside the mixer lock, so it’s okay to manipulate the mixer.
Returns length, in samples, of the audio stream, or NIL if it cannot be determined.
vector-streamer
) mixer) ¶Mix ’length’ samples of stream output into buffer starting at ’offset’ measured in samples, at ’time’ (measured in samples since the mixer was created. The time measurement includes the offset, and is intended for synchronizing streams. Called from outside the mixer lock.
vector-streamer-mono-double-float
) mixer buffer offset length time) ¶vector-streamer-mono-single-float
) mixer buffer offset length time) ¶fast-vector-streamer-joint-stereo
) mixer buffer offset length time) ¶fast-vector-streamer-interleaved-stereo
) mixer buffer offset length time) ¶fast-vector-streamer-mono
) mixer buffer offset length time) ¶vector-streamer-joint-stereo
) mixer buffer offset length time) ¶vector-streamer-interleaved-stereo
) mixer buffer offset length time) ¶vector-streamer-mono
) mixer buffer offset length time) ¶function
) mixer buffer offset length time) ¶Pause playback of the streamer. A method on
streamer-pause is optional and serves as a notification to the
streamer that it has been paused; the default method is specialized
on the mixer and can suspend playback without any special support
from the streamer.
Query whether a stream is paused or not.
Returns current position within a seekable stream.
vector-streamer
) mixer) ¶Seek to position (measured in samples) from the start of stream.
vector-streamer
) mixer position &key &allow-other-keys) ¶Returns non-NIL if the streamer supports seeking.
vector-streamer
) mixer) ¶Unpause playback of the streamer. A method on
streamer-unpause is optional and serves as a notification to the
streamer that it has been unpaused; the default method is
specialized on the mixer and can resume playback without any special
support from the streamer.
Write ’length’ samples of stream output into buffer starting at ’offset’ (measured in samples), at ’time’ (measured in samples since the mixer was created. The time measurement includes the offset, and is intended for synchronizing streams. The differs from stream-write-info in that you don’t have to mix the data, the current contents are expected to be garbage and can be overwritten. Implementing this is optional. Called from outside the mixer lock.
vector-streamer-mono-double-float
) mixer buffer offset length time) ¶vector-streamer-mono-single-float
) mixer buffer offset length time) ¶fast-vector-streamer-joint-stereo
) mixer buffer offset length time) ¶fast-vector-streamer-interleaved-stereo
) mixer buffer offset length time) ¶fast-vector-streamer-mono
) mixer buffer offset length time) ¶vector-streamer-joint-stereo
) mixer buffer offset length time) ¶vector-streamer-interleaved-stereo
) mixer buffer offset length time) ¶vector-streamer-mono
) mixer buffer offset length time) ¶An error from the ALSA library
error
.
:text
Condition, which can be signalled by streamer to indicate, that it had finished its playback.
condition
.
structure-object
.
(bordeaux-threads:make-lock "mixer lock")
0
44100
(make-hash-table)
common-lisp
.
:vector
This slot is read-only.
common-lisp
.
:position
This slot is read-only.
:elts-per-sample
This slot is read-only.
dummy-mixer
)) ¶automatically generated reader method
vector-streamer
)) ¶automatically generated reader method
vector-streamer
)) ¶automatically generated reader method
end
.
vector-streamer
)) ¶automatically generated reader method
vector-streamer
)) ¶automatically generated reader method
vector-streamer
)) ¶automatically generated writer method
vector-streamer
)) ¶automatically generated reader method
vector-streamer
)) ¶automatically generated reader method
Jump to: | %
(
A C D E F G M P R S U V W |
---|
Jump to: | %
(
A C D E F G M P R S U V W |
---|
Jump to: | +
C D E L P R S T V |
---|
Jump to: | +
C D E L P R S T V |
---|
Jump to: | A C D F M P S T V |
---|
Jump to: | A C D F M P S T V |
---|