FLUTTER ECOSYSTEM

rodydavis/flutter_midi

Flutter における MIDI 再生

flutter_midi のプロジェクト画像
Stars
62
Forks
58
最終プッシュ(UTC)
2024/03/10
プロジェクト状態
公開中
Rody Davis GitHub avatar
GITHUB User

Rody Davis ↗

Senior Developer Relations Engineer @google @google-deepmind supporting @google-antigravity

@GoogleSan Francisco, CA公式サイト ↗
言語SwiftDartJavaRubyHTMLObjective-C

技術トピック

このリポジトリが公開するパッケージ

使用している依存関係

依存関係一覧 7 件
  • flutter{"sdk":"flutter"}
  • flutter_web_plugins{"sdk":"flutter"}
  • js^0.6.3
  • path_provider^2.0.5
  • plugin_platform_interface^2.0.1
  • tonic^0.2.4
  • flutter_test開発用{"sdk":"flutter"}

元の README

以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。

README を開く / 閉じる

Buy Me A Coffee Donate github pages GitHub stars flutter_midi

flutter_midi

A FLutter Plugin to Play midi on iOS and Android. This uses SoundFont (.sf2) Files.

Online Demo: https://rodydavis.github.io/flutter_midi/

Installation

Download a any sound font file, example: sound_font.SF2 file.

Create an /assets folder and store the .sf2 files

Update pubspec.yaml

assets:
   - assets/sf2/Piano.SF2
   - assets/sf2/SmallTimGM6mb.sf2

Load the sound font to prepare to play;

 @override
  void initState() {
    load('assets/sf2/Piano.SF2');
    super.initState();
  }
  
 void load(String asset) async {
    FlutterMidi.unmute(); // Optionally Unmute
    ByteData _byte = await rootBundle.load(asset);
    FlutterMidi.prepare(sf2: _byte);
  }

Play and Stop the Midi Notes

 FlutterMidi.playMidiNote(midi: 60);
 FlutterMidi.playMidiNote(midi: 60, velocity: 120);

 FlutterMidi.stopMidiNote(midi: 60);
 FlutterMidi.stopMidiNote(midi: 60, velocity: 120);