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 3977
AlignmentUtils.h 886
AnalyserNode.cpp static 12023
AnalyserNode.h 2955
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. 16953
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) 31081
AudioBufferSourceNode.h 4102
AudioContext.cpp 44878
AudioContext.h This runnable allows the MTG to notify the main thread when audio is actually flowing 17010
AudioDestinationNode.cpp 21756
AudioDestinationNode.h 4422
AudioEventTimeline.cpp 12942
AudioEventTimeline.h 12433
AudioListener.cpp 4395
AudioListener.h 2445
AudioNode.cpp 20485
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. 11726
AudioNodeEngine.cpp 12193
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). 13691
AudioNodeEngineNEON.cpp 12270
AudioNodeEngineNEON.h MOZILLA_AUDIONODEENGINENEON_H_ 1877
AudioNodeEngineSSE2.cpp 12129
AudioNodeEngineSSE2.h 1729
AudioNodeExternalInputTrack.cpp static 8008
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 24149
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. 9287
AudioParam.cpp 5934
AudioParam.h 7773
AudioParamDescriptorMap.h 859
AudioParamMap.cpp 913
AudioParamMap.h 1054
AudioParamTimeline.h 5042
AudioProcessingEvent.cpp 1803
AudioProcessingEvent.h 2205
AudioScheduledSourceNode.cpp 719
AudioScheduledSourceNode.h 1075
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. 12734
AudioWorkletGlobalScope.h 3155
AudioWorkletImpl.cpp static 2526
AudioWorkletImpl.h 1759
AudioWorkletNode.cpp 33808
AudioWorkletNode.h 2327
AudioWorkletProcessor.cpp static 1987
AudioWorkletProcessor.h 1429
BiquadFilterNode.cpp 11718
BiquadFilterNode.h 2259
ChannelMergerNode.cpp static 3385
ChannelMergerNode.h 2161
ChannelSplitterNode.cpp static 3776
ChannelSplitterNode.h 2446
ConstantSourceNode.cpp 8311
ConstantSourceNode.h 1881
ConvolverNode.cpp 19713
ConvolverNode.h 2462
DelayBuffer.cpp 8743
DelayBuffer.h 3842
DelayNode.cpp 7994
DelayNode.h 1797
DynamicsCompressorNode.cpp 8176
DynamicsCompressorNode.h 2882
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. 7236
FFTBlock.h 10100
GainNode.cpp static 5341
GainNode.h 1731
IIRFilterNode.cpp 8953
IIRFilterNode.h 1858
MediaBufferDecoder.cpp 24436
MediaBufferDecoder.h ignored 2148
MediaElementAudioSourceNode.cpp static 3832
MediaElementAudioSourceNode.h 2295
MediaStreamAudioDestinationNode.cpp static 5366
MediaStreamAudioDestinationNode.h 1891
MediaStreamAudioSourceNode.cpp static 9240
MediaStreamAudioSourceNode.h 4335
MediaStreamTrackAudioSourceNode.cpp static 7279
MediaStreamTrackAudioSourceNode.h 3501
OscillatorNode.cpp 17222
OscillatorNode.h 2947
PannerNode.cpp 25612
PannerNode.h 7431
PanningUtils.h 2364
PeriodicWave.cpp static 4428
PeriodicWave.h 1959
PlayingRefChangeHandler.h 1168
ReportDecodeResultTask.h 938
ScriptProcessorNode.cpp 18663
ScriptProcessorNode.h 4495
StereoPannerNode.cpp 6888
StereoPannerNode.h 2451
ThreeDPoint.cpp Other similar methods can be added if needed. 1246
ThreeDPoint.h 2009
WaveShaperNode.cpp 12325
WaveShaperNode.h 2271
WebAudioUtils.cpp 5587
WebAudioUtils.h Converts an AudioTimelineEvent's floating point time values 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. 6242
blink This directory contains the code originally borrowed from the Blink Web Audio 38
moz.build 4025
test 221