Audiopc

GitHub license GitHub stars GitHub issues GitHub top language

🎶 Seamless Audio Integration for Flutter

Audiopc is a simple and flexible Flutter plugin designed to provide advanced audio capabilities to your applications. Leveraging native code for optimal performance and access to platform-specific features, this plugin allows you to effortlessly integrate a wide range of audio functionalities, from playback to advanced audio processing.

Whether you're building a music player, a podcast app, a voice memo recorder, or any application requiring robust audio handling, Audiopc streamlines the development process, offering a consistent and intuitive API.

✨ Features

  • Audio playback:
  • Audio metadata: Read audio metadata
  • Supported platform: Support Windows, Android
  • Audio formats: Support for various audio formats e.g., MP3, WAV, AAC

🖥️ Platform Compatibility

Platform Supported Notes
Android Full support
Windows Full support
iOS 🚧 Planned
macOS 🚧 Planned
Linux 🚧 Planned

🚧Expect to achieve

  • Properly stream audio:
  • Realtime audio processing: Like equalizer
  • **More supported platform: ** Like IOS, MacOS, and Linux

🚀 Getting Started

To use this plugin, add audio as a dependency in your pubspec.yaml file as github path.

# dependencies
dependencies:
  flutter:
    sdk: flutter
  audipc:
    path: https://github.com/ThomasHandlag/audiopc
# end dependencies
// play audio
final player = Audiopc(id: "0");
player.play(file.path);

player.onPositionChanged.listen((position) {
  // listen to position change
});

player.onStateChanged.listen((state) {
    //listen to state changed
});

player.state;

// get audio metadata
AudioMetaData? metadata;

metadata = await player.getMetaData(file.path);
print(metadata?.artist ?? "");

// samples data
player.onSamples.listen((samples) {
  List<double> data = samples;
  // do something with samples
});