@klever-one/web-sdk
Version:
Web SDK for integrating real-time room management and streaming functionality into web applications
29 lines (28 loc) • 977 B
TypeScript
/**
* WAV 파일 인코딩 함수와 Blob 생성 기능을 제공하는 WavManager 클래스
*/
export declare class WavManager {
private static instance;
private constructor();
static getInstance(): WavManager;
/**
* WAV 파일 인코딩 함수
* @param samples - PCM 샘플 데이터 (Float32Array)
* @param sampleRate - 샘플레이트 (예: 44100)
* @returns WAV 파일 데이터를 담은 ArrayBuffer
*/
encodeWav(samples: Float32Array, sampleRate: number): ArrayBuffer;
/**
* DataView에 문자열을 씁니다.
* @param view - DataView 객체
* @param offset - 시작 오프셋
* @param str - 쓸 문자열
*/
private writeString;
/**
* 주어진 Blob URL 또는 Blob을 이용해 WAV Blob을 생성합니다.
* @param input - 오디오 Blob URL 또는 Blob
* @returns Promise<Blob> (타입은 audio/wav)
*/
createWavBlob(input: string | Blob): Promise<Blob>;
}