Name Description Size
AlignedTArray.h E: element type, must be a POD type. N: N bytes alignment for the first element, defaults to 32 S: S bytes of inline storage 3987
AlignmentUtils.h 886
AnalyserNode.cpp static 12348
AnalyserNode.h 2929
AudioBlock.cpp Heap-allocated buffer of channels of 128-sample float arrays, with threadsafe refcounting. Typically you would allocate one of these, fill it in, and then treat it as immutable while it's shared. Downstream references are accounted specially so that the creator of the buffer can reuse and modify its contents next iteration if other references are all downstream temporary references held by AudioBlock. We guarantee 16 byte alignment of the channel data. 5708
AudioBlock.h An AudioChunk whose buffer contents need to be valid only for one processing block iteration, after which contents can be overwritten if the buffer has not been passed to longer term storage or to another thread, which may happen though AsAudioChunk() or AsMutableChunk(). Use on graph thread only. 4602
AudioBuffer.cpp AudioBuffers can be shared between AudioContexts, so we need a separate mechanism to track their memory usage. This thread-safe class keeps track of all the AudioBuffers, and gets called back by the memory reporting system when a memory report is needed, reporting how much memory is used by the buffers backing AudioBuffer objects. 17814
AudioBuffer.h An AudioBuffer keeps its data either in the mJSChannels objects, which are Float32Arrays, or in mSharedChannels if the mJSChannels objects' buffers are detached. 4920
AudioBufferSourceNode.cpp Media-thread playback engine for AudioBufferSourceNode. Nothing is played until a non-null buffer has been set (via AudioNodeTrack::SetBuffer) and a non-zero mBufferSampleRate has been set (via AudioNodeTrack::SetInt32Parameter) 31429
AudioBufferSourceNode.h 4076
AudioContext.cpp 46467
AudioContext.h This runnable allows the MTG to notify the main thread when audio is actually flowing 18312
AudioDestinationNode.cpp 21726
AudioDestinationNode.h 4396
AudioEventTimeline.cpp 19444
AudioEventTimeline.h Converts an AudioTimelineEvent's floating point time members to tick values with respect to a destination AudioNodeTrack. This needs to be called for each AudioTimelineEvent that gets sent to an AudioNodeEngine, on the engine side where the AudioTimlineEvent is received. This means that such engines need to be aware of their destination tracks as well. 12671
AudioListener.cpp 3834
AudioListener.h 2417
AudioNode.cpp 20287
AudioNode.h The DOM object representing a Web Audio AudioNode. Each AudioNode has a MediaTrack representing the actual real-time processing and output of this AudioNode. We track the incoming and outgoing connections to other AudioNodes. Outgoing connections have strong ownership. Also, AudioNodes that will produce sound on their output even when they have silent or no input ask the AudioContext to keep playing or tail-time references to keep them alive until the context is finished. Explicit disconnections will only remove references from output nodes after the graph is notified and the main thread receives a reply. Similarly, nodes with playing or tail-time references release these references only after receiving notification from their engine on the graph thread that playing has stopped. Engines notifying the main thread that they have finished do so strictly *after* producing and returning their last block. In this way, an engine that receives non-null input knows that the input comes from nodes that are still alive and will keep their output nodes alive for at least as long as it takes to process messages from the graph thread. i.e. the engine receiving non-null input knows that its node is still alive, and will still be alive when it receives a message from the engine. 11399
AudioNodeEngine.cpp 13505
AudioNodeEngine.h This class holds onto a set of immutable channel buffers. The storage for the buffers must be malloced, but the buffer pointers and the malloc pointers can be different (e.g. if the buffers are contained inside some malloced object). 13567
AudioNodeEngineGeneric.h 2176
AudioNodeEngineGenericImpl.h 12132
AudioNodeEngineNEON.cpp 407
AudioNodeEngineSSE2.cpp 408
AudioNodeEngineSSE4_2_FMA3.cpp 423
AudioNodeExternalInputTrack.cpp static 7969
AudioNodeExternalInputTrack.h This is a MediaTrack implementation that acts for a Web Audio node but unlike other AudioNodeTracks, supports any kind of MediaTrack as an input --- handling any number of audio tracks and handling blocking of the input MediaTrack. 1485
AudioNodeTrack.cpp An AudioNodeTrack produces a single audio track with ID AUDIO_TRACK. This track has rate AudioContext::sIdealAudioRate for regular audio contexts, and the rate requested by the web content for offline audio contexts. Each chunk in the track is a single block of WEBAUDIO_BLOCK_SIZE samples. Note: This must be a different value than MEDIA_STREAM_DEST_TRACK_ID 20458
AudioNodeTrack.h An AudioNodeTrack produces one audio track with ID AUDIO_TRACK. The start time of the AudioTrack is aligned to the start time of the AudioContext's destination node track, plus some multiple of BLOCK_SIZE samples. An AudioNodeTrack has an AudioNodeEngine plugged into it that does the actual audio processing. AudioNodeTrack contains the glue code that integrates audio processing with the MediaTrackGraph. 9186
AudioParam.cpp 5741
AudioParam.h 7784
AudioParamDescriptorMap.h 833
AudioParamMap.cpp 789
AudioParamMap.h 1027
AudioParamTimeline.h 5170
AudioProcessingEvent.cpp 1842
AudioProcessingEvent.h 2179
AudioScheduledSourceNode.cpp 719
AudioScheduledSourceNode.h 1049
AudioWorkletGlobalScope.cpp 1. If the name is the empty string, throw a NotSupportedError exception and abort these steps because the empty string is not a valid key. 12658
AudioWorkletGlobalScope.h 3110
AudioWorkletImpl.cpp static 3052
AudioWorkletImpl.h 1855
AudioWorkletNode.cpp 34496
AudioWorkletNode.h 2301
AudioWorkletProcessor.cpp static 1847
AudioWorkletProcessor.h 1428
BiquadFilterNode.cpp 12446
BiquadFilterNode.h 2233
ChannelMergerNode.cpp static 3466
ChannelMergerNode.h 2135
ChannelSplitterNode.cpp static 3859
ChannelSplitterNode.h 2420
ConstantSourceNode.cpp 8344
ConstantSourceNode.h 1855
ConvolverNode.cpp 19780
ConvolverNode.h 2428
DelayBuffer.cpp 8791
DelayBuffer.h 3882
DelayNode.cpp 8029
DelayNode.h 1771
DynamicsCompressorNode.cpp 8270
DynamicsCompressorNode.h 2856
FFTBlock.cpp Copyright (C) 2010 Google Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 7497
FFTBlock.h 7102
GainNode.cpp static 5375
GainNode.h 1705
IIRFilterNode.cpp 9576
IIRFilterNode.h 1832
MediaBufferDecoder.cpp 24198
MediaBufferDecoder.h ignored 2148
MediaElementAudioSourceNode.cpp static 3705
MediaElementAudioSourceNode.h 2269
MediaStreamAudioDestinationNode.cpp static 5576
MediaStreamAudioDestinationNode.h 1865
MediaStreamAudioSourceNode.cpp static 9992
MediaStreamAudioSourceNode.h 5015
MediaStreamTrackAudioSourceNode.cpp static 7297
MediaStreamTrackAudioSourceNode.h 3474 4290
OscillatorNode.cpp 18386
OscillatorNode.h 2921
PannerNode.cpp 26981
PannerNode.h 6865
PanningUtils.h 2338
PeriodicWave.cpp static 4306
PeriodicWave.h 1931
PlayingRefChangeHandler.h 1142
ReportDecodeResultTask.h 938
ScriptProcessorNode.cpp 19059
ScriptProcessorNode.h 4469
StereoPannerNode.cpp 6945
StereoPannerNode.h 2425
ThreeDPoint.cpp Other similar methods can be added if needed. 1246
ThreeDPoint.h 1982
WaveShaperNode.cpp 12318
WaveShaperNode.h 2279
WebAudioUtils.cpp 4250
WebAudioUtils.h Converts a linear value to decibels. Returns aMinDecibels if the linear value is 0. 5530