パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v5.2.2

flutter_soloud

Flutter用の低レベルオーディオプラグインで、主にゲームや没入型アプリ向けです。SoLoud(C++)オーディオエンジンに基づいています。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
18.2万
いいね数
613
Pub ポイント
160

パッケージをインストール

flutter pub add flutter_soloud

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

flutter_soloud は、SoLoud C++ オーディオエンジンに基づいて構築された Flutter 向けの低レベルオーディオプラグインです。ゲームや没入型アプリケーションに最適な効率的でリアルタイムのオーディオ再生を提供します。このパッケージは、Android、iOS、Web、macOS、Windows、Linux を含む複数のプラットフォームをサポートしており、デバイス間での一貫したオーディオパフォーマンスを実現します。音声に対する細かい制御が必要な開発者向けに設計されており、3D スペーシャルオーディオ、ストリーミング、サンプル操作などの機能を備えています。軽量な性質により、最小遅延と高い応答性が求められるパフォーマンスが重要なアプリケーションに適しています。

用途

  • ゲームオーディオの実装
  • 没入型VR/AR体験
  • リアルタイムサウンドエフェクト
  • オーディオ駆動型インタラクティブアプリ
  • 低遅延オーディオ処理

主な機能

  • クロスプラットフォーム音声サポート
  • 3D空間音響
  • ストリーミング音声再生
  • サンプルレベルのオーディオ制御
  • 低遅延

適している対象

  • ゲーム開発者
  • インタラクティブなアプリ作成者
  • オーディオエンジニア
  • パフォーマンス重視のアプリケーション
  • C++ベースのオーディオ統合

注意事項

  • 低レベルのオーディオ概念に関する知識が必要です
  • 限られた高レベルな抽象
  • シンプルな音楽再生には向いていない
  • 高度なユースケースに最適
  • プラットフォーム固有のオーディオ動作は異なる場合があります

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

A low-level audio plugin for Flutter.

Pub Version style: very good analysis

Linux Windows Android MacOS iOS Web
Support 💙 💙 💙 💙 💙 💙
Minimum Version Any Any 21+ 10.15+ 13.0+ iOS 16.4+
Safari 16.4+
Chrome 91+
Edge 91+
Firefox 89+

Overview

A high-performance audio plugin designed primarily for games and immersive applications, providing low latency and advanced features.

Key Features

  • ⚡ Low latency, high performance audio
  • ⏱️ Sample-accurate scheduled playback: playClocked for sub-millisecond spaced playback regardless of buffer size, and playScheduled for score/manifest-style scheduling of whole batches of sounds on the engine's own clock (with optional scheduled stop/fade). Perfect for metronomes, music sequencers, rhythm games and precisely timed audio cues
  • 🎮 3D positional audio with Doppler effect
  • 🔄 Gapless looping with half-open [start, end) loop regions
  • 🔄 Stream audio with auto-pause for buffering, support for PCM, MP3, WAV, Ogg with Opus, Vorbis and FLAC containers
  • 📥 Pull-buffer streaming: the engine requests encoded data on demand (MP3, WAV, FLAC, Ogg Opus/Vorbis/FLAC), with seek support and callbacks for buffering, metadata, duration and data requests — ideal for network streams and custom data sources
  • 🚌 Mixing buses: group voices (music, SFX, UI...) into sub-mixes with their own volume, filters and visualization
  • 📊 Get audio wave and/or FFT audio data in real-time (useful for visualization)
  • 🎛️ Rich effects system (reverb, echo, limiter, parametric equalizer, pitch shift, etc.)
  • ⚙️ Faders for attributes (e.g. fade out for 2 seconds, then stop)
  • 🎚️ Oscillators for attributes
  • 🌊 Waveform generation and visualization
  • 🔊 Multiple voices, playing different or even the same sound multiple times
  • 🎵 Support for MP3, WAV, OGG, and FLAC
  • 🔴 Capture the master mixer output as a stream for recording, processing, or streaming (with different PCM formats and Opus, Vorbis, FLAC, WAV encoded stream formats)
  • ⏱️ Read audio data samples from a file with a given time range
  • 🌊 Generate waveforms in real-time with various types (sine, square, saw, triangle, etc.)

Getting Started

If you are looking for a package to visualize audio using shaders or CustomPainter, please check out audio_flux. It uses this plugin for output and flutter_recorder for input.

If you are working with MIDI or SoundFont files (SF2/SF3/SFZ), check out soundfont_kit—a companion package that is very helpful for musicians and game developers looking to synthesize instrument audio using SoundFonts with flutter_soloud.

The native code is built with Dart build hooks: no CMake, CocoaPods script phases, or SPM configuration is needed — it works the same whether your app uses CocoaPods or Swift Package Manager.

By default, Xiph audio codecs (Ogg, Vorbis, Opus, FLAC) are linked and bundled from tested prebuilt libraries (xiph/prebuild/<platform>/), ensuring that packaged apps (Android AAB/APK, iOS IPA, macOS APP, Windows EXE) work out of the box with zero external build dependencies. You can also configure:

  • System libraries: Set <platform>_use_system_libs: true (e.g. linux_use_system_libs: true) to link system packages.
  • Force source build: Set <platform>_force_build_libs: true to clone and compile from source via CMake.
  • Without Xiph mode: Set no_xiph_libs: true to exclude Xiph codecs and shrink binary size.

For complete setup instructions and Windows download links, see the Xiph Libraries & Codecs Guide.

Documentation

AI Agent Skills

flutter_soloud includes bundled Agent Skills (SKILL.md instruction files) to help AI coding agents (Claude, Cursor, Gemini, GitHub Copilot, Cline, Codex, OpenCode, etc.) generate correct, high-performance code for all features of this audio engine.

Install or update the skills in your project by running:

dart run flutter_soloud:skills

To check whether installed skills are up to date without modifying any files:

dart run flutter_soloud:skills --check

Simple Example

void example() async {
  final soloud = SoLoud.instance;
  await soloud.init();

  await soloud.playSource(asset: 'assets/sound.mp3');
  // or
  final sound = await soloud.loadAsset('assets/sound.mp3');
  final handle = soloud.play(sound);
  
  [...]
  await soloud.deinit();
}

Apps & Games Using flutter_soloud

A showcase of apps and games built with this plugin:

App/Game Developer Description
GPhil
web MacOS Windows
Vyacheslav Gryaznov Innovative app designed for musicians to play instrumental concertos with flexible virtual orchestral accompaniment.
Forcebar Doug Todd Forcebar is a pure reflex game.
RadioVisualizer Marco Bavagnoli Stream over 35,000 live radio stations from every corner of the globe.
Stellar Bastion
web Android iOS
Coconut Island Apps 2D Tower Defense game.
Mortigen
web Android iOS
Luis Enrique Ruiz Roguelite survival shooter.
SUMOJI
web Android iOS
Valentin Martinet Fun Emoji-based Sudoku.
GuanDan
web MacOS Windows Android iOS
yangyuan GuanDan (掼蛋) is a popular four-player Chinese card game.
DeReMi Piano: Play & Learn
Android
Gent Mecaj A piano learning app.

Want to add your app? Feel free to open a PR!

License

The Dart plugin is covered by the MIT license. For information about the underlying SoLoud engine license, see the documentation.

カテゴリー

依存関係

依存関係一覧 11 件

ソースリポジトリ

このパッケージを使用しているプロジェクト