Package Exports
- react-native-real-time-audio-stream
- react-native-real-time-audio-stream/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-native-real-time-audio-stream) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
react-native-real-time-audio-stream
Getting started
$ npm install react-native-real-time-audio-stream --save
Mostly automatic installation
$ react-native link react-native-real-time-audio-stream
Manual installation
iOS
- In XCode, in the project navigator, right click
Libraries➜Add Files to [your project's name] - Go to
node_modules➜react-native-real-time-audio-streamand addRNRealTimeAudioStream.xcodeproj - In XCode, in the project navigator, select your project. Add
libRNRealTimeAudioStream.ato your project'sBuild Phases➜Link Binary With Libraries - Run your project (
Cmd+R)<
Android
- Open up
android/app/src/main/java/[...]/MainActivity.java
- Add
import com.reactlibrary.RNRealTimeAudioStreamPackage;to the imports at the top of the file - Add
new RNRealTimeAudioStreamPackage()to the list returned by thegetPackages()method
- Append the following lines to
android/settings.gradle:include ':react-native-real-time-audio-stream' project(':react-native-real-time-audio-stream').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-real-time-audio-stream/android') - Insert the following lines inside the dependencies block in
android/app/build.gradle:compile project(':react-native-real-time-audio-stream')
Usage
import RNRealTimeAudioStream from 'react-native-real-time-audio-stream';
const options = {
sampleRate: 16000 // Default is 44100
channels: 1 // Default is 1
bitsPerSample: // Default is 16
audioSource?: number // Default is 6 @android
bufferSize?: number // Default is 2048
}
// You need to initialize before start recording
RNRealTimeAudioStream.init(options);
// Emitting real time audio with EventEmmiter
RNRealTimeAudioStream.on('data',data => {
/*
data = {
raw_data: string -> base64-encoded audio chunk data
opus_data: string -> base64-encoded opus audio chunk data
amplitude: number -> amplitude value
frequency: number -> frequency value
decibel: number -> decibel value
}
*/
});
// If already started its do nothing
RNRealTimeAudioStream.start();
// If already stopped its do nothing
RNRealTimeAudioStream.stop();
// Its only stop data emitting but record object still record
RNRealTimeAudioStream.pause();
RNRealTimeAudioStream.resume();