銀月の符号

Python 使い見習いの日記・雑記

現在進行中、おーぷんMIDIぷろじぇくと、 MIDIData の Python ラッパー作成2

くずさんのおーぷんMIDIプロジェクト 、 MIDIDataライブラリの Python ラッパー作成中。現在、mididata.MIDIData, miditrack.MIDITrack, midievent.MIDIEventクラスの作成が終わり、以下のコードが動くようになったところ。これからテストコードの作成の予定。

from mididata import mididata

def main():
    # MIDIデータをスタンダードMIDIファイル(*.mid)から読み込む
    data = mididata.MIDIData.load_from_SMF('chocho.mid')
    # MIDIデータのプロパティを出力する
    print u'[MIDIデータ]'
    print u'フォーマット=%d' % data.format
    print u'トラック数=%d' % data.num_track
    print u'タイムモード=%d' % data.time_mode
    print u'タイムレゾリューション=%d' % data.time_resolution
    print u'タイトル=%s' % data.title


    # それぞれのトラックについて
    for track in data.iter_tracks():
        print u'[MIDIトラック]'
        print u'小節:拍:ティック 種類              長さ  内容'
        # それぞれのイベントについて
        for event in track.iter_events():
            print event.to_string()

if __name__ == '__main__':
    main()