@quiztr/expo-audio-stream
Version:
Expo Play Audio Stream module
27 lines (20 loc) • 679 B
text/typescript
// packages/expo-audio-stream/src/events.ts
import { EventEmitter, type Subscription } from 'expo-modules-core'
import ExpoPlayAudioStreamModule from './ExpoPlayAudioStreamModule'
const emitter = new EventEmitter(ExpoPlayAudioStreamModule)
export interface AudioEventPayload {
encoded?: string
buffer?: Float32Array
fileUri: string
lastEmittedSize: number
position: number
deltaSize: number
totalSize: number
mimeType: string
streamUuid: string
}
export function addAudioEventListener(
listener: (event: AudioEventPayload) => Promise<void>
): Subscription {
return emitter.addListener<AudioEventPayload>('AudioData', listener)
}