メッシュを波形へ
位置と読み取り半径を変えた3つの波形を、CSVで比較する最初の一歩。
SPATIAL AUDIOVISUAL DEVELOPMENT · 2026
3Dメッシュを読み、音をつくり、空間へ配置する。
MetalとSuperColliderをつなぐ、作品開発のための共通基盤です。
macOS · Metal · SuperCollider · Swift
音源がメッシュの上を移動すると、読み取る波形と音の方向が一緒に変わります。
短く切り出した音が、元の音源のまわりへ飛び出します。ピンクの形が加工音の位置を示します。
3つの遅延音が過去の位置をたどりながら展開します。紫の輪と軌跡が、その動きを示します。
音源と加工音がひとつの空間に重なります。表示の強さには、実際の音声から測った値を使います。
このページでは録画した映像と音声を再生します。音はプレーヤーのミュートを解除して確認できます。
見た目の動きと、音の変化を別々に作るのではなく、ひとつのシーンから両方を動かします。メッシュを読む位置が音色を決め、その音源の位置が空間内の定位にも使われます。
位置と読み取り経路から、波形を取り出す。
SuperColliderで合成し、同じ位置で空間化する。
Metalで形状・音源・加工音の動きを描く。
カメラを動かしても、聴取位置は動きません。見るための視点と、音を聴く基準を分けて扱います。
音源の軌道と、波形を読む経路は別のもの。位置を固定して読み取り半径を変えることもできます。
GlitchとDelayにも位置を持たせます。表示する位置と強さは、SuperColliderから受け取った情報に基づきます。
音声環境なしで試せるところから、音と映像を一緒に動かすところまで。必要な部分だけ選んで始められます。
位置と読み取り半径を変えた3つの波形を、CSVで比較する最初の一歩。
音源の移動とカメラの変化を、実際のMetal画像で確認。音声環境なしで始められます。
UIなしで音声エンジンを起動・停止・再起動し、2秒のWAVを生成します。
16秒のガイド付きデモ。位置、音色、Glitch、Delayを同じ画面で操作します。
17×17メッシュと音源1つ。形状、軌道、読み取り半径、音色を書き換えて、自分の作品へ育てるスケルトンです。
65×65メッシュと3種類の地形。操作UIとGlitch / Delayを備えた例から、連携の方法を確認できます。
CREATE YOUR PROJECT
python3 tools/new-project.py ../my-piece --name "My Piece"SDKのコピー、固有ID、確認済みのポート、初期Git commitを含む独立したプロジェクトを生成します。
Swift Packageとして5つのライブラリを提供します。音だけ、映像だけ、あるいは共通の実行管理とUIまで。作品固有の式や音色は、作品側のコードに置けます。
SpatialAVCore形状・波形・座標・共通データSpatialAVAudio合成・空間処理・RT / NRTSpatialAVMetal描画・MTKView・PNG出力SpatialAVKit共通シーンから音と映像を動かすSpatialAVUISwiftUIの操作パネル・プレーヤーmacOS 13以降、Swift 5.9以降、Metal対応Mac。音声の実行にはSuperColliderと外部のATK HRTFカーネルが必要です。
現行は親音源1つとGlitch 1声、Delay 3声を、固定された聴取位置に対する48 kHzのHRTF 2chで出力します。実会場の多スピーカー出力や、サンプル精度のAV同期は現在の実装範囲に含みません。
音、空間、映像、インタラクション。
この仕組みを使った作品づくりや、ライブラリ・examplesの共同開発に参加してくださる方を募集しています。
GitHubリポジトリはprivateです。参加をご希望の方は、下記のメールアドレスへご連絡ください。
daito.manabe@gmail.com取り組んでみたいことや、関心のある領域を添えていただけると嬉しいです。
GitHubを開く(アクセス権が必要)