gpt4 book ai didi

python - 如何使用 Music21 检索钢琴曲的左手和右手

转载 作者:太空宇宙 更新时间:2023-11-03 20:46:22 24 4
gpt4 key购买 nike

我正在尝试检索带有两个五线谱的钢琴曲的右手和左手音符以进行音乐分析,但我在实现这一目标时遇到了很多困难。

我正在使用 Music21 来执行此操作。在他们的文档中,似乎零件类对应于人员,因此我认为获取流对象的零件对象将检索左手(零件对象)和右手(零件对象)。

curr_stream = converter.parse(str(file))
parts = curr_stream.getElementsByClass(stream.Part)
left_hand = parts[0]
right_hand = parts[1]

由于这首歌有两个五线谱,我希望有两个部分,但对于一些有两个五线谱的歌曲来说,情况并非如此。有些歌曲显然有两个五线谱,但在流对象中只有一个部分。

最佳答案

一切都取决于 str(file) 是什么。对于使用一个 musicxml 声部和多个五线谱进行正确编码的 MusicXML 文件,music21 将创建两个 PartStaff 对象。 PartStaff 是stream.Part 的子类,因此您的代码可以工作(就像curr_stream.parts 一样)。例如,请参见 corpus.parse('cpebach')。但那里有很多编码错误的钢琴曲。

关于python - 如何使用 Music21 检索钢琴曲的左手和右手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56572720/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com