capacitor-audio-engine
Version:
High-quality audio recording Capacitor plugin with native iOS & Android support. Features pause/resume, microphone management, real-time monitoring, audio trimming, and comprehensive mobile audio recording capabilities.
43 lines (42 loc) • 1.36 kB
TypeScript
/**
* Utility functions for handling compressed base64 data from iOS audio recordings
*
* iOS returns base64 data in the following formats:
* - "data:audio/m4a;base64,lzfse:COMPRESSED_DATA" (LZFSE compressed)
* - "data:audio/m4a;base64,UNCOMPRESSED_DATA" (regular base64)
*/
export interface CompressedBase64Info {
isCompressed: boolean;
algorithm?: 'lzfse';
data: string;
mimeType: string;
}
/**
* Parse base64 data to determine if it's compressed and extract metadata
*/
export declare function parseBase64Data(base64String: string): CompressedBase64Info;
/**
* Get the raw base64 data without compression metadata
*/
export declare function getRawBase64Data(base64String: string): string;
/**
* Check if base64 data is compressed
*/
export declare function isCompressedBase64(base64String: string): boolean;
/**
* Get compression information for logging/debugging
*/
export declare function getCompressionInfo(base64String: string): {
isCompressed: boolean;
algorithm?: string;
estimatedOriginalSize?: number;
compressedSize?: number;
};
/**
* Convert base64 string to Blob for file operations
*/
export declare function base64ToBlob(base64String: string): Blob;
/**
* Convert base64 string to data URL for direct use in audio elements
*/
export declare function getDataURL(base64String: string): string;