DAITO MANABE / PROJECTS

SPATIAL AUDIOVISUAL DEVELOPMENT · 2026

Spatial
AV Kit2.1.0

位置から、
音色と空間をつくる。

3Dメッシュを読み、音をつくり、空間へ配置する。
MetalとSuperColliderをつなぐ、作品開発のための共通基盤です。

共同開発に参加する

macOS · Metal · SuperCollider · Swift

INTERACTIVE DEMO実行結果の録画

音源がメッシュの上を移動すると、読み取る波形と音の方向が一緒に変わります。

このページでは録画した映像と音声を再生します。音はプレーヤーのミュートを解除して確認できます。

01 / PRINCIPLE

音と映像に、
同じ位置を渡す。

見た目の動きと、音の変化を別々に作るのではなく、ひとつのシーンから両方を動かします。メッシュを読む位置が音色を決め、その音源の位置が空間内の定位にも使われます。

01

メッシュを読む

位置と読み取り経路から、波形を取り出す。

02

音色と定位をつくる

SuperColliderで合成し、同じ位置で空間化する。

03

変化を描く

Metalで形状・音源・加工音の動きを描く。

視点と、聴く位置。

カメラを動かしても、聴取位置は動きません。見るための視点と、音を聴く基準を分けて扱います。

移動する経路と、読む経路。

音源の軌道と、波形を読む経路は別のもの。位置を固定して読み取り半径を変えることもできます。

加工した音も、空間へ。

GlitchとDelayにも位置を持たせます。表示する位置と強さは、SuperColliderから受け取った情報に基づきます。

02 / EXAMPLES

小さな例から、
ひとつの作品へ。

音声環境なしで試せるところから、音と映像を一緒に動かすところまで。必要な部分だけ選んで始められます。

01MeshSampling

メッシュを波形へ

位置と読み取り半径を変えた3つの波形を、CSVで比較する最初の一歩。

Swiftのみ
02MetalOnly

映像だけを動かす

音源の移動とカメラの変化を、実際のMetal画像で確認。音声環境なしで始められます。

Swift + Metal
03AudioOnly

音声だけを組み込む

UIなしで音声エンジンを起動・停止・再起動し、2秒のWAVを生成します。

Swift + SuperCollider
04InteractiveDemo

音と映像を操作する

16秒のガイド付きデモ。位置、音色、Glitch、Delayを同じ画面で操作します。

Metal + SuperCollider
SKELETON

最小構成で始める。

17×17メッシュと音源1つ。形状、軌道、読み取り半径、音色を書き換えて、自分の作品へ育てるスケルトンです。

REFERENCE

完成例を読み解く。

65×65メッシュと3種類の地形。操作UIとGlitch / Delayを備えた例から、連携の方法を確認できます。

CREATE YOUR PROJECT

python3 tools/new-project.py ../my-piece --name "My Piece"

SDKのコピー、固有ID、確認済みのポート、初期Git commitを含む独立したプロジェクトを生成します。

03 / BUILDING BLOCKS

必要な部分を、
自分のアプリへ。

Swift Packageとして5つのライブラリを提供します。音だけ、映像だけ、あるいは共通の実行管理とUIまで。作品固有の式や音色は、作品側のコードに置けます。

  • SpatialAVCore形状・波形・座標・共通データ
  • SpatialAVAudio合成・空間処理・RT / NRT
  • SpatialAVMetal描画・MTKView・PNG出力
  • SpatialAVKit共通シーンから音と映像を動かす
  • SpatialAVUISwiftUIの操作パネル・プレーヤー
実行環境と、現在の範囲

macOS 13以降、Swift 5.9以降、Metal対応Mac。音声の実行にはSuperColliderと外部のATK HRTFカーネルが必要です。

現行は親音源1つとGlitch 1声、Delay 3声を、固定された聴取位置に対する48 kHzのHRTF 2chで出力します。実会場の多スピーカー出力や、サンプル精度のAV同期は現在の実装範囲に含みません。

04 / COLLABORATION

一緒につくる方へ。

音、空間、映像、インタラクション。
この仕組みを使った作品づくりや、ライブラリ・examplesの共同開発に参加してくださる方を募集しています。

GitHubリポジトリはprivateです。参加をご希望の方は、下記のメールアドレスへご連絡ください。

取り組んでみたいことや、関心のある領域を添えていただけると嬉しいです。

GitHubを開く(アクセス権が必要)