四分之一时长小于 0.25 的 Music21 音符?

Posted

技术标签:

【中文标题】四分之一时长小于 0.25 的 Music21 音符?【英文标题】:Music21 Notes with quarter duration less than 0.25? 【发布时间】:2020-10-23 12:19:30 【问题描述】:

我想使用 Music21 读取一个 midi 文件(来自here 的肖邦练习曲作品 25 No.2),然后重新创建它。当我从文件中读取笔记时,所有短于第 16 个笔记的笔记都“向上取整”,当我使用 note.quarterLength 时,它返回 0.25。我做错了什么还是 Music21 的限制?

这是我读取文件的方式:

for file in glob.glob(midi_folder + '/*.mid'):
    midi = converter.parse(file)

    midi_notes = None

    try:
        instruments = instrument.partitionByInstrument(midi)
        for inst in instruments:
            if inst.partName == 'Piano':
                midi_notes = inst.recurse()
                break          
    except:
        midi_notes = midi.flat.notes
        
    for element in midi_notes:
        # do stuff with the note ...

【问题讨论】:

【参考方案1】:

MIDI 文件默认被量化。您可以阅读converter.parse 的量化参数——包括如何配置或关闭量化——在:http://web.mit.edu/music21/doc/moduleReference/moduleConverter.html?highlight=converter%20parse#music21.converter.parse

【讨论】:

最好在此处发布答案的症结,而不是可能会过时的外部链接。

以上是关于四分之一时长小于 0.25 的 Music21 音符?的主要内容,如果未能解决你的问题,请参考以下文章

四分之一波长传输线

music21 :给定 midi 输入,输出正确拼写的音高和八度数

BLE MIDIMIDI 文件格式分析 ( FF 03 轨道名称 | FF 51 03 四分音符时长 )

BLE MIDIMIDI 文件格式分析 ( FF 03 轨道名称 | FF 51 03 四分音符时长 )

问一个简单的乐理知识

四分位数计算方法