WebGLとWebGPUでグラフィック、スプライト、テキストを描画する高速なWeb向け2Dレンダリングライブラリ。
- スター
- 1,972
- フォーク
- 171
- 未解決の Issue
- 24
- 最終コミット
- 6 か月前
これは何?
Butterchurnは、Milkdropの音楽ビジュアライザーをWebGLで再実装したJavaScriptライブラリです。Milkdrop風のビジュアルを、最新のWebブラウザで動かせます。Web Audio APIから音声を受け取り、アニメーションフレームをHTML canvasに描画します。
開発者はcanvasとAudioContextを使ってビジュアライザーを作成し、音源またはマイクからのAudioNodeを接続して、プリセットを読み込みます。プリセットは指定した秒数をかけて切り替えられ、レンダラーのサイズは実行中に変更できます。関連パッケージのbutterchurn-presetsには、すぐに使えるプリセットが収録されています。
WebGL 2が必要なため、現在のブラウザが対応しているかを確認する小さなヘルパーも用意されています。Webampをはじめ、いくつかの音楽プレーヤーやアプリに導入されています。
主な機能
- 01ブラウザ上でWebGLを使ってMilkdropのプリセットを描画します。
- 02Web Audio API経由で音声を入力します。
- 03設定可能な時間をかけてプリセットを切り替えます。
- 04実行中にレンダラーのサイズを変更できます。
- 05プリセット集を別パッケージとして提供します。
- 06WebGL 2への対応状況を確認するヘルパーを備えています。
ユースケース
- Web音楽プレーヤーに音楽ビジュアライザーを追加する。
- Webページやブラウザ拡張機能からの音声を可視化する。
- ブラウザ上でライブ音楽やカラオケの画面を作成する。
- WebアプリでMilkdropのプリセットを試す。
クイックスタート
- 1
npmでパッケージをインストールする
npm install butterchurn butterchurn-presets - 2
AudioContextに接続したcanvas上にビジュアライザーを作成する
- 3
プリセットを読み込み、フレームをレンダリングする
使う前に知っておきたいこと
- WebGL 2に対応したブラウザーが必要です。
トピック
よくある質問
- butterchurn とは?
- Web Audio APIを使い、Milkdropのプリセットをブラウザで描画するWebGL製ビジュアライザー。 Butterchurnは、Milkdropの音楽ビジュアライザーをWebGLで再実装したJavaScriptライブラリです。Milkdrop風のビジュアルを、最新のWebブラウザで動かせます。Web Audio APIから音声を受け取り、アニメーションフレームをHTML canvasに描画します。
- butterchurn は無料で使えますか?ライセンスは?
- butterchurn は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- butterchurn は今もメンテナンスされていますか?
- 半年以上コミットなし。butterchurn の最終コミットは 2026年4月20日 です。
- butterchurn は何に使えますか?
- Web音楽プレーヤーに音楽ビジュアライザーを追加する。 Webページやブラウザ拡張機能からの音声を可視化する。 ブラウザ上でライブ音楽やカラオケの画面を作成する。 WebアプリでMilkdropのプリセットを試す。
- butterchurn のインストール方法は?
- npmでパッケージをインストールする: npm install butterchurn butterchurn-presets AudioContextに接続したcanvas上にビジュアライザーを作成する プリセットを読み込み、フレームをレンダリングする
- butterchurn はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/jberg/butterchurn
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
技術的なアイデアを説明する、実在の機械やシステムのインタラクティブなアイソメトリックSVG図解を作るClaudeエージェントスキル。
GPU.jsはシンプルなJavaScript関数をGPUシェーダーコードに変換し、ブラウザやNode.jsでGPU上で実行します。GPUが使えない場合は通常のJavaScriptにフォールバックします。
JSコードをSVGフローチャートに変換する、抽象化レベルやブロック修飾子、テーマに対応したライブラリとCLI。
実行時依存なしでMermaidの図表テキストをSVGに変換する、小型の同期レンダラー。
家具の配置や壁の編集、2Dでの採寸ができ、Three.jsの3Dシーンで間取りを確認できるフロントエンド専用ツール。