UNPKG

@siteed/expo-audio-studio

Version:

Comprehensive audio processing library for React Native and Expo with recording, analysis, visualization, and streaming capabilities across iOS, Android, and web

35 lines (31 loc) 1.09 kB
import { PreviewOptions, AudioAnalysis } from './AudioAnalysis.types' import { extractAudioAnalysis } from './extractAudioAnalysis' /** * Generates a simplified preview of the audio waveform for quick visualization. * Ideal for UI rendering with a specified number of points. * * @param options - The options for the preview, including file URI and time range. * @returns A promise that resolves to the audio preview data. */ export async function extractPreview({ fileUri, numberOfPoints = 100, startTimeMs = 0, endTimeMs = 30000, // First 30 seconds decodingOptions, logger, }: PreviewOptions): Promise<AudioAnalysis> { const durationMs = endTimeMs - startTimeMs const segmentDurationMs = Math.floor(durationMs / numberOfPoints) // Call extractAudioAnalysis with calculated parameters const analysis = await extractAudioAnalysis({ fileUri, startTimeMs, endTimeMs, logger, segmentDurationMs, decodingOptions, }) // Transform the result into AudioPreview format return analysis }