The mixalot Reference Manual

This is the mixalot Reference Manual, version 0.0.3, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:21:34 2024 GMT+0.

Table of Contents


1 Systems

The main system appears first, followed by any subsystem dependency.


1.1 mixalot

Mixalot mixer for ALSA/libao

Author

Andy Hefner <>

License

MIT-style license

Version

0.0.3

Dependencies
  • cffi (system).
  • bordeaux-threads (system).
  • alexandria (system).
Source

mixalot.asd.

Child Components

2 Files

Files are sorted by type and then listed depth-first from the systems components trees.


2.1 Lisp


2.1.1 mixalot/mixalot.asd

Source

mixalot.asd.

Parent Component

mixalot (system).

ASDF Systems

mixalot.


2.1.2 mixalot/ffi-common.lisp

Source

mixalot.asd.

Parent Component

mixalot (system).

Packages

mixalot-ffi-common.

Public Interface

2.1.3 mixalot/mixalot.lisp

Dependency

ffi-common.lisp (file).

Source

mixalot.asd.

Parent Component

mixalot (system).

Packages

mixalot.

Public Interface
Internals

3 Packages

Packages are listed by definition order.


3.1 mixalot-ffi-common

Source

ffi-common.lisp.

Use List
  • cffi.
  • common-lisp.
Used By List

mixalot.

Public Interface

3.2 mixalot

Source

mixalot.lisp.

Use List
Public Interface
Internals

4 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


4.1 Public Interface


4.1.1 Constants

Constant: seek_cur
Package

mixalot-ffi-common.

Source

ffi-common.lisp.

Constant: seek_end
Package

mixalot-ffi-common.

Source

ffi-common.lisp.

Constant: seek_set
Package

mixalot-ffi-common.

Source

ffi-common.lisp.


4.1.2 Macros

Macro: signal-playback-finish (&optional length)

Convenience macro, which by default assumes, that LENGTH variable contains the length, that should be output in STREAMER-MIX-INTO or STREAMER-WRITE-INTO.

Package

mixalot.

Source

mixalot.lisp.

Macro: stereo-incf (place sample)
Package

mixalot.

Source

mixalot.lisp.

Macro: stereo-mixf (place sample)
Package

mixalot.

Source

mixalot.lisp.

Macro: with-array-pointer ((name array) &body body)
Package

mixalot.

Source

mixalot.lisp.


4.1.3 Ordinary functions

Function: %stereo-left (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: %stereo-right (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: add-stereo-samples (x y)

Add two stereo samples, without clipping.

Package

mixalot.

Source

mixalot.lisp.

Function: clamp-sample (x)
Package

mixalot.

Source

mixalot.lisp.

Function: clamp-sample+ (x y)
Package

mixalot.

Source

mixalot.lisp.

Function: create-mixer (&key rate constructor)

Create a new mixer at the specified sample rate, running in its own thread.

Package

mixalot.

Source

mixalot.lisp.

Function: destroy-mixer (mixer)
Package

mixalot.

Source

mixalot.lisp.

Function: main-thread-init ()
Package

mixalot.

Source

mixalot.lisp.

Function: make-fast-vector-streamer-interleaved-stereo (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-fast-vector-streamer-joint-stereo (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-fast-vector-streamer-mono (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-test-streamer ()
Package

mixalot.

Source

mixalot.lisp.

Function: make-vector-streamer-interleaved-stereo (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-vector-streamer-joint-stereo (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-vector-streamer-mono (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-vector-streamer-mono-double-float (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: make-vector-streamer-mono-single-float (vector &optional start end)
Package

mixalot.

Source

mixalot.lisp.

Function: memset (ptr constant size)
Package

mixalot-ffi-common.

Source

ffi-common.lisp.

Function: mix-stereo-samples (x y)

Mix two stereo samples by clamped addition

Package

mixalot.

Source

mixalot.lisp.

Function: mixer-add-streamer (mixer streamer)
Package

mixalot.

Source

mixalot.lisp.

Reader: mixer-current-time (instance)
Writer: (setf mixer-current-time) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

current-time.

Reader: mixer-rate (instance)
Writer: (setf mixer-rate) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

rate.

Function: mixer-remove-all-streamers (mixer)
Package

mixalot.

Source

mixalot.lisp.

Reader: mixer-shutdown-flag (instance)
Writer: (setf mixer-shutdown-flag) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

shutdown-flag.

Reader: mixer-stream-list (instance)
Writer: (setf mixer-stream-list) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

stream-list.

Reader: mixer-stream-lock (instance)
Writer: (setf mixer-stream-lock) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

stream-lock.

Function: mono->stereo (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: split-sample (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: stereo->mono (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: stereo-left (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: stereo-right (sample)
Package

mixalot.

Source

mixalot.lisp.

Function: stereo-sample (left right)
Package

mixalot.

Source

mixalot.lisp.

Function: valid-pointer (ptr)
Package

mixalot-ffi-common.

Source

ffi-common.lisp.

Function: validate-pointer (ptr)
Package

mixalot-ffi-common.

Source

ffi-common.lisp.


4.1.4 Generic functions

Generic Function: mixer-note-write (mixer buffer offset size)
Package

mixalot.

Source

mixalot.lisp.

Methods
Method: mixer-note-write (mixer buffer offset size)
Generic Function: mixer-remove-streamer (mixer streamer)
Package

mixalot.

Source

mixalot.lisp.

Methods
Method: mixer-remove-streamer ((mixer dummy-mixer) streamer)
Method: mixer-remove-streamer ((mixer mixer) streamer)
Generic Reader: pf-length (condition)
Package

mixalot.

Methods
Reader Method: pf-length ((condition playback-finished))
Source

mixalot.lisp.

Target Slot

length.

Generic Function: streamer-cleanup (stream mixer)

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.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-cleanup (stream mixer)
Generic Function: streamer-length (stream mixer)

Returns length, in samples, of the audio stream, or NIL if it cannot be determined.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-length ((stream vector-streamer) mixer)
Method: streamer-length (stream mixer)
Generic Function: streamer-mix-into (stream mixer buffer offset length time)

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.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-mix-into ((stream vector-streamer-mono-double-float) mixer buffer offset length time)
Method: streamer-mix-into ((stream vector-streamer-mono-single-float) mixer buffer offset length time)
Method: streamer-mix-into ((stream fast-vector-streamer-joint-stereo) mixer buffer offset length time)
Method: streamer-mix-into ((stream fast-vector-streamer-interleaved-stereo) mixer buffer offset length time)
Method: streamer-mix-into ((stream fast-vector-streamer-mono) mixer buffer offset length time)
Method: streamer-mix-into ((stream vector-streamer-joint-stereo) mixer buffer offset length time)
Method: streamer-mix-into ((stream vector-streamer-interleaved-stereo) mixer buffer offset length time)
Method: streamer-mix-into ((stream vector-streamer-mono) mixer buffer offset length time)
Method: streamer-mix-into ((stream function) mixer buffer offset length time)
Generic Function: streamer-pause (stream mixer)

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.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-pause (stream (mixer mixer))
Generic Function: streamer-paused-p (stream mixer)

Query whether a stream is paused or not.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-paused-p (stream (mixer mixer))
Generic Function: streamer-position (stream mixer)

Returns current position within a seekable stream.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-position ((stream vector-streamer) mixer)
Method: streamer-position (stream mixer)
Generic Function: streamer-seek (stream mixer position &key &allow-other-keys)

Seek to position (measured in samples) from the start of stream.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-seek ((stream vector-streamer) mixer position &key &allow-other-keys)
Generic Function: streamer-seekable-p (stream mixer)

Returns non-NIL if the streamer supports seeking.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-seekable-p ((stream vector-streamer) mixer)
Method: streamer-seekable-p (stream mixer)
Generic Function: streamer-unpause (stream 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.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-unpause (stream (mixer mixer))
Generic Function: streamer-write-into (stream mixer buffer offset length time)

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.

Package

mixalot.

Source

mixalot.lisp.

Methods
Method: streamer-write-into ((stream vector-streamer-mono-double-float) mixer buffer offset length time)
Method: streamer-write-into ((stream vector-streamer-mono-single-float) mixer buffer offset length time)
Method: streamer-write-into ((stream fast-vector-streamer-joint-stereo) mixer buffer offset length time)
Method: streamer-write-into ((stream fast-vector-streamer-interleaved-stereo) mixer buffer offset length time)
Method: streamer-write-into ((stream fast-vector-streamer-mono) mixer buffer offset length time)
Method: streamer-write-into ((stream vector-streamer-joint-stereo) mixer buffer offset length time)
Method: streamer-write-into ((stream vector-streamer-interleaved-stereo) mixer buffer offset length time)
Method: streamer-write-into ((stream vector-streamer-mono) mixer buffer offset length time)
Method: streamer-write-into (stream mixer buffer offset length time)

4.1.5 Conditions

Condition: alsa-error

An error from the ALSA library

Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

error.

Direct slots
Slot: text
Initargs

:text

Condition: playback-finished

Condition, which can be signalled by streamer to indicate, that it had finished its playback.

Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

condition.

Direct methods

pf-length.

Direct slots
Slot: length
Package

common-lisp.

Initform

(quote nil)

Initargs

:length

Readers

pf-length.

Writers

This slot is read-only.


4.1.6 Structures

Structure: mixer
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: stream-lock
Initform

(bordeaux-threads:make-lock "mixer lock")

Readers

mixer-stream-lock.

Writers

(setf mixer-stream-lock).

Slot: stream-list
Readers

mixer-stream-list.

Writers

(setf mixer-stream-list).

Slot: current-time
Initform

0

Readers

mixer-current-time.

Writers

(setf mixer-current-time).

Slot: rate
Initform

44100

Readers

mixer-rate.

Writers

(setf mixer-rate).

Slot: shutdown-flag
Readers

mixer-shutdown-flag.

Writers

(setf mixer-shutdown-flag).

Slot: stream-state
Initform

(make-hash-table)

Readers

mixer-stream-state.

Writers

(setf mixer-stream-state).

Slot: device
Readers

mixer-device.

Writers

(setf mixer-device).


4.1.7 Classes

Class: dummy-mixer
Package

mixalot.

Source

mixalot.lisp.

Direct methods
Direct slots
Slot: rate
Initform

44100

Initargs

:rate

Slot: callback
Package

cffi.

Initform

(lambda nil nil)

Initargs

:callback-on-streamer-remove

Readers

dummy-mixer-callback.

Writers

This slot is read-only.

Class: fast-vector-streamer-interleaved-stereo
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: fast-vector-streamer-joint-stereo
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: fast-vector-streamer-mono
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: vector-streamer
Package

mixalot.

Source

mixalot.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: vector
Package

common-lisp.

Initargs

:vector

Readers

vector-of.

Writers

This slot is read-only.

Slot: start
Initargs

:start

Readers

start.

Writers

This slot is read-only.

Slot: end
Initargs

:end

Readers

end.

Writers

This slot is read-only.

Slot: position
Package

common-lisp.

Initargs

:position

Readers

position-of.

Writers

This slot is read-only.

Slot: elts-per-sample
Initargs

:elts-per-sample

Readers

elts-per-sample.

Writers

This slot is read-only.

Slot: seek-to
Readers

seek-to.

Writers

(setf seek-to).

Class: vector-streamer-interleaved-stereo
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: vector-streamer-joint-stereo
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: vector-streamer-mono
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: vector-streamer-mono-double-float
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods
Class: vector-streamer-mono-single-float
Package

mixalot.

Source

mixalot.lisp.

Direct superclasses

vector-streamer.

Direct methods

4.1.8 Types

Type: array-index ()
Package

mixalot.

Source

mixalot.lisp.

Type: mono-sample ()
Package

mixalot.

Source

mixalot.lisp.

Type: sample-vector ()
Package

mixalot.

Source

mixalot.lisp.

Type: stereo-sample ()
Package

mixalot.

Source

mixalot.lisp.


4.2 Internals


4.2.1 Constants

Constant: +mixer-buffer-size+
Package

mixalot.

Source

mixalot.lisp.


4.2.2 Symbol macros

Symbol Macro: stdout
Package

mixalot.

Source

mixalot.lisp.


4.2.3 Macros

Macro: define-vector-streamer (name &key type step sample-expr optimize)
Package

mixalot.

Source

mixalot.lisp.

Macro: meta-vector-streamer (vstreamer modifier type step sample-expr)
Package

mixalot.

Source

mixalot.lisp.

Macro: with-mixer-lock ((mixer) &body body)
Package

mixalot.

Source

mixalot.lisp.


4.2.4 Ordinary functions

Function: %req-remove-streamer (mixer streamer)
Package

mixalot.

Source

mixalot.lisp.

Function: %snd-pcm-open (pcm name type mode)
Package

mixalot.

Source

mixalot.lisp.

Function: %var-accessor-stdout ()
Package

mixalot.

Source

mixalot.lisp.

Function: (setf %var-accessor-stdout) ()
Package

mixalot.

Source

mixalot.lisp.

Function: call-with-pcm (rate continuation)
Package

mixalot.

Source

mixalot.lisp.

Function: check-error (circumstance result)
Package

mixalot.

Source

mixalot.lisp.

Function: copy-mixer (instance)
Package

mixalot.

Source

mixalot.lisp.

Function: dump-pcm-info (pcm)
Package

mixalot.

Source

mixalot.lisp.

Function: make-mixer (&key stream-lock stream-list current-time rate shutdown-flag stream-state device)
Package

mixalot.

Source

mixalot.lisp.

Reader: mixer-device (instance)
Writer: (setf mixer-device) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

device.

Function: mixer-p (object)
Package

mixalot.

Source

mixalot.lisp.

Reader: mixer-stream-state (instance)
Writer: (setf mixer-stream-state) (instance)
Package

mixalot.

Source

mixalot.lisp.

Target Slot

stream-state.

Function: remove-removable (mixer temp-vector)
Package

mixalot.

Source

mixalot.lisp.

Function: run-mixer-process (mixer)
Package

mixalot.

Source

mixalot.lisp.

Function: scale-sample (x y)
Package

mixalot.

Source

mixalot.lisp.

Function: scale-stereo-sample (stereo scale)
Package

mixalot.

Source

mixalot.lisp.

Function: sign-extend-16 (x)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-output-stdio-attach (outputp file close)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-close (pcm)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-dump (pcm out)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-open (name stream-type mode)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-recover (pcm err silent)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-set-params (pcm format access channels rate soft-resample latency)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-pcm-writei (pcm buffer size)
Package

mixalot.

Source

mixalot.lisp.

Function: snd-strerror (errnum)
Package

mixalot.

Source

mixalot.lisp.

Function: update-playable (mixer playable-streams)
Package

mixalot.

Source

mixalot.lisp.

Function: vector-stream-do-seek (stream)
Package

mixalot.

Source

mixalot.lisp.


4.2.5 Generic functions

Generic Reader: dummy-mixer-callback (object)
Package

mixalot.

Methods
Reader Method: dummy-mixer-callback ((dummy-mixer dummy-mixer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

callback.

Generic Reader: elts-per-sample (object)
Package

mixalot.

Methods
Reader Method: elts-per-sample ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

elts-per-sample.

Generic Reader: end (object)
Package

mixalot.

Methods
Reader Method: end ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

end.

Generic Reader: position-of (object)
Package

mixalot.

Methods
Reader Method: position-of ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

position.

Generic Reader: seek-to (object)
Package

mixalot.

Methods
Reader Method: seek-to ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

seek-to.

Generic Writer: (setf seek-to) (object)
Package

mixalot.

Methods
Writer Method: (setf seek-to) ((vector-streamer vector-streamer))

automatically generated writer method

Source

mixalot.lisp.

Target Slot

seek-to.

Generic Reader: start (object)
Package

mixalot.

Methods
Reader Method: start ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

start.

Generic Reader: vector-of (object)
Package

mixalot.

Methods
Reader Method: vector-of ((vector-streamer vector-streamer))

automatically generated reader method

Source

mixalot.lisp.

Target Slot

vector.


4.2.6 Types

Type: mixer-buffer-index ()
Package

mixalot.

Source

mixalot.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   C   D   E   F   G   M   P   R   S   U   V   W  
Index Entry  Section

%
%req-remove-streamer: Private ordinary functions
%snd-pcm-open: Private ordinary functions
%stereo-left: Public ordinary functions
%stereo-right: Public ordinary functions
%var-accessor-stdout: Private ordinary functions

(
(setf %var-accessor-stdout): Private ordinary functions
(setf mixer-current-time): Public ordinary functions
(setf mixer-device): Private ordinary functions
(setf mixer-rate): Public ordinary functions
(setf mixer-shutdown-flag): Public ordinary functions
(setf mixer-stream-list): Public ordinary functions
(setf mixer-stream-lock): Public ordinary functions
(setf mixer-stream-state): Private ordinary functions
(setf seek-to): Private generic functions
(setf seek-to): Private generic functions

A
add-stereo-samples: Public ordinary functions

C
call-with-pcm: Private ordinary functions
check-error: Private ordinary functions
clamp-sample: Public ordinary functions
clamp-sample+: Public ordinary functions
copy-mixer: Private ordinary functions
create-mixer: Public ordinary functions

D
define-vector-streamer: Private macros
destroy-mixer: Public ordinary functions
dummy-mixer-callback: Private generic functions
dummy-mixer-callback: Private generic functions
dump-pcm-info: Private ordinary functions

E
elts-per-sample: Private generic functions
elts-per-sample: Private generic functions
end: Private generic functions
end: Private generic functions

F
Function, %req-remove-streamer: Private ordinary functions
Function, %snd-pcm-open: Private ordinary functions
Function, %stereo-left: Public ordinary functions
Function, %stereo-right: Public ordinary functions
Function, %var-accessor-stdout: Private ordinary functions
Function, (setf %var-accessor-stdout): Private ordinary functions
Function, (setf mixer-current-time): Public ordinary functions
Function, (setf mixer-device): Private ordinary functions
Function, (setf mixer-rate): Public ordinary functions
Function, (setf mixer-shutdown-flag): Public ordinary functions
Function, (setf mixer-stream-list): Public ordinary functions
Function, (setf mixer-stream-lock): Public ordinary functions
Function, (setf mixer-stream-state): Private ordinary functions
Function, add-stereo-samples: Public ordinary functions
Function, call-with-pcm: Private ordinary functions
Function, check-error: Private ordinary functions
Function, clamp-sample: Public ordinary functions
Function, clamp-sample+: Public ordinary functions
Function, copy-mixer: Private ordinary functions
Function, create-mixer: Public ordinary functions
Function, destroy-mixer: Public ordinary functions
Function, dump-pcm-info: Private ordinary functions
Function, main-thread-init: Public ordinary functions
Function, make-fast-vector-streamer-interleaved-stereo: Public ordinary functions
Function, make-fast-vector-streamer-joint-stereo: Public ordinary functions
Function, make-fast-vector-streamer-mono: Public ordinary functions
Function, make-mixer: Private ordinary functions
Function, make-test-streamer: Public ordinary functions
Function, make-vector-streamer-interleaved-stereo: Public ordinary functions
Function, make-vector-streamer-joint-stereo: Public ordinary functions
Function, make-vector-streamer-mono: Public ordinary functions
Function, make-vector-streamer-mono-double-float: Public ordinary functions
Function, make-vector-streamer-mono-single-float: Public ordinary functions
Function, memset: Public ordinary functions
Function, mix-stereo-samples: Public ordinary functions
Function, mixer-add-streamer: Public ordinary functions
Function, mixer-current-time: Public ordinary functions
Function, mixer-device: Private ordinary functions
Function, mixer-p: Private ordinary functions
Function, mixer-rate: Public ordinary functions
Function, mixer-remove-all-streamers: Public ordinary functions
Function, mixer-shutdown-flag: Public ordinary functions
Function, mixer-stream-list: Public ordinary functions
Function, mixer-stream-lock: Public ordinary functions
Function, mixer-stream-state: Private ordinary functions
Function, mono->stereo: Public ordinary functions
Function, remove-removable: Private ordinary functions
Function, run-mixer-process: Private ordinary functions
Function, scale-sample: Private ordinary functions
Function, scale-stereo-sample: Private ordinary functions
Function, sign-extend-16: Private ordinary functions
Function, snd-output-stdio-attach: Private ordinary functions
Function, snd-pcm-close: Private ordinary functions
Function, snd-pcm-dump: Private ordinary functions
Function, snd-pcm-open: Private ordinary functions
Function, snd-pcm-recover: Private ordinary functions
Function, snd-pcm-set-params: Private ordinary functions
Function, snd-pcm-writei: Private ordinary functions
Function, snd-strerror: Private ordinary functions
Function, split-sample: Public ordinary functions
Function, stereo->mono: Public ordinary functions
Function, stereo-left: Public ordinary functions
Function, stereo-right: Public ordinary functions
Function, stereo-sample: Public ordinary functions
Function, update-playable: Private ordinary functions
Function, valid-pointer: Public ordinary functions
Function, validate-pointer: Public ordinary functions
Function, vector-stream-do-seek: Private ordinary functions

G
Generic Function, (setf seek-to): Private generic functions
Generic Function, dummy-mixer-callback: Private generic functions
Generic Function, elts-per-sample: Private generic functions
Generic Function, end: Private generic functions
Generic Function, mixer-note-write: Public generic functions
Generic Function, mixer-remove-streamer: Public generic functions
Generic Function, pf-length: Public generic functions
Generic Function, position-of: Private generic functions
Generic Function, seek-to: Private generic functions
Generic Function, start: Private generic functions
Generic Function, streamer-cleanup: Public generic functions
Generic Function, streamer-length: Public generic functions
Generic Function, streamer-mix-into: Public generic functions
Generic Function, streamer-pause: Public generic functions
Generic Function, streamer-paused-p: Public generic functions
Generic Function, streamer-position: Public generic functions
Generic Function, streamer-seek: Public generic functions
Generic Function, streamer-seekable-p: Public generic functions
Generic Function, streamer-unpause: Public generic functions
Generic Function, streamer-write-into: Public generic functions
Generic Function, vector-of: Private generic functions

M
Macro, define-vector-streamer: Private macros
Macro, meta-vector-streamer: Private macros
Macro, signal-playback-finish: Public macros
Macro, stereo-incf: Public macros
Macro, stereo-mixf: Public macros
Macro, with-array-pointer: Public macros
Macro, with-mixer-lock: Private macros
main-thread-init: Public ordinary functions
make-fast-vector-streamer-interleaved-stereo: Public ordinary functions
make-fast-vector-streamer-joint-stereo: Public ordinary functions
make-fast-vector-streamer-mono: Public ordinary functions
make-mixer: Private ordinary functions
make-test-streamer: Public ordinary functions
make-vector-streamer-interleaved-stereo: Public ordinary functions
make-vector-streamer-joint-stereo: Public ordinary functions
make-vector-streamer-mono: Public ordinary functions
make-vector-streamer-mono-double-float: Public ordinary functions
make-vector-streamer-mono-single-float: Public ordinary functions
memset: Public ordinary functions
meta-vector-streamer: Private macros
Method, (setf seek-to): Private generic functions
Method, dummy-mixer-callback: Private generic functions
Method, elts-per-sample: Private generic functions
Method, end: Private generic functions
Method, mixer-note-write: Public generic functions
Method, mixer-remove-streamer: Public generic functions
Method, mixer-remove-streamer: Public generic functions
Method, pf-length: Public generic functions
Method, position-of: Private generic functions
Method, seek-to: Private generic functions
Method, start: Private generic functions
Method, streamer-cleanup: Public generic functions
Method, streamer-length: Public generic functions
Method, streamer-length: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-mix-into: Public generic functions
Method, streamer-pause: Public generic functions
Method, streamer-paused-p: Public generic functions
Method, streamer-position: Public generic functions
Method, streamer-position: Public generic functions
Method, streamer-seek: Public generic functions
Method, streamer-seekable-p: Public generic functions
Method, streamer-seekable-p: Public generic functions
Method, streamer-unpause: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, streamer-write-into: Public generic functions
Method, vector-of: Private generic functions
mix-stereo-samples: Public ordinary functions
mixer-add-streamer: Public ordinary functions
mixer-current-time: Public ordinary functions
mixer-device: Private ordinary functions
mixer-note-write: Public generic functions
mixer-note-write: Public generic functions
mixer-p: Private ordinary functions
mixer-rate: Public ordinary functions
mixer-remove-all-streamers: Public ordinary functions
mixer-remove-streamer: Public generic functions
mixer-remove-streamer: Public generic functions
mixer-remove-streamer: Public generic functions
mixer-shutdown-flag: Public ordinary functions
mixer-stream-list: Public ordinary functions
mixer-stream-lock: Public ordinary functions
mixer-stream-state: Private ordinary functions
mono->stereo: Public ordinary functions

P
pf-length: Public generic functions
pf-length: Public generic functions
position-of: Private generic functions
position-of: Private generic functions

R
remove-removable: Private ordinary functions
run-mixer-process: Private ordinary functions

S
scale-sample: Private ordinary functions
scale-stereo-sample: Private ordinary functions
seek-to: Private generic functions
seek-to: Private generic functions
sign-extend-16: Private ordinary functions
signal-playback-finish: Public macros
snd-output-stdio-attach: Private ordinary functions
snd-pcm-close: Private ordinary functions
snd-pcm-dump: Private ordinary functions
snd-pcm-open: Private ordinary functions
snd-pcm-recover: Private ordinary functions
snd-pcm-set-params: Private ordinary functions
snd-pcm-writei: Private ordinary functions
snd-strerror: Private ordinary functions
split-sample: Public ordinary functions
start: Private generic functions
start: Private generic functions
stereo->mono: Public ordinary functions
stereo-incf: Public macros
stereo-left: Public ordinary functions
stereo-mixf: Public macros
stereo-right: Public ordinary functions
stereo-sample: Public ordinary functions
streamer-cleanup: Public generic functions
streamer-cleanup: Public generic functions
streamer-length: Public generic functions
streamer-length: Public generic functions
streamer-length: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-mix-into: Public generic functions
streamer-pause: Public generic functions
streamer-pause: Public generic functions
streamer-paused-p: Public generic functions
streamer-paused-p: Public generic functions
streamer-position: Public generic functions
streamer-position: Public generic functions
streamer-position: Public generic functions
streamer-seek: Public generic functions
streamer-seek: Public generic functions
streamer-seekable-p: Public generic functions
streamer-seekable-p: Public generic functions
streamer-seekable-p: Public generic functions
streamer-unpause: Public generic functions
streamer-unpause: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions
streamer-write-into: Public generic functions

U
update-playable: Private ordinary functions

V
valid-pointer: Public ordinary functions
validate-pointer: Public ordinary functions
vector-of: Private generic functions
vector-of: Private generic functions
vector-stream-do-seek: Private ordinary functions

W
with-array-pointer: Public macros
with-mixer-lock: Private macros


A.3 Variables

Jump to:   +  
C   D   E   L   P   R   S   T   V  
Index Entry  Section

+
+mixer-buffer-size+: Private constants

C
callback: Public classes
Constant, +mixer-buffer-size+: Private constants
Constant, seek_cur: Public constants
Constant, seek_end: Public constants
Constant, seek_set: Public constants
current-time: Public structures

D
device: Public structures

E
elts-per-sample: Public classes
end: Public classes

L
length: Public conditions

P
position: Public classes

R
rate: Public structures
rate: Public classes

S
seek-to: Public classes
seek_cur: Public constants
seek_end: Public constants
seek_set: Public constants
shutdown-flag: Public structures
Slot, callback: Public classes
Slot, current-time: Public structures
Slot, device: Public structures
Slot, elts-per-sample: Public classes
Slot, end: Public classes
Slot, length: Public conditions
Slot, position: Public classes
Slot, rate: Public structures
Slot, rate: Public classes
Slot, seek-to: Public classes
Slot, shutdown-flag: Public structures
Slot, start: Public classes
Slot, stream-list: Public structures
Slot, stream-lock: Public structures
Slot, stream-state: Public structures
Slot, text: Public conditions
Slot, vector: Public classes
start: Public classes
stdout: Private symbol macros
stream-list: Public structures
stream-lock: Public structures
stream-state: Public structures
Symbol Macro, stdout: Private symbol macros

T
text: Public conditions

V
vector: Public classes


A.4 Data types

Jump to:   A   C   D   F   M   P   S   T   V  
Index Entry  Section

A
alsa-error: Public conditions
array-index: Public types

C
Class, dummy-mixer: Public classes
Class, fast-vector-streamer-interleaved-stereo: Public classes
Class, fast-vector-streamer-joint-stereo: Public classes
Class, fast-vector-streamer-mono: Public classes
Class, vector-streamer: Public classes
Class, vector-streamer-interleaved-stereo: Public classes
Class, vector-streamer-joint-stereo: Public classes
Class, vector-streamer-mono: Public classes
Class, vector-streamer-mono-double-float: Public classes
Class, vector-streamer-mono-single-float: Public classes
Condition, alsa-error: Public conditions
Condition, playback-finished: Public conditions

D
dummy-mixer: Public classes

F
fast-vector-streamer-interleaved-stereo: Public classes
fast-vector-streamer-joint-stereo: Public classes
fast-vector-streamer-mono: Public classes
ffi-common.lisp: The mixalot/ffi-common․lisp file
File, ffi-common.lisp: The mixalot/ffi-common․lisp file
File, mixalot.asd: The mixalot/mixalot․asd file
File, mixalot.lisp: The mixalot/mixalot․lisp file

M
mixalot: The mixalot system
mixalot: The mixalot package
mixalot-ffi-common: The mixalot-ffi-common package
mixalot.asd: The mixalot/mixalot․asd file
mixalot.lisp: The mixalot/mixalot․lisp file
mixer: Public structures
mixer-buffer-index: Private types
mono-sample: Public types

P
Package, mixalot: The mixalot package
Package, mixalot-ffi-common: The mixalot-ffi-common package
playback-finished: Public conditions

S
sample-vector: Public types
stereo-sample: Public types
Structure, mixer: Public structures
System, mixalot: The mixalot system

T
Type, array-index: Public types
Type, mixer-buffer-index: Private types
Type, mono-sample: Public types
Type, sample-vector: Public types
Type, stereo-sample: Public types

V
vector-streamer: Public classes
vector-streamer-interleaved-stereo: Public classes
vector-streamer-joint-stereo: Public classes
vector-streamer-mono: Public classes
vector-streamer-mono-double-float: Public classes
vector-streamer-mono-single-float: Public classes