Skip to content

nietingbao/music

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Use Python MIDI to write songs

本项目使用python的MIDI库和pygame库实现了用计算机演奏音乐

目录结构

music.py中定义了弹奏单个音符和弹奏和弦的函数,play_midi用于演奏音乐;fsj.py和hls.py分别实现了《我是一个粉刷匠》和《欢乐颂》的片段; chord.py实现了一个非常通用的和弦旋律 CAFG,可以使用该旋律作为大部分流行歌曲的伴奏。如《传奇》,《好久不见》,《菊花台》,《感恩的心》,《听海》等。

单轨音乐

函数play_note定义了如何弹出一个音符

# note表示音高,length表示拍子的长度,base_note是do开始的音高,octachord表示跨越几个八度, velocity表示音乐击打的速度,表现为强度
play_note(note, length, track, bpm, program, base_note=60, octachord=0, velocity=64, channel=0)

和弦

函数play_chord定义了如何弹奏出一个大三和弦

# 大三和弦(全全半全全全半)
def play_chord(note, track, track1, track2, track3, bpm, program, octachord=0, base_note=60, length=1):

About

use python MIDI to write some simple music

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages