React Native library for audio recording in Android.
This library extends the original feature from https://github.com/Frosty92/react-native-audio-android , and add some settings to make this library even more powerful. I used to develop Android, not IOS, so maybe someone can do the IOS work for me XDDD.
##Installation
nstall react-native-audio-maker`
include ':react-native-audio-maker', ':app'
project(':react-native-audio-maker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-audio-maker/android')
dependencies {
compile project(':react-native-audio-maker')
}
import com.noootown.ReactNativeAudioMaker.ReactNativeAudioMakerPackage; // <-- ADD
public class MainApplication extends ReactApplication {
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new ReactNativeAudioMakerPackage() // <-- ADD
);
}
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
import AudioMaker from 'react-native-audio-maker'
let audioMaker = new AudioMaker({
filePath: 'noootown',
bitRate: 128000,
samplingRate: 48000,
outputFormat: 'MPEG_4',
audioEncoder: 'AAC',
fileExtension: 'aac',
});
Prop | Type | Default | Note |
---|---|---|---|
filePath | String | null | Required!!!, if filePath === 'noootown', then store audio under '/Document/noootown' |
bitRate | Integer | 128000 | |
samplingRate | Integer | 48000 | |
outputFormat | String | 'MPEG_4' | MediaRecorder.OutputFormat.MPEG_4 -> fill in 'MPEG_4' |
audioEncoder | String | 'AAC' | MediaRecorder.AudioEncoder.AAC -> fill in 'AAC' |
fileExtension | String | 'aac' | '3gp' or somewhat |
https://developer.android.com/reference/android/media/MediaRecorder.OutputFormat.html
https://developer.android.com/reference/android/media/MediaRecorder.AudioEncoder.html
audioMaker.startRecord('filename', (success) => {
console.log(success);
}, (error) => {
console.log(error);
});
audioMaker.stopRecord(
(success) => console.log(success),
(error) => console.log(error)
);
audiomaker.setFilePath(filePath)
audiomaker.setBitRate(bitRate)
audiomaker.setSamplingRate(samplingRate)
audiomaker.setFileExtension(fileExtension)
audiomaker.setFileOutputFormat(outputFormat)
audiomaker.setAudioEncoder(encoder)