UNPKG

tone

Version:

A Web Audio framework for making interactive music in the browser.

64 lines (63 loc) 2.11 kB
import { NormalRange } from "../../core/type/Units"; import { MeterBase, MeterBaseOptions } from "./MeterBase"; export interface MeterOptions extends MeterBaseOptions { smoothing: NormalRange; normalRange: boolean; channels: number; } /** * Meter gets the [RMS](https://en.wikipedia.org/wiki/Root_mean_square) * of an input signal. It can also get the raw value of the input signal. * * @example * import { Meter, UserMedia } from "tone"; * const meter = new Meter(); * const mic = new UserMedia(); * mic.open(); * // connect mic to the meter * mic.connect(meter); * // the current level of the mic * const level = meter.getValue(); * @category Component */ export declare class Meter extends MeterBase<MeterOptions> { readonly name: string; /** * If the output should be in decibels or normal range between 0-1. If `normalRange` is false, * the output range will be the measured decibel value, otherwise the decibel value will be converted to * the range of 0-1 */ normalRange: boolean; /** * A value from between 0 and 1 where 0 represents no time averaging with the last analysis frame. */ smoothing: number; /** * The previous frame's value */ private _rms; /** * @param smoothing The amount of smoothing applied between frames. */ constructor(smoothing?: NormalRange); constructor(options?: Partial<MeterOptions>); static getDefaults(): MeterOptions; /** * Use [[getValue]] instead. For the previous getValue behavior, use DCMeter. * @deprecated */ getLevel(): number | number[]; /** * Get the current value of the incoming signal. * Output is in decibels when [[normalRange]] is `false`. * If [[channels]] = 1, then the output is a single number * representing the value of the input signal. When [[channels]] > 1, * then each channel is returned as a value in a number array. */ getValue(): number | number[]; /** * The number of channels of analysis. */ readonly channels: number; dispose(): this; }