2016-08-14 20 views
3

"컴퓨터로 음악 만들기 : Python의 창의적인 프로그래밍"이라는 책을 읽기 시작한 지 2 주 정도 지났습니다. 이제는이 라이브러리로 드럼 사운드를 재생하려고 할 때가 닥쳤습니다. 나는 Mit의 music21 라이브러리를 사용하고 있는데, 책에서 제안한 라이브러리가 나를 위해 작동하지 않기 때문입니다 (간단히 "음악"이라고 함). 이 책은베이스 드럼 사운드를 재생하기 위해 사용하는 코드 예제입니다Python Music21 라이브러리의 드럼 사운드 연주

from music import * 
drumPart = Part("Drums", 0, 9) 
note = Note(ACOUSTIC_BASS_DRUM, QN) # a bass drum strike 
drumPhrase = Phrase() 
drumPhrase.addNote(note) 
drumPart.addPhrase(drumPhrase) 
Play.midi(drumPart) 

내가 하이 햇 소리와 함께 music21에 동일한 작업을 수행하기 위해 시도했지만 소리가 재생되지 않습니다 : 어떤 조언을

import music21 
from music21 import note, stream, pitch, duration, instrument, tempo, chord 
from music21.note import Note, Rest 
from music21.chord import Chord 
from music21 import midi 

def createInstrument(instrument, midiChannel): 
    i = instrument 
    i.midiChannel = midiChannel 
    return i 

n = Note("A2", type='quarter') 

drumPart = stream.Part() 
drumPart.insert(createInstrument(instrument.HiHatCymbal(), 9)) 

drumMeasure = stream.Measure() 
drumMeasure.append(n) 
drumPart.append(drumMeasure) 
drumPart.show('midi') 

정말 도움이 될 것입니다. 웹 페이지 이외의 웹에 관한 정보가 거의 없기 때문입니다.

미리 감사드립니다. Julián!

+0

어디에서 코드에서'Play' 메서드를 호출합니까? – fdsa

+0

라이브러리가 작동하지 않으면 MIDI 출력 장치에 문제가있을 수 있습니다. –

+0

재생 방법은 마지막 줄입니다 ** drumPart.show ('midi') ** – Julian

답변

0

안녕하세요 줄리안 저는 사소한 변화로 내 Mac에서 작동 시켰습니다. 도움이되기를 바랍니다. 기본적으로 코드 한 줄만 바꿔서 이제는 Mac에서 작동합니다. 내가 작동한다고 말하면, 정확히 mid 파일을 만들고 있지만 열지 못했습니다.

오픈에 실패한 이유는 기본 플레이어 (내 경우에는 QuickTime)가 중간 파일을 실행할 수 없었기 때문입니다. MuseScore (무료)을 설치하고 mid 파일의 기본 프로그램으로 설정하면 모든 것이 원활하게 작동합니다.

from music21 import stream, instrument 
from music21.note import Note 

n = Note("A2", type='quarter') 

drumPart = stream.Part() 
drumPart.insert(0, instrument.Woodblock()) 

drumMeasure = stream.Measure() 
drumMeasure.append(n) 
drumPart.append(drumMeasure) 

# This line actually generate the midi on my mac but there is no relevant software to read it and the opening fail 
drumPart.show('midi')