Skip to content

VNG-Zalo/react-native-audio-record

 
 

Repository files navigation

react-native-audio-record

Audio record buffers for iOS and Android.

Install

yarn add react-native-audio-record
react-native link react-native-audio-record

Usage

import AudioRecord from 'react-native-audio-record';

const options = {
  sampleRate: 16000,  // default 44100
  channels: 1,        // 1 or 2, default 1
  bitsPerSample: 16,  // 8 or 16, default 16
  wavFile: 'test.wav' // default 'audio.wav'
};

AudioRecord.init(options);

AudioRecord.start();

AudioRecord.stop();
// or to get the wav file path
audioFile = await AudioRecord.stop();

AudioRecord.on('data', data => {
  // base64-encoded audio data chunks
});

Use 3rd-party module like buffer to decode base64 data. Example -

// yarn add buffer
import { Buffer } from 'buffer';
chunk = Buffer.from(data, 'base64');

Don't forget to add NSMicrophoneUsageDescription in Info.plist for iOS.

Example

Example folder contain sample apps for recording (using this module) and playback (using 3rd party modules)

Credits/References

I'm not a native app developer. Most of the code is taken from online resources.

About

Audio record buffers for React Native (iOS and Android)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 36.6%
  • JavaScript 30.8%
  • Objective-C 27.5%
  • Python 5.1%