簡體   English   中英

為Kivy在Python中播放跨平台,移動,MIDI - 這可能嗎?

[英]Playing cross-platform, mobile, MIDI in Python for Kivy - is this possible?

我想在Kivy中加載和播放'.mid'MIDI文件,但主要是在移動平台(即IOS和Android)上

我假設,我不想深入了解基於原生C / C ++的東西的復雜性(即避免必須交叉編譯,我不是經驗豐富的Python開發人員),所以庫很可能,需要是純Python。

我將使用我發現的一些框架開始競標(一些需要C / C ++),我沒有使用過(0,零),也許有人可以提供一些反饋(或者它們可能對更廣泛的社區有用) :

順便說一下,如果/ MIDI庫也可以從'.mid'文件中讀取歌詞,那將會很棒

Python Midi庫

http://web.mit.edu/music21
https://github.com/cuthbertLab/music21
https://code.google.com/p/midiutil < - 純Python,沒有歌詞(?)
https://code.google.com/p/mingus
http://mxm.dk/products/public/pythonmidi
http://das.nasophon.de/mididings
https://github.com/vishnubob/python-midi https://gist.github.com/anonymous/202595 < - smidi.py
http://webcache.googleusercontent.com/search?q=cache%3Alarndham.net%2Fservice%2Fpys60%2Fsmidi.py
https://pypi.python.org/pypi/midi < - Al for Al(!)
http://www.fluidsynth.org < - 對於pypi midi http://sourceforge.net/p/fluidsynth < - 基於C

我正在使用Fluidsynth給我跨平台的MIDI輸出。 它使用SoundFont模塊播放MIDI文件,以獲得高質量的音頻。 如果您對LGPL許可證感到滿意,可以從pyFluidSynth( https://code.google.com/p/pyfluidsynth )獲取Python綁定,但使用標准Python ctypes編寫自己的綁定模塊非常簡單模塊。

通常,您需要從提供的源代碼編譯(並因此交叉編譯)Fluidsynth,但是您可以從另一個項目中獲取預編譯版本,例如MuseScore。 這就是我現在正在做的事情,我將切換到編譯Fluidsynth一次(如果)我正在進行的項目接近完成。

如果你想處理MIDI文件,例如提取歌詞,請看看Mido( https://mido.readthedocs.org/en/latest )。 我發現它對於讀/寫MIDI文件非常有用。

暫無
暫無

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

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