react-native-audio-recorder-player
Version:
React Native Audio Recorder and Player.
184 lines (166 loc) • 4.38 kB
Flow
/**
* Flowtype definitions for index
* Generated by Flowgen from a Typescript Definition
* Flowgen v1.11.0
*/
declare export var AudioSourceAndroidType: {|
+DEFAULT: 0, // 0
+MIC: 1, // 1
+VOICE_UPLINK: 2, // 2
+VOICE_DOWNLINK: 3, // 3
+VOICE_CALL: 4, // 4
+CAMCORDER: 5, // 5
+VOICE_RECOGNITION: 6, // 6
+VOICE_COMMUNICATION: 7, // 7
+REMOTE_SUBMIX: 8, // 8
+UNPROCESSED: 9, // 9
+RADIO_TUNER: 1998, // 1998
+HOTWORD: 1999, // 1999
|};
declare export var OutputFormatAndroidType: {|
+DEFAULT: 0, // 0
+THREE_GPP: 1, // 1
+MPEG_4: 2, // 2
+AMR_NB: 3, // 3
+AMR_WB: 4, // 4
+AAC_ADIF: 5, // 5
+AAC_ADTS: 6, // 6
+OUTPUT_FORMAT_RTP_AVP: 7, // 7
+MPEG_2_TS: 8, // 8
+WEBM: 9, // 9
|};
declare export var AudioEncoderAndroidType: {|
+DEFAULT: 0, // 0
+AMR_NB: 1, // 1
+AMR_WB: 2, // 2
+AAC: 3, // 3
+HE_AAC: 4, // 4
+AAC_ELD: 5, // 5
+VORBIS: 6, // 6
|};
declare type AVEncodingType =
| typeof AVEncodingOption.lpcm
| typeof AVEncodingOption.ima4
| typeof AVEncodingOption.aac
| typeof AVEncodingOption.MAC3
| typeof AVEncodingOption.MAC6
| typeof AVEncodingOption.ulaw
| typeof AVEncodingOption.alaw
| typeof AVEncodingOption.mp1
| typeof AVEncodingOption.mp2
| typeof AVEncodingOption.alac
| typeof AVEncodingOption.amr
| typeof AVEncodingOption.flac
| typeof AVEncodingOption.opus;
declare export var AVEncodingOption: {|
+lpcm: "lpcm", // "lpcm"
+ima4: "ima4", // "ima4"
+aac: "aac", // "aac"
+MAC3: "MAC3", // "MAC3"
+MAC6: "MAC6", // "MAC6"
+ulaw: "ulaw", // "ulaw"
+alaw: "alaw", // "alaw"
+mp1: "mp1", // "mp1"
+mp2: "mp2", // "mp2"
+alac: "alac", // "alac"
+amr: "amr", // "amr"
+flac: "flac", // "flac"
+opus: "opus", // "opus"
|};
declare export var AVEncoderAudioQualityIOSType: {|
+min: 0, // 0
+low: 32, // 32
+medium: 64, // 64
+high: 96, // 96
+max: 127, // 127
|};
export interface AudioSet {
AVSampleRateKeyIOS?: number;
AVFormatIDKeyIOS?: AVEncodingType;
AVNumberOfChannelsKeyIOS?: number;
AVEncoderAudioQualityKeyIOS?: $Values<typeof AVEncoderAudioQualityIOSType>;
AudioSourceAndroid?: $Values<typeof AudioSourceAndroidType>;
OutputFormatAndroid?: $Values<typeof OutputFormatAndroidType>;
AudioEncoderAndroid?: $Values<typeof AudioEncoderAndroidType>;
AudioEncodingBitRateAndroid?: number;
AudioSamplingRateAndroid?: number;
}
declare class AudioRecorderPlayer {
mmss: (secs: number) => string;
mmssss: (milisecs: number) => string;
/**
* set listerner from native module for recorder.
* @returns {callBack} (e: any)}
*/
addRecordBackListener: (e: any) => void;
/**
* remove listener for recorder.
* @returns {void}
*/
removeRecordBackListener: () => void;
/**
* set listener from native module for player.
* @returns {callBack} (e: Event)}
*/
addPlayBackListener: (e: any) => void;
/**
* remove listener for player.
* @returns {void}
*/
removePlayBackListener: () => void;
/**
* start recording with param.
* @param {string} uri audio uri.
* @returns {Promise<string>}
*/
startRecorder: (
uri?: string,
meteringEnabled?: boolean,
audioSets?: AudioSet
) => Promise<string>;
/**
* stop recording.
* @returns {Promise<string>}
*/
stopRecorder: () => Promise<string>;
/**
* resume playing.
* @returns {Promise<string>}
*/
resumePlayer: () => Promise<string>;
/**
* start playing with param.
* @param {string} uri audio uri.
* @returns {Promise<string>}
*/
startPlayer: (uri?: string) => Promise<string>;
/**
* stop playing.
* @returns {Promise<string>}
*/
stopPlayer: () => Promise<string>;
/**
* pause playing.
* @returns {Promise<string>}
*/
pausePlayer: () => Promise<string>;
/**
* seek to.
* @param {number} time position seek to in second.
* @returns {Promise<string>}
*/
seekToPlayer: (time: number) => Promise<string>;
/**
* set volume.
* @param {number} setVolume set volume.
* @returns {Promise<string>}
*/
setVolume: (volume: number) => Promise<string>;
/**
* set subscription duration.
* @param {number} sec subscription callback duration in seconds.
* @returns {Promise<string>}
*/
setSubscriptionDuration: (sec: number) => Promise<string>;
}
declare export default typeof AudioRecorderPlayer;