패키지, 저장소 및 앱 카테고리 검색

패키지 상세v5.3.0

flutter_soloud

Flutter용 저수준 오디오 플러그인으로, 주로 게임과 몰입형 앱을 위한 것입니다. SoLoud(C++) 오디오 엔진 기반입니다.

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
19.2만
좋아요
618
Pub 점수
150

패키지 설치

flutter pub add flutter_soloud

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

flutter_soloud는 SoLoud C++ 오디오 엔진을 기반으로 한 Flutter용 저수준 오디오 플러그인입니다. 게임과 몰입형 애플리케이션에 적합한 효율적이고 실시간 오디오 재생을 제공합니다. 이 패키지는 Android, iOS, Web, macOS, Windows, Linux 등 여러 플랫폼을 지원하여 장치 간 일관된 오디오 성능을 보장합니다. 소리를 세밀하게 제어해야 하는 개발자를 위해 설계되었으며, 3D 공간 음향, 스트리밍, 샘플 조작 등의 기능을 제공합니다. 최소 지연과 높은 반응성이 필수적인 성능 중심 애플리케이션에 적합한 가벼운 특성을 가지고 있습니다.

사용 사례

  • 게임 오디오 구현
  • 몰입형 가상현실/증강현실 경험
  • 실시간 사운드 효과
  • 오디오 기반 인터랙티브 앱
  • 저지연 오디오 처리

주요 기능

  • 크로스 플랫폼 오디오 지원
  • 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 개

소스 저장소

이 패키지를 사용하는 프로젝트