Class: Player

Tone. Player

new Player(url, onload)

Audio Player

Audio file player with start, loop, stop.

Parameters:
Name Type Argument Description
url string <optional>

if a url is passed in, it will be loaded and invoke the callback if it also passed in.

onload function <optional>

callback to be invoked once the url is loaded

Source:

Extends

Members

duration :number

the duration of the buffer once it's been loaded

Type:
  • number
Source:

input :GainNode

default input of the ToneNode

Type:
  • GainNode
Inherited From:
Source:

loop :boolean

if the buffer should loop once it's over

Type:
  • boolean
Source:

loopEnd :number

if 'loop' is true, the loop will end at this position

Type:
  • number
Source:

loopStart :number

if 'loop' is true, the loop will start at this position

Type:
  • number
Source:

output :GainNode

unlike most ToneNodes, Sources only have an output and no input

Type:
  • GainNode
Inherited From:
Source:

retrigger :boolean

enabling retrigger will allow a player to be restarted before the the previous 'start' is done playing

Type:
  • boolean
Source:

state :Tone.Source.State

Type:
Inherited From:
Source:

Methods

chain()

connect together all of the arguments in series

Parameters:
Type Argument Description
AudioParam | Tone <repeatable>
Inherited From:
Source:

connect(unit)

connect the output of a ToneNode to an AudioParam, AudioNode, or ToneNode

Parameters:
Name Type Description
unit Tone | AudioParam | AudioNode
Inherited From:
Source:

dbToGain(db) → {number}

convert db scale to gain scale (0-1)

Parameters:
Name Type Description
db number
Inherited From:
Source:
Returns:
Type
number

defaultArg(given, fallback) → {*}

if a the given is undefined, use the fallback

Parameters:
Name Type Description
given *
fallback *
Inherited From:
Source:
Returns:
Type
*

disconnect()

disconnect the output

Inherited From:
Source:

dispose()

dispose and disconnect

Source:

equalPowerScale(percent) → {number}

equal power gain scale good for cross-fading

Parameters:
Name Type Description
percent number

(0-1)

Inherited From:
Source:
Returns:

output gain (0-1)

Type
number

expScale(gain) → {number}

Parameters:
Name Type Description
gain number

(0-1)

Inherited From:
Source:
Returns:

gain (decibel scale but betwee 0-1)

Type
number

frequencyToSeconds(freq) → {number}

convert a frequency into seconds accepts both numbers and strings i.e. 10hz or 10 both equal .1

Parameters:
Name Type Description
freq number | string
Inherited From:
Source:
Returns:
Type
number

gainToDb(gain) → {number}

convert gain scale to decibels

Parameters:
Name Type Description
gain number

(0-1)

Inherited From:
Source:
Returns:
Type
number

interpolate(input, outputMin, outputMax) → {number}

interpolate the input value (0-1) to be between outputMin and outputMax

Parameters:
Name Type Description
input number
outputMin number
outputMax number
Inherited From:
Source:
Returns:
Type
number

load(url, callback)

makes an xhr reqest for the selected url Load the audio file as an audio buffer. Decodes the audio asynchronously and invokes the callback once the audio buffer loads.

Parameters:
Name Type Argument Description
url string

the url of the buffer to load. filetype support depends on the browser.

callback function <optional>
Source:

logScale(gain) → {number}

Parameters:
Name Type Description
gain number

(0-1)

Inherited From:
Source:
Returns:

gain (decibel scale but betwee 0-1)

Type
number

noGC()

makes a connection to ensure that the node will not be garbage collected until 'dispose' is explicitly called

use carefully. circumvents JS and WebAudio's normal Garbage Collection behavior

Inherited From:
Source:

normalize(input, inputMin, inputMax) → {number}

normalize the input to 0-1 from between inputMin to inputMax

Parameters:
Name Type Description
input number
inputMin number
inputMax number
Inherited From:
Source:
Returns:
Type
number

notationToSeconds(notation, bpm, timeSignature) → {number}

convert notation format strings to seconds

Parameters:
Name Type Argument Description
notation string
bpm number <optional>
timeSignature number <optional>
Inherited From:
Source:
Returns:
Type
number

now() → {number}

Inherited From:
Source:
Returns:

the currentTime from the AudioContext

Type
number

onended()

set a callback function to invoke when the sample is over

Source:

<virtual> pause(time)

Parameters:
Name Type Description
time Tone.Time
Inherited From:
Source:

receive(channelName)

recieve the input from the desired channelName to the input gain of 'this' node.

Parameters:
Name Type Description
channelName string
Inherited From:
Source:

samplesToSeconds(samples) → {number}

convert a sample count to seconds

Parameters:
Name Type Description
samples number
Inherited From:
Source:
Returns:
Type
number

secondsToFrequency(seconds) → {number}

convert a number in seconds to a frequency

Parameters:
Name Type Description
seconds number
Inherited From:
Source:
Returns:
Type
number

send(channelName, amount) → {GainNode}

send signal to a channel name

Parameters:
Name Type Description
channelName string
amount number
Inherited From:
Source:
Returns:
Type
GainNode

setBuffer(buffer)

set the buffer

Parameters:
Name Type Description
buffer AudioBuffer

the buffer which the player will play. note: if you switch the buffer after the player is already started, it will not take effect until the next time the player is started.

Source:

setPlaybackRate(rate, rampTime)

set the rate at which the file plays

Parameters:
Name Type Argument Description
rate number
rampTime Tone.Time <optional>

(optional) the amount of time it takes to reach the rate

Source:

setVolume(value, fadeTime)

Parameters:
Name Type Argument Description
value number
fadeTime Tone.Time <optional>

(optional) time it takes to reach the value

Inherited From:
Source:

start(startTime, offset, duration)

play the buffer between the desired positions

Parameters:
Name Type Argument Description
startTime Tone.Time <optional>
offset Tone.Time <optional>
duration Tone.Time <optional>
Source:

stop(time)

Stop playback.

Parameters:
Name Type Description
time Tone.Time
Source:

sync(delay)

sync the source to the Transport

Parameters:
Name Type Argument Description
delay Tone.Time <optional>

optional delay time before starting the source

Inherited From:
Source:

toFrequency(time) → {number}

convert a time to a frequency

Parameters:
Name Type Description
time Tone.Time
Inherited From:
Source:
Returns:

the time in hertz

Type
number

toMaster()

connect 'this' to the master output

Inherited From:
Source:

toSamples(time) → {number}

convert a time into samples

Parameters:
Name Type Description
time Tone.time
Inherited From:
Source:
Returns:
Type
number

toSeconds(time, now) → {number}

convert Tone.Time to seconds

this is a simplified version which only handles numbers and 'now' relative numbers. If the Transport is included this method is overridden to include many other features including notationTime, Frequency, and transportTime

Parameters:
Name Type Argument Description
time Tone.Time
now number <optional>

if passed in, this number will be used for all 'now' relative timings

Inherited From:
Source:
Returns:

seconds in the same timescale as the AudioContext

Type
number

toSeconds(time, now) → {number}

convert Tone.Time into seconds.

unlike the method which it overrides, this takes into account transporttime and musical notation

Parameters:
Name Type Argument Description
time Tone.Time
now number <optional>

if passed in, this number will be used for all 'now' relative timings

Inherited From:
Source:
Returns:
Type
number

unsync()

unsync the source to the Transport

Inherited From:
Source:
Tone No Tone Copyright © 2014.
Documentation generated on Wed Jun 25 2014 13:10:42 GMT-0400 (EDT).