簡體   English   中英

如何使用 python 根據音高拆分 midi 文件?

[英]How to split midi file based on notes pitch using python?

如何使用 python 根據音高拆分 midi 文件? 我試過 music21 圖書館,但我真的不知道它是如何工作的......

試試這個代碼:

import pretty_midi
import copy

pitch_cutoff = 65

mid = pretty_midi.PrettyMIDI('my_file.mid')
low_notes = copy.deepcopy(mid)
high_notes = copy.deepcopy(mid)

for instrument in low_notes.instruments:
    for note in instrument.notes:
        if note.pitch > pitch_cutoff:
            note.velocity = 0

for instrument in high_notes.instruments:
    for note in instrument.notes:
        if note.pitch < pitch_cutoff:
            note.velocity = 0

low_notes.write("low_notes.mid")
high_notes.write("high_notes.mid")

它使用pretty_midi模塊將 midi 文件拆分為兩個不同的文件。 名為“high_notes.mid”的文件只會有高於您設置的pitch_cutoff變量的音符,而“low_notes.mid”只會有低於它的音符。 只需將“my_file.mid”更改為您文件的任何名稱並嘗試一下。 如果您有任何問題,請告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM