react-native-audio-core
v1.1.0
Published
A React Native library for seamless audio playback on iOS and Android, supporting local files and streaming from remote URLs with a developer-friendly API.
Maintainers
Readme
Features
- Cross-Platform: Works on both iOS and Android with a unified API.
- Flexible Playback: Supports local audio files and remote streaming (HTTP/HTTPS).
- Simple Controls: Play, pause, resume, and stop audio with intuitive methods.
- Type-Safe: Includes TypeScript definitions for a better developer experience.
Installation
Install the module via npm or Yarn:
npm install react-native-audio-coreor
yarn add react-native-audio-coreiOS Setup
- Run
pod installin theios/directory:cd ios && pod install - Ensure the
AVFoundation.frameworkis linked in your Xcode project (usually handled automatically).
Android Setup
No additional setup is required. The module uses the native MediaPlayer for playback.
Usage
Import and use the AudioWrapper to play audio in your React Native app:
import Audio from 'react-native-audio-core';
// Play a local audio file
await Audio.play(require('./sound.mp3'))
.then(() => console.log('Playing local audio'))
.catch(error => console.error('Error:', error));
// Play a remote audio stream
await Audio.play('https://file-examples.com/wp-content/uploads/2017/11/file_example_MP3_700KB.mp3')
.then(() => console.log('Playing remote audio'))
.catch(error => console.error('Error:', error));
// Control playback
Audio.pause();
Audio.resume();
Audio.stop();Example App
The repository includes an example app to demonstrate usage. To run it:
yarn exampleThis launches a demo app with buttons to play, pause, resume, and stop local and remote audio.
API Reference
Audio.play(resource: number | string): Promise<void>
Plays an audio file.
resource: Either a local asset (e.g.,require('./sound.mp3')) or a remote URL (e.g.,'https://example.com/audio.mp3').- Resolves when playback starts, or rejects on error.
Audio.pause(): void
Pauses the current audio playback.
Audio.resume(): void
Resumes paused audio playback.
Audio.stop(): void
Stops playback and releases resources.
Contributing
Contributions are welcome! Please read our Contributing Guide and submit pull requests or issues on GitHub.
License
This project is licensed under the MIT License.
Support
If you encounter issues or have questions, please file an issue on the GitHub repository.
Built with ❤️ by AliReza Beigy. Star the repo if you find it useful!
