WORKS
Prototype

audio-selector

ゲーム開発で使用するBGMや効果音を効率よく探すためのAI支援ツール

Web
UtilityOpen SourceWeb Tool

作品紹介

audio-selector

AIを活用して、ゲームに合うBGM・効果音を効率よく探すための音声素材選定ツール。

概要

audio-selectorは、ゲーム開発で使用するBGMや効果音を効率よく探すためのAI支援ツールです。

欲しい音のイメージを文章で指定すると、AIが複数の音声素材から条件に合った候補を検索・ランキングします。ライセンスや出典情報を確認しながら試聴でき、最終的な採用判断は開発者自身が行います。

ゲーム『LayerTrace』の音声素材選定を効率化するために開発しました。

特徴・見どころ

  • 文章から音声を検索: 「明るく短い決定音」など、自然言語で欲しい音の特徴を指定できる。
  • ゲーム用途に応じたランキング: BGM、UI操作音、移動音など、用途に合わせた候補の評価に対応。
  • 複数の音声素材を管理: 異なる配布元の素材を、出典情報とともに一元管理できる。
  • ライセンス情報の検証: 利用条件や証拠情報を確認し、条件を満たさない素材を候補から除外する。
  • 試聴・選定機能: 推薦された音声をブラウザ上で再生し、採用候補・保留・却下などの判断を記録できる。

使い方

  1. 音声素材と出典・ライセンス情報を登録する。
  2. 探している音の特徴やゲーム内での用途を入力する。
  3. AIが素材を検索し、関連度や用途に応じてランキングする。
  4. 候補を試聴し、採用する素材を選ぶ。
  5. 選定結果をエクスポートして管理する。

配布・利用について

GitHubで一般公開しています。

現在はPythonを使用したローカル実行型のプロトタイプで、利用には対応するPython環境と依存ライブラリのセットアップが必要です。

ソースコードや実行方法はGitHubリポジトリで確認できます。


技術・開発

使用技術

  • 開発環境: Python 3.11、Windows
  • プログラミング言語: Python、JavaScript、HTML、CSS
  • 音声・テキスト理解: LAION CLAP、Hugging Face Transformers
  • ベクトル検索: Qdrant
  • ランキング: コサイン類似度、MMR、pyversity
  • データ処理・評価: NumPy、Pydantic、SoundFile、scikit-learn

設計・実装の工夫

既存技術を活用した音声検索

音声検索モデルを一から開発するのではなく、既存のCLAPモデルとQdrantを組み合わせる設計を採用しました。

音声とテキストを共通の特徴空間で比較することで、自然言語による音声検索を実現しています。

ゲーム向けの独自ランキング

意味的な類似度に加えて、音声の長さ、ゲーム内での用途、メタデータなどを考慮したランキング処理を実装しました。

また、似た音ばかりが候補に並ぶことを防ぐため、MMRによる多様性制御も検証しています。

出典・ライセンス管理

素材ごとに配布元、作者、利用条件などの情報を管理しています。

SHA-256によるファイルの整合性確認と、登録されたライセンス証拠に基づく利用可能性チェックを実装しました。

人間による最終判断

AIが自動的に音声素材の採用を決定するのではなく、候補の絞り込みと試聴を支援する設計としています。

開発者による選定結果を保存できるため、判断の記録と再確認が可能です。

評価・検証

13種類の音声素材と12種類の検索要求を用いて、計156件の人間による関連性評価を実施しました。

初期評価では、用途別ランキングによって上位3件のRecallが45.62%から48.96%に改善しました。

一方、多様性制御の導入によって検索精度が低下するケースも確認されました。

これらは小規模な評価データでの結果であり、実際の素材選定時間の短縮効果や、より大規模な素材集に対する性能は今後の検証課題です。

ソースコード・技術記事


ニュース・実績

更新履歴

  • 2026-09-30: 人間による156件の関連性評価を記録。
  • 2026-10-01: 用途別ランキングと多様性制御の評価結果を記録。

制作の裏話

ゲーム『LayerTrace』の開発中、多数のBGMや効果音の中から適切な素材を探す作業を効率化したいと考えたことが、制作のきっかけです。

音声検索には既存の機械学習モデルを活用し、ゲーム開発に特化したランキングやライセンス管理、試聴・選定機能を組み合わせました。

LayerTraceでの利用を想定しながらも、ほかのゲーム開発にも再利用できるよう、独立したツールとして開発しています。