PythonのDemucsライブラリで音源ファイルからボーカルやベース、ドラムなどのパートを分離して保存する場合の手順を忘録的に投稿しておきます。
Demucsライブラリをコードから実行
WAV形式の音声ファイルからボーカルやドラムなどの音を抽出する際にDecumsライブラリをPythonから利用する場合は以下のようにします。
import demucs.separate
SRC_FILE = r"C:\Data\sample.wav"
SEP_DIR = r"C:\Data\"
options = [SRC_FILE, "-n", "htdemucs", "-d", "cuda", "-o", SEP_DIR]
demucs.separate.main(options)
ボーカルのみを分離する場合
[options]には様々なオプションが利用できます。
既定値では”ボーカル(vocal.wav)”、”ドラム(drums.wav)”、”ベース(bass.wav)”、”その他(other.wav)`” の4種類のファイルが出力されます。
“–two-stems” オプションを利用するとボーカルのみを分離できます。
import demucs.separate
SRC_FILE = r"C:\Data\sample.wav"
SEP_DIR = r"C:\Data\"
options = [SRC_FILE, "-n", "htdemucs", "--two-stems", "cuda", "-o", SEP_DIR]
demucs.separate.main(options)
実行すると[no_vocals.wav]、[vocals.wav]の2つのファイルが作成されます。
まとめ
今回は短い記事ですが、Pythonの Decums ライブラリでコードから音声ファイルの分離を実行する場合の手順について書きました。
PythonでDecumsライブラリを実行したい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。
