zoukankan      html  css  js  c++  java
  • 不得不承认pretty-midi很好用,以及一些简单的上手

    官方文档在此:

    http://craffel.github.io/pretty-midi/

    首先我们演示如何将midi文件转变为piano-roll格式(matrix)。

    现在我们手中有了一个数据集,假设我们就用The Lakh数据集,我使用了里面的Bach BMV 988作为测试midi。现在我们这么写代码:

    midi_data = pretty_midi.PrettyMIDI('bmv988.mid')

    这样我们就得到了一个pretty.midi对象。接下来我们单刀直入,分离音轨。

    midi_data.instruments

    这里可以查看所有乐器,我们这个midi文件是单音轨,只有钢琴A。我们可以通过列表操作选定指定的音轨。

    接下来使用

    get_piano_roll()
    

     方法进行操作:

    好了,现在我们可以为所欲为了!

    接下来我们将矩阵转换成piano-roll,使用以下方法:

    import scipy.misc
    scipy.misc.imsave('outfile.jpg', image_array)

    下面是效果图:

  • 相关阅读:
    P4168 [Violet]蒲公英
    P3320 [SDOI2015]寻宝游戏
    P2487 [SDOI2011]拦截导弹
    P3338 [ZJOI2014]力(FFT)
    P1975 [国家集训队]排队
    P4103 [HEOI2014]大工程
    虚树小结
    LVS初步
    常见指针定义解读
    可epoll队列
  • 原文地址:https://www.cnblogs.com/ldzhangyx/p/7789939.html
Copyright © 2011-2022 走看看