我正在处理使用music21为现有流行歌曲制作的大量midi文件。

虽然保留了通道10用于打击乐器,但旋律音轨遍布不同的通道,因此我想知道是否存在一种有效的方法来挑选主要的旋律(人声)音轨。

我猜想这样做的一种方法是选择一个包含单个音符而不是重叠的和声(和弦)的音轨,并在整首歌曲中演奏,但是还有其他有效的方法吗?

最佳答案

根据特定文件的编码方式,您可以尝试根据每个部分的名称进行过滤。看起来像这样:

import music21
from music21 import *

piece = converter.parse("full_path_to_piece.midi")
for part in piece.parts:
  print(part[0].bestName()) # replace this print statement with a relevant if statement

关于python - music21:挑选旋律音轨,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41038457/

10-11 19:24