使用 SoLoud C++ 库和 FFI 的 Flutter 低级音频插件
概览
一款高性能音频插件,主要为游戏和沉浸式应用设计,提供低延迟和高级功能。 - ⚡ 低延迟,高性能音频 - ⏱️ 采样准确的定时播放:无论缓冲区大小如何,playClocked支持亚毫秒间隔播放,playSchedule用于在引擎自身时钟上调度整批声音的乐谱/清单式调度(可选定程停止/淡出)。非常适合节拍器、音乐序列器、节奏游戏和精确时序的音频提示 - 🎮 3D定位音频带多普勒效果 - 🔄 无缝循环和半开[开始、结束]循环区域 - 🔄 带自动暂停缓冲的流式音频,支持PCM、MP3、WAV、Ogg,Opus、Vorbis和FLAC容器 - 📥 拉取缓冲流:引擎按需请求编码数据(MP3、WAV、FLAC、Ogg Opus/Vorbis/FLAC),支持寻道和回调以缓冲、元数据、时长和数据请求——非常适合网络流和自定义数据源 - 🚌 ......
概述(AI 翻译)
Flutter 的低级音频插件。
| Linux | Windows | Android | MacOS | iOS | Web | |
|---|---|---|---|---|---|---|
| 支持 | 💙 | 💙 | 💙 | 💙 | 💙 | |
| 最低版本 | 任意 | 任意 | 21+ | 10.15+ | 13.0+ | iOS 16.4+ Safari 16.4+ Chrome 91+ Edge 91+ Firefox 89+ |
概述
一款高性能音频插件,主要为游戏和沉浸式应用设计,提供低延迟和高级功能。
主要特色
- ⚡ 低延迟,高性能音频
- ⏱️ 采样精确的计划播放:
playClocked用于亚毫秒间隔的播放,无论缓冲区大小如何;playScheduled用于在引擎自身时钟上调度整批声音的乐谱/清单式排程(可选定定时停止/淡出)。非常适合节拍器、音乐序列器、节奏游戏和精确定时的音频提示 - 🎮 带有多普勒效应的3D定位音频
- 🔄 半开
start, end)环区的无间隙环路 - 🔄 带自动暂停缓冲功能的音频流式流,支持PCM、MP3、WAV、FLAC、Ogg(Opus、Vorbis、FLAC)、AAC(ADTS)、AC-3和E-AC-3(注:MP4和M4A不支持流媒体)
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
A low-level audio plugin for Flutter.
| 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:
playClockedfor sub-millisecond spaced playback regardless of buffer size, andplayScheduledfor 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, FLAC, Ogg (Opus, Vorbis, FLAC), AAC (ADTS), AC-3, and E-AC-3 (Note: MP4 and M4A are not supported for streaming)
- 📥 Pull-buffer streaming: the engine requests encoded data on demand (MP3, WAV, FLAC, Ogg Opus/Vorbis/FLAC, AAC ADTS, AC-3, E-AC-3), 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, ring modulation, etc.)
- ⚙️ Faders for filter attributes (e.g. fade out for 2 seconds, then stop)
- 🎚️ Oscillators for filter attributes
- 🌊 Waveform generation and visualization
- 🔊 Multiple voices, playing different or even the same sound multiple times
- 🎵 Audio playback support for MP3, WAV, OGG, FLAC, plus native platform decoding for M4A, MP4 (audio tracks), AAC, AC-3, and E-AC-3
- 🔴 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
- Watch Flutter Package of the Week video.
- Especially for web use, please look at the setup guide docs.
推荐工具
换一个关键词,或者移除筛选条件。
安装
npx skillfish add alnitak/flutter_soloud