@azgaar/tone
Version:
A fork of Web Audio framework for making interactive music in the browser.
61 lines (60 loc) • 1.99 kB
TypeScript
import { Tone } from "../Tone";
interface ToneMediaElementOptions {
url?: string;
onload: (buffer?: ToneMediaElement) => void;
onerror: (error: Error) => void;
}
/**
* MediaElement loading and storage. ToneMediaElement is used internally by MediaElementSampler
* @example
* const mediaElement = new Tone.ToneMediaElement("https://tonejs.github.io/audio/casio/A1.mp3", () => {
* console.log("loaded");
* });
* @category Core
*/
export declare class ToneMediaElement extends Tone {
readonly name: string;
/**
* stores the loaded MediaElement
*/
private _element?;
/**
* Callback when the element is loaded
*/
onload: (element: ToneMediaElement) => void;
/**
* @param url The url to load.
* @param onload A callback which is invoked after the buffer is loaded.
* @param onerror The callback to invoke if there is an error
*/
constructor(url?: string, onload?: (element: ToneMediaElement) => void, onerror?: (error: Error) => void);
constructor(options?: Partial<ToneMediaElementOptions>);
static getDefaults(): ToneMediaElementOptions;
/**
* The media element stored in the object.
*/
get(): HTMLAudioElement | undefined;
/**
* clean up
*/
dispose(): this;
/**
* A path which is prefixed before every url.
*/
static baseUrl: string;
/**
* Creates HTMLAudioElement for provided url.
*/
static load(url: string): HTMLAudioElement;
/**
* Checks a url's extension to see if the current browser can play that file type.
* @param url The url/extension to test
* @return If the file extension can be played
* @static
* @example
* Tone.ToneAudioBuffer.supportsType("wav"); // returns true
* Tone.ToneAudioBuffer.supportsType("path/to/file.wav"); // returns true
*/
static supportsType(url: string): boolean;
}
export {};