音源カットの方法

1. 導入

osu! や Malody などで譜面を作る際、ゲーム尺程度の長さの音源が欲しいのにどこにも転がっていない… ということがあります

https://www.youtube.com/watch?v=KfZR9jVP6tw

たとえば "びしょパイ" は、少なくとも2023年10月現在商用音ゲーにも収録されたことがないため、この楽曲で譜面を作るとなるとフル尺を使うしか方法がありません

でも編集ソフトでカットしてもなんかちょっとズレますし、たまたまちゃんとカットできたとしてもうまくいくまで何回もやり直すのが面倒です

https://www.youtube.com/watch?v=VNjhvj8DHsU

しかし、そのような手間をかけることなくきれいに音源カットができる方法があるので、それを紹介したいと思います

2. 下準備

まず、MalodyWavePad をインストールします

https://m.mugzone.net/wiki/126

https://www.nch.com.au/wavepad/jp/index.html?ref=googleads&ref2=Cj0KCQjw4vKpBhCZARIsAOKHoWTbUqXW-kowNOxJ68CQr8ImzJOW7fc2zFjWFDg-xtVrgMqLRPYIFmIaAkXZEALw_wcB&ref3=wave%20%E7%B7%A8%E9%9B%86&refdate=1698510217

本来 Malody でちゃんと遊ぶにはユーザー登録が必要ですが、今回は登録しなくてもOKです

また、WavePad はプロ版を購入する必要はありません(クソ高い上にそこまで高尚な機能は必要ありません)

音源は YouTube からダウンロードしてくるなり、CDから抜くなりしてください

YouTubeダウンローダ の使用方法に関する説明は省略します(自分で調べてください)

3. カット方法

3.1 カットする領域を調べる

https://www.youtube.com/watch?v=cp8UEv8i0lc

今回は例として "いつかオトナになれるといいね。" を使います(音源はYouTube より、y2mate を使って DL)。

音源の DL が完了したら、Malody を起動して画面左上の Import を選択します(図1)

Create New Chart から DL した音源を選択し、ogg形式にコンバートされるのを待ちます

その後、 Use this song to create new chart? <曲名> と尋ねられるので、OK します。作成する譜面のモードを尋ねられますが、基本的にどれでもOKです

筆者は taiko プレイヤーなので、 taiko を選択します

エディタ画面に遷移すると、自動でオフセットとBPMが測定されます
Uncertainty(不確実性、どれだけテンポが揺れているか)が 0 以外の曲は音源カット以前にテンポ測定が難しいので諦めましょう

OK を押して、右側に表示されているタブの上から5番目のアイコン(四角の中に水平な3本線)をクリックし、その後上から2番目のアイコン(CD)をクリックします

表示された情報をスクロールしていくと、 Offset という項目があります
この値は後で使いますので、覚えるなり控えるなりしてください

そうしたら、次にカットする領域を決めます
今回は次のようにカットします

歌詞: ペラペラな言葉に踊らされ… ~ ギターソロ
つべでの時間: 0:56 ~ 2:08 ぐらい
曲のパーツ: 1番サビ ~ 間奏

つまり、本来 1番のサビが来るはずの場所にいきなりラスサビを持ってきて、そのまま楽曲を終了させます

元の音源(動画)が 2:54 なので、だいたい2分弱まで短縮されます

カットする場所を決めたら、Malody でその場所を探します
画面左側がシークバーになっていて、さらにマウスホイールでも細かくシークできます

ペラペラな言葉に踊らされ… の の部分(つまりカット開始部分)は、56.079秒 にあることがわかります

この値にさっきのオフセット値に $${10^{-3}}$$ を掛けた値を足すと WavePad に入力すべき秒数になります

$${56.079 + 293 \cdot 10^{-6} = 56.372}$$ より、56.372秒 です

同様にカット終了地点を調べると 128.352秒 なので 同様に計算して$${128.352 + 293 \cdot 10^{-6} = 128.645}$$ …と思うかもしれませんが、これは誤りです

図5 がその例です
終了地点の秒数を -0.001 しないと、カット終了後の 0.001秒分もカットしてしまうことになります(カットが必要なのは128.644999…秒までであって、128.645秒はカットしてはいけない部分)

というわけで、-0.001 して 終了地点の秒数は 128.644秒 になります

3.2 実際にカットする

WavePad を起動し、 Ctrl+O して 音源のファイルを開きます

画面下部の 図6 の部分をクリックし、"先頭" にカット開始時間を、"末尾" に終了時間を入力します

Ctrl+X して、カットします

つなぎ目の部分を聴いて自然なことを確認したら、Ctrl+S して保存します

このようにして、音源カットができるわけです

4. 結論・注意

音源カットは便利な一方で、作曲者の「こういう曲の編成がベストだな…」という考えを捻じ曲げることにもなります

また、変なカットをすると曲の進行に違和感が出ます
↓カスな音源カットの例 

https://www.youtube.com/watch?v=NpOR2QwvjPk

加えて、いくら正確とはいえ何度もカットを繰り返すとms単位のズレが生じることがあります

詳しい説明は省きますが、この方法を使っても1回のカットで数~数百μs(=$${数10^{-6}s~数10^{-4}s}$$)のズレが発生します

この程度のズレなら無視できますが、さすがにms単位となると無視できません Ranked や Stable を目指す場合に障害となります

それらの注意をふまえた上で音源カットを行えば、使える楽曲の幅も増えてより自由にマッピングができるようになるでしょう

いいなと思ったら応援しよう!