Python
MIDI
music
magenta
pretty_midi

MIDIの演奏楽器を変更する

More than 1 year has passed since last update.


はじめに

TensorFlow製の音楽生成プロジェクト「Magenta」をいじっています。

参考:サカナクションさんをTensorFlow製アート・音楽生成プロジェクト「Magenta」に学習させてみる。

その過程で、MIDIファイルの演奏楽器を変換したいと思い、pretty_midiを用いて変更してみます。

なお、環境はPython2.7、MIDIファイルはlogic Xでみたりしています。


コード例


sample.py

import pretty_midi

# 変更したいファイルの読み込み
midi_data = pretty_midi.PrettyMIDI('piano.mid')

# 楽器の確認
midi_data.instruments[0].program

# 結果
# [Instrument(program=0, is_drum=False, name="hoge")]

# program(楽器番号)を変更
midi_data.instruments[0].program = 30

# 楽器の確認
midi_data.instruments

# 結果
# [Instrument(program=30, is_drum=False, name="hoge")]

# ファイルの書き出し
midi_data.write('guitar.mid')



おわりに

簡単に楽器の変更ができました。

ありがとうございました。