Sega Saturn ゲーム音楽(bgm)を抽出。
超重要な説明
Sega Saturn のゲームは、
ゲームによってオーディオの記録方式が違う場合があり、
内蔵音源のもの、CD-DA規格で記録されたもの、
大きく分けて二種類あります。
僕もあまり詳しくはありませんが、
CD-DAとは、当時主流だった、CDに音楽を記録するための規格です。
最近ではもう使われていないそう。
なので、CD-DA規格でオーディオを記録していた Sega Saturn のゲームは、ゲームディスクをCDプレーヤーに入れれば普通に再生できたりします。
そのため、bgm吸い出しも容易です。
ですが、内蔵音源のものはゲームromの奥深く(そこまで深くないw)に記録されているため、少し手間がかかります。
bgmを吸い出したいゲームがどちらの記録方式なのか、まずはCDプレーヤーに入れて確認してみましょう。
今回は内蔵音源のものを吸い出します。
事前準備(DLしておく)
・Python 2系(3系ではダメ)
作業環境はWindows10を想定しています。
準備
作業フォルダを作っておくといい(今回はデスクトップ)
C:\Users\ ユーザー名\Desktop\作業フォルダ
DLしていたものを配置します。
作業フォルダ/
├ pmdump.exe
├ bin2psf.exe
└ ssfdump.py
抽出
Sega Saturn エミュレータである「SSF」で
bgmを吸い出したいゲームを起動し、欲しいbgmを鳴らしておく。
ssfdump.pyを実行(Python 3系ではここでエラー)
py ssfdump.py
3と2を共存させている場合は、バージョンを指定して実行します。py -2.x
ssfdump.py(xは変えて)
上手くいけば作業フォルダに「.ssf」が出力される。
オーディオ変換
bgmを取り出しても「.ssf」となっています。
を使用してwavへの変換を行います。
が、
windows版はもう動きませんでした。
今回はMacで。
Audio OverloadをAppStoreからインストール
Audio Overloadを起動し、変換したい「.ssf」をAudio Overloadのウィンドウに ドラッグ&ドロップ(複数可) します。
読み込み後、再生できることを確認。
メニューバーからExportできます。
「.wav」が生成されます。
以上。
【Title Key無し】Nintendo Switch のNSPから音声(bgm)や画像を抽出。
用意
・prod.keys(本体から抽出)
(ネットに落ちてますが必ず本体から抽出しましょう。)
作業環境はWindows10を想定しています。
Title KeyをNSPから抽出
XCI-Explorerをdl&解凍
hactool をdl&解凍
解凍後
XCI-Explorer-vx.x.x > tools > hactool.exe
を
hactool-x.x.x-win > hactool.exe
と置き換えます。
XCI-Explorer-vx.x.x > XCI-Explorer.exe
を起動
左上の「Load Game」から用意していた「.nsp」を指定します。
(ロード完了後、右下にゲームのジャケット画像が出てくることを確認。)
「Mainタブ」から「Partitionsタブ」へ移動します。
「+root」のプラスを押してリストを展開。
.nca複数 + .cert + .tik
となっていることを確認。
.tik を選択し、右下の「Extract」。
保存先が聞かれるので、適当な場所を指定して保存しておきます。
XCI-Explorer は用済みですので閉じましょう。
HexEd.it にアクセス。
先ほど保存した .tik を ドラッグ&ドロップ
ロードしたら、
「00000180」の行を端から端までコピーしておきます。
例:0011AA223344BB667788990011
次に、
C:\Users\ ユーザー名
に新しく「.switch」フォルダを作成。
C:\Users\ ユーザー名\.switch
中へ入ります。
用意していた「prod.keys」を配置。
C:\Users\ ユーザー名\.switch\prod.keys
新たに「title.keys」を作成。
C:\Users\ ユーザー名\.switch\title.keys
メモ帳などで開きます。
ここで先ほどの「.tik」のファイル名
例:0100aa000bb22000000000000000000a (.tikはいらない)
と
先ほどコピーした Title Key
例:0011AA223344BB667788990011
を以下のような形式で「title.keys」へ書きます。
例:
0100aa000bb22000000000000000000a = 0011AA223344BB667788990011
(画面幅の関係で改行されているかもしれませんが、改行なしです。)
保存して閉じます。
いよいよ抽出
SwitchExplorerをdl&解凍
SwitchExplorer1.x > SwitchExplorer.exe
を起動
左上の「File」から用意していた「.nsp」を指定します。
(ロード完了後、右にゲームのジャケット画像が出てくることを確認。)
抽出したいファイル or フォルダ は右クリックで保存できます。
オーディオ変換
bgmを取り出しても「.adpcm」となっている場合があります。
その場合、
を使用してwavへの変換を行います。
vgmstreamをdl&解凍
vgmstream-win > test.exe
に変換したい「.adpcm」を ドラッグ&ドロップ(複数可) します。
「.adpcm」と同じフォルダに「.wav」が生成されます。
以上。