← ラボノート

最初のエンジン音は8ビット風でした

Seat Timeは、私たちAI Maker LabがAIコーディングエージェントと作るブラウザー運転シムです。エンジン音は、音量とループの継ぎ目のテストに合格していました。それでも本番環境で聴くと、「とても人工的で、8ビットのような音」だったのです。

欲しかったのは、車らしい音でした。2026年10月2日、ミックスの修正に続いて音の素材そのものを変えました。その日のうちに、録音したエンジン音が標準になりました。

前回:「シム品質」を目指してタイヤを作り直す。

シンセを変える前に測りました

最初のエンジン音は合成音でした。そこへターボの笛音とブローオフ音を重ねていました。交換に入る前に、エージェントに再現性のある音声テスト環境を作ってもらいました。2回の実行差は最大でも0.00002 dBです。変更の差を、テスト自体の揺れと混同せずに済みました。

測定では、直すべき不具合が見つかりました。Tempestのミックスは+0.6 dBTPでクリッピングしていました。デジタルのフルスケールを超えるトゥルーピーク値です。高回転を維持した状態では、1–8 kHz帯のターボ音がエンジンのトーンを3.8 dB上回っていました。リミッターの動作も描画フレームレートに左右されていました。車の音が、画面の更新速度に依存していたのです。

エージェントは原因を分けて修正しました。ミキサーのレベル、ターボのバランス、タイヤ音の切り替え閾値、リミッターの時計です。ブローオフ音には5 msの立ち上がりを設けました。リミッターは音声クロックで動かし、余裕を確保するレベル調整を−5.7 dBにしました。標準設定の音量は約5–7 dB下がりました。

測定でクリッピングとターボによるマスキングを発見。原因別の修正で標準ミックスは約5–7 dB小さくなりました。
測定は実際の不具合を捉えました。立ち上がり時間とレベルの余裕は、私たちが選んだ設定です。

修正には意味がありました。ただ、ミックスの不具合を除いても「エンジンらしく聞こえるか」は残ります。ITU-R BS.1770が扱うトゥルーピーク測定では、その聴感までは判断できません。

最初のサンプルの正体は同じシンセでした

最初のサンプル再生は、再生方法だけを変えていました。使いたい録音はSonnissのゲーム音声バンドルにありました。しかし取得時には、公式トレントへのアクセスが拒否されました。そこでエージェントは、私たちのシンセを音声ファイルへ書き出し、音源バンクを作りました。

そのバンクにも修正が必要でした。音のパワーを維持するための等パワークロスフェードで、境界に1.22 dBの落ち込みが出ました。エージェントは、位相を保つ線形ブレンドへ切り替えました。この段階では、標準のエンジン音はまだ手続き的な合成音でした。

本番環境での私たちの感想は、「とても人工的で、8ビットのような音」でした。元は固定の倍音構成を持つPeriodicWaveのままだったからです。MDNのPeriodicWave解説では、発振器の出力を形作る周期波形と説明されています。私たちの実装は、同じ倍音の組み合わせを繰り返していました。ファイルに保存しても、実車録音の質感にはなりませんでした。

取得できず、私たちがファイルを渡しました

実車の録音を入手して、ようやくバンクの中身が変わりました。エージェントの次の取得も、ゲートウェイのタイムアウトと容量制限で失敗しました。その日のうちに、私たちが公式バンドルの9分割ファイルをローカルで渡しました。地味ですが、作業を先へ進めた受け渡しでした。

エージェントは車載録音を切り出し、76の区間を持つ7つのバンクを作りました。全17台をそこへ割り当て、録音再生を標準にしました。これは2026年10月2日の構成です。その後のすべての改訂を表す数ではありません。

手続き的な合成音から同じシンセの書き出しを経て、車載録音へ移行。7バンク、76区間で17台をカバーしました。
決定的だったのは素材の変更です。シンセをファイルにしても、音の性格は変わりませんでした。

バンク作りでは、使える回転域を探す必要がありました。ゲーム外で動く音高追跡ツールが、自己相関で波形の繰り返しを調べます。続いてViterbi法で一貫した音高の経路を選び、オクターブ単位の誤検出を除きました。目標回転数の±2%以内の区間を探し、燃焼周期が整数個入る1–2 sのループを作りました。

実録音のブレンドには、別の問題が出ました。線形でも等パワーでも、区間の間に2–6 dBの落ち込みが残りました。そこでエージェントは、共分散で正規化する4ボイスのクロスフェードを採用しました。重なる信号が一緒にどう変動するかを使い、混ぜ方を調整します。シンセの書き出しとは違う解決策が必要でした。

人工のターボ音を止めました

今度は合成ターボが、録音の邪魔になっていました。音のレイヤーを分けた比較では、笛音とブローオフ音が高域のマスキング成分を8–13 dB増やしていました。録音バンクの上では、両方を無効にしました。足した音が、ようやく手に入れた素材を隠していたのです。

この方向転換は同じ日のうちに起きました。最初の音声修正の統合から録音エンジンへの変更まで、約16.4時間でした。開発履歴上の経過時間であり、エージェントによる工数削減の測定ではありません。

ライセンスの記録も音に添えました

手に入れたのは使用権であって、元録音の所有権ではありません。各区間を元の録音と提供元へたどれるよう、出所を記録しました。提供元にはPole Position Productionも含まれます。その記録はゲームの音声とともに保管しています。

Sonnissのバンドルライセンスは、完成した作品内での編集とロイヤルティーフリーの利用を認めています。一方、音響素材そのものとしての配布は禁止されています。明示的な許可なく人工知能技術の開発、学習、改善へ使うことも禁止されています。著作権は各権利者に残ります。再生機能をコーディングエージェントで作っても、元録音が私たちの作品になるわけではありません。

この記事には比較音声を埋め込んでいません。この記録に使える当時のクリップやスペクトログラムが保存されておらず、クリップ利用のライセンス判断も未解決だからです。図は記録値の説明です。当時の聴取証拠を再現したものではありません。

タイヤと車内の風は、その後でした

後の作業では、タイヤの擦れ、路面、接触音、車内の風を録音素材へ広げました。持続するスキール音には難しさがありました。約2 kHzの録音された音が耳に刺さるため、持続ループをやめました。短いスキール音は、その作業に残りました。それ以前の風は合成音です。車内に録音した風を導入した後も、車外の風は意図的に合成音のままにしました。

その後のパッケージには、Stable Audioで生成した雨も含まれていました。Meta SAM-Audioでクリーニングしたスキール音もあります。生成物の利用条件とモデルのライセンス確認は、記録上では未解決です。ここでは作業内容として紹介し、公開利用の確認が済んだ素材とは扱いません。

Geminiによる自動の聴取評価もありました。ただし、モデルの意見は私たちの受け入れ確認ではありません。後のパッケージには「実際の走行ではまだ聴いていない」と明記されていました。実装だけでなく、この聴取の未完了も残しておきます。

次の制約は元の録音でした

この記事の対象ビルドでは、エンジンのモデルは録音バンクに固定されています。シンセは代替用に残っていますが、利用者が両者を切り替える設定はありません。素材が変わり、取り組む問題も変わりました。全車が正しく聞こえると確認できたわけではありません。

Seat Timeで好きな車を選び、Settings → Soundを標準設定のまま走ってみてください。

次に考えたのは、走りたくなる場所です:走る場所を作る。

注記と出典

私たちの測定 — 保存された開発記録に、再現性、クリッピング、ターボのバランス、音量低下、クロスフェードの落ち込み、高域の比較があります。当時のテスト結果であり、新しい聴取試験や第三者認証ではありません。図はその記録を説明しています。

設計上の選択 — ブローオフの立ち上がり、レベルの余裕、音高の選択幅、ループ長、4ボイスのブレンドは実装上の設定です。バンク数、区間数、車両数は2026年10月2日の録音エンジン導入時点を示します。経過時間は、その日の統合時刻に基づきます。

私たちの聴感と解釈 — 「とても人工的で、8ビットのような音」は、本番環境で残した“very artificial and 8-bit like”という感想の訳です。周期的な素材が原因という説明は、実装に対する私たちの解釈です。車種やコースは記録されていないため、場面を補っていません。AIコーディングエージェントが測定環境と加工ツールを作りました。この記事の執筆にもAIを使用しています。

公開資料とクレジット — MDN:PeriodicWaveはブラウザーの波形インターフェースを説明しています。ITU-R BS.1770はラウドネスとトゥルーピークのアルゴリズムを扱います。EBU R 128には関連する音量と最大レベルの指針があります。いずれも用語の参考であり、ゲームの認証ではありません。Sonnissのアーカイブとライセンスは素材集と許可される用途の資料です。Pole Position Productionを録音提供元として記載しています。名称は製品や権利者の識別用であり、推奨や提携を示しません。

未完了の確認 — 後のタイヤ、路面、車内風のパッケージは、AIモデルの評価まででした。私たちが実走で受け入れ確認した記録はありません。生成した雨とAI処理したスキール音のライセンス確認も未解決です。ここでは音声素材をダウンロード提供していません。

あわせて読む