PannerNode extension type
The PannerNode interface defines an audio-processing object that
represents the location, direction, and behavior of an audio source signal
in a simulated physical space. This AudioNode uses right-hand Cartesian
coordinates to describe the source's position as a vector and its
orientation as a 3D directional cone.
A PannerNode always has exactly one input and one output: the input can be
mono or stereo but the output is always stereo (2 channels); you can't
have panning effects without at least two audio channels!

| Number of inputs | 1 |
|---|---|
| Number of outputs | 1 |
| Channel count mode | "clamped-max" |
| Channel count | 2 |
| Channel interpretation | "speakers" |
API documentation sourced from MDN Web Docs.
Constructors
- PannerNode(BaseAudioContext context, [PannerOptions options])
-
factory
Properties
- asString → String
-
Available on JSAny, provided by the JSAnyExtension extension
no setter - asString → String?
-
Available on JSAny?, provided by the JSAnyNullableExtension extension
no setter - channelCount ↔ int
-
The
channelCountproperty of the AudioNode interface represents an integer used to determine how many channels are used when up-mixing and down-mixing connections to any inputs to the node.getter/setter pairinherited - channelCountMode ↔ ChannelCountMode
-
The
channelCountModeproperty of the AudioNode interface represents an enumerated value describing the way channels must be matched between the node's inputs and outputs.getter/setter pairinherited - channelInterpretation ↔ ChannelInterpretation
-
The
channelInterpretationproperty of the AudioNode interface represents an enumerated value describing how input channels are mapped to output channels when the number of inputs/outputs is different. For example, this setting defines how a mono input will be up-mixed to a stereo or 5.1 channel output, or how a quad channel input will be down-mixed to a stereo or mono output.getter/setter pairinherited - coneInnerAngle ↔ double
-
The
coneInnerAngleproperty of the PannerNode interface is a double value describing the angle, in degrees, of a cone inside of which there will be no volume reduction.getter/setter pair - coneOuterAngle ↔ double
-
The
coneOuterAngleproperty of the PannerNode interface is a double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the PannerNode.coneOuterGain property.getter/setter pair - coneOuterGain ↔ double
-
The
coneOuterGainproperty of the PannerNode interface is a double value, describing the amount of volume reduction outside the cone, defined by the PannerNode.coneOuterAngle attribute.getter/setter pair - context → BaseAudioContext
-
The read-only
contextproperty of the AudioNode interface returns the associated BaseAudioContext, that is the object representing the processing graph the node is participating in.no setterinherited - distanceModel ↔ DistanceModelType
-
The
distanceModelproperty of the PannerNode interface is an enumerated value determining which algorithm to use to reduce the volume of the audio source as it moves away from the listener.getter/setter pair -
entries
→ Iterable<
MapEntry< String, dynamic> > -
Available on JSObject, provided by the JSObjectExtension extension
no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- isDefinedAndNotNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
no setter - isElement → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isHTMLElement → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isNode → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
Whether this value corresponds to JavaScriptnull.no setter - isTruthy → JSBoolean
-
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result of!!in JavaScript.thisno setter - isUndefined → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
Whether this value corresponds to JavaScriptundefined.no setter - isUndefinedOrNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
no setter -
keys
→ Iterable<
String> -
Available on JSObject, provided by the JSObjectExtension extension
no setter - maxDistance ↔ double
-
The
maxDistanceproperty of the PannerNode interface is a double value representing the maximum distance between the audio source and the listener, after which the volume is not reduced any further. This value is used only by thelineardistance model.getter/setter pair - not → JSBoolean
-
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result of!in JavaScript.thisno setter - numberOfInputs → int
-
The
numberOfInputsproperty of the AudioNode interface returns the number of inputs feeding the node. Source nodes are defined as nodes having anumberOfInputsproperty with a value of 0.no setterinherited - numberOfOutputs → int
-
The
numberOfOutputsproperty of the AudioNode interface returns the number of outputs coming out of the node. Destination nodes — like AudioDestinationNode — have a value of 0 for this attribute.no setterinherited -
onEnded
→ Stream<
Event> -
Available on AudioNode, provided by the AutoElementEventGetters extension
no setter - orientationX → AudioParam
-
The
orientationXproperty of the PannerNode interface indicates the X (horizontal) component of the direction in which the audio source is facing, in a 3D Cartesian coordinate space.no setter - orientationY → AudioParam
-
The
orientationYproperty of the PannerNode interface indicates the Y (vertical) component of the direction the audio source is facing, in 3D Cartesian coordinate space.no setter - orientationZ → AudioParam
-
The
orientationZproperty of the PannerNode interface indicates the Z (depth) component of the direction the audio source is facing, in 3D Cartesian coordinate space.no setter - panningModel ↔ PanningModelType
-
The
panningModelproperty of the PannerNode interface is an enumerated value determining which spatialization algorithm to use to position the audio in 3D space.getter/setter pair - positionX → AudioParam
-
The
positionXproperty of the PannerNode interface specifies the X coordinate of the audio source's position in 3D Cartesian coordinates, corresponding to the horizontal axis (left-right).no setter - positionY → AudioParam
-
The
positionYproperty of the PannerNode interface specifies the Y coordinate of the audio source's position in 3D Cartesian coordinates, corresponding to the vertical axis (top-bottom). The complete vector is defined by the position of the audio source, given as (PannerNode.positionX, PannerNode.positionY, PannerNode.positionZ), and the orientation of the audio source (that is, the direction in which it's facing), given as (PannerNode.orientationX, PannerNode.orientationY, PannerNode.orientationZ).no setter - positionZ → AudioParam
-
The
positionZproperty of the PannerNode interface specifies the Z coordinate of the audio source's position in 3D Cartesian coordinates, corresponding to the depth axis (behind-in front of the listener). The complete vector is defined by the position of the audio source, given as (PannerNode.positionX, PannerNode.positionY, PannerNode.positionZ), and the orientation of the audio source (that is, the direction in which it's facing), given as (PannerNode.orientationX, PannerNode.orientationY, PannerNode.orientationZ).no setter - refDistance ↔ double
-
The
refDistanceproperty of the PannerNode interface is a double value representing the reference distance for reducing volume as the audio source moves further from the listener – i.e. the distance at which the volume reduction starts taking effect. This value is used by all distance models.getter/setter pair - rolloffFactor ↔ double
-
The
rolloffFactorproperty of the PannerNode interface is a double value describing how quickly the volume is reduced as the source moves away from the listener. This value is used by all distance models. TherolloffFactorproperty's default value is1.getter/setter pair - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
add(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this+any -
addEventListener(
String type, EventListener? callback, [JSAny options]) → void -
The
addEventListener()method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.inherited -
and(
JSAny? any) → JSAny? -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this&&any -
as<
T extends JSObject> () → T? -
Available on JSObject, provided by the JSObjectExtension extension
-
callMethod<
R extends JSAny?> (JSAny method, [JSAny? arg1, JSAny? arg2, JSAny? arg3, JSAny? arg4]) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Callsmethodon this JSObject with up to four arguments. -
callMethodVarArgs<
R extends JSAny?> (JSAny method, [List< JSAny?> ? arguments]) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Callsmethodon this JSObject with a variable number ofarguments. -
connect(
JSObject destinationNodeOrDestinationParam, [int output, int input]) → AudioNode? -
The
connect()method of the AudioNode interface lets you connect one of the node's outputs to a target, which may be either anotherAudioNode(thereby directing the sound data to the specified node) or an AudioParam, so that the node's output data is automatically used to change the value of that parameter over time.inherited -
dartify(
) → Object? -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Converts a JavaScript JSON-like value to the Dart equivalent if possible. -
delete(
JSAny property) → JSBoolean -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Deletes the property with keypropertyfrom this JSObject. -
disconnect(
[JSAny destinationNodeOrDestinationParamOrOutput, int output, int input]) → void -
The
disconnect()method of the AudioNode interface lets you disconnect one or more nodes from the node on which the method is called.inherited -
dispatchEvent(
Event event) → bool -
The
dispatchEvent()method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually withdispatchEvent().inherited -
divide(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this/any -
equals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this==any -
exponentiate(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this**any -
get(
String key) → Object? -
Available on JSObject, provided by the JSObjectExtension extension
-
getProperty<
R extends JSAny?> (JSAny property) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
The value of the property keypropertyof this JSObject. -
greaterThan(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>any -
greaterThanOrEqualTo(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>=any -
has(
String property) → bool -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for hasProperty to check whether this JSObject contains the property keyproperty, but takes and returns a Dart value. -
hasProperty(
JSAny property) → JSBoolean -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Whether or not this JSObject contains the property keyproperty. -
instanceof(
JSFunction constructor) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is aninstanceofconstructor. -
instanceOfString(
String constructorName) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is aninstanceofthe constructor that is defined byconstructorName, which is looked up in the globalContext. -
isA<
T extends JSAny?> () → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is an instance of the JavaScript type that is declared byT. -
lessThan(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this<any -
lessThanOrEqualTo(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this<=any -
modulo(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this%any -
multiply(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this*any -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this!=any -
or(
JSAny? any) → JSAny? -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this||any -
put(
Object key, Object? value) → void -
Available on JSObject, provided by the JSObjectExtension extension
-
removeEventListener(
String type, EventListener? callback, [JSAny options]) → void -
The
removeEventListener()method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener from the target. The event listener to be removed is identified using a combination of the event type, the event listener function itself, and various optional options that may affect the matching process; see Matching event listeners for removal.inherited -
setOrientation(
num x, num y, num z) → void -
Note: The suggested replacement for this deprecated method is to instead set the
orientationX,orientationY, andorientationZattributes directly. -
setPosition(
num x, num y, num z) → void -
Note: The suggested replacement for this deprecated method is to instead set the
positionX,positionY, andpositionZattributes directly. -
setProperty(
JSAny property, JSAny? value) → void -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Write thevalueof property keypropertyof this JSObject. -
strictEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this===any -
strictNotEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this!==any -
subtract(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this-any -
toMap(
) → Map< String, dynamic> -
Available on JSObject, provided by the JSObjectExtension extension
-
toString(
) → String -
A string representation of this object.
inherited
-
typeofEquals(
String typeString) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether the result oftypeofon thisJSAny?istypeString. -
unsignedRightShift(
JSAny? any) → JSNumber -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>>>any
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator [](
String property) → JSAny? -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for getProperty to get the value of the property keypropertyof this JSObject, but takes a Dart value. -
operator []=(
String property, JSAny? value) → void -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for setProperty to write thevalueof the property keypropertyof this JSObject, but takes a Dart value.