CLI 메트로놈을 만들어봤습니다.

litdream의 이미지

오랜만에 글 올려봅니다.
간단한 메트로놈을 한번 만들어 봤습니다. 그냥 타이밍 계산해서, wav 화일 만드는걸로 끝냈는데, lame 등을 써서 mp3 로 변환하면 훨씬 작은 사이즈로 비트화일을 만들수 있고요.. 플레이는 일반 mpg123 정도면 족하지 않나 싶습니다.

사용법은
$ python metronome.py [sample_file] [speed in bpm] [duration in sec]

가령,
$ python metronome.py s3.wav 120 15

이러면, 15초 짜리 a.wav 화일을 만듭니다. a.wav 에는 metronome 120 bpm 비트가 들어있고요.
안타깝게 리눅스에서만 되네요.

화일 첨부했습니다.

블로그: http://litdream.blogspot.com/2011/05/metronome-for-linux-in-python.html

File attachments: 
첨부파일 크기
파일 metronome2.tgz10.67 KB
익명 사용자의 이미지

설마 윈도우즈에서는 binary 모드로 write해야 되는 문제 아니겠죠?

그리고 제 기억으로는 자바스크립트로 wav파일 만들어주는 라이브러리가 있을겁니다.
구글링해보니 그건 안나오고 이런게 나오네요... http://www.sk89q.com/playground/jswav/
http://www.sk89q.com/2008/11/dynamically-generating-a-wav-in-javascript/

litdream의 이미지

헉.. binary 모드가 정답이었네요.
처음에 'wb' 모드만 썼다가 여전히 안되서, 이상하다 했더니, 읽기도 'rb' 로 했어야 했네요.
좋은 지적 감사합니다. 포스팅 업데이트 할께요.

삽질의 대마왕...