@ux-aspects/ux-aspects
Version:
Open source user interface framework for building modern, responsive, mobile big data applications
32 lines (31 loc) • 1.01 kB
TypeScript
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export declare class AudioService {
private readonly _http;
private _audioBuffer;
private _audioBufferSource;
private _audioContext;
private _gainNode;
private _analyserNode;
getAudioFileMetadata(mediaElement: HTMLMediaElement): Observable<AudioMetadata>;
getWaveformFromUrl(url: string): Observable<Float32Array[]>;
getWaveformPoints(channels?: Float32Array[], skip?: number): WaveformPoint[];
private getAudioBuffer;
private getOfflineAudioContext;
private createBufferSource;
private createVolumeNode;
private createAnalyserNode;
private disconnectSource;
static ɵfac: i0.ɵɵFactoryDeclaration<AudioService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<AudioService>;
}
export interface WaveformPoint {
min: number;
max: number;
}
export interface AudioMetadata {
filename: string;
extension: string;
description: string;
size: number;
}