import { ByteArray } from "../../avm2/natives/byteArray"; import { SoundTransform } from "./SoundTransform"; import { ASObject } from "../../avm2/nat/ASObject"; /** * Copyright 2014 Mozilla Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ export interface ISoundSource { soundTransform: SoundTransform; updateSoundLevels(volume: number): any; stopSound(): any; } export declare class SoundMixer extends ASObject { static classInitializer: any; static classSymbols: string[]; static instanceSymbols: string[]; constructor(); private static _masterVolume; private static _registeredSoundSources; private static _bufferTime; static _soundTransform: SoundTransform; static get bufferTime(): number; static set bufferTime(bufferTime: number); static get soundTransform(): SoundTransform; static set soundTransform(sndTransform: SoundTransform); static get audioPlaybackMode(): string; static set audioPlaybackMode(value: string); static get useSpeakerphoneForVoice(): boolean; static set useSpeakerphoneForVoice(value: boolean); static stopAll(): void; static computeSpectrum(outputArray: ByteArray, FFTMode?: boolean, stretchFactor?: number): void; static areSoundsInaccessible(): boolean; static _getMasterVolume(): number; static _setMasterVolume(volume: any): void; static _registerSoundSource(source: ISoundSource): void; static _unregisterSoundSource(source: ISoundSource): void; static _updateSoundSource(source: ISoundSource): void; static _updateAllSoundSources(): void; }