MixingBackend class abstract base mixin

A backend that mixes the bus tree itself: what AudioBackend grows into for buses, beside it rather than inside it.

Opt-in, as a mixin: a backend writes extends AudioBackend with MixingBackend, and the scene asks backend is MixingBackend. It is not an AudioBackend itself, so it does not grow when the base class does. A backend that mixes this in is told which bus each voice is on and handed each bus's own gain and effects every mix, and is then handed a voice's gain without its buses' and its muffle without theirs — the buses are its to apply, reverb included. One that does not gets what it always got: a flat voice with the bus folded into its gain and a bus's low-pass folded into its muffle.

A base mixin class with bodies that do nothing, so a member added in a minor arrives with a body and a backend written against 1.0 keeps compiling; a backend that opts in overrides what it mixes.

Constructors

MixingBackend()

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

mixBus(BusMix mix) → void
What BusMix.bus does this mix. Nothing by default. The scene reuses one BusMix for every bus: do not keep it.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
routeVoice(VoiceRoute route) → void
Puts VoiceRoute.voice, just started, on VoiceRoute.bus. Nothing by default. The scene reuses one VoiceRoute: do not keep it.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited