Brock "the Perl guy" W. will school us in using our system and some Ruby to make some noise.
Joel Strait will present Beats Drum Machine, a command line drum machine written in Ruby (beatsdrummachine.com).
Join or login to comment.
Brock and Joel's projects were mentioned on Ruby5 http://ruby5.envylabs.com/episodes/281-episode-277-june-1st-2012 and here's the discussion I mentioned about a developer losing a contract over his code https://gist.github.com/2838490
0 · June 1, 2012
Last night I mentioned you had everything you needed to do FM synthesis, the technique behind the Yamaha synthesizers of the 1980's (like the infamous DX7).
Here's an example of that, with cliffnotes for values that generate different harmonic overtones. This is the tip of the iceberg! with 2 sine waves and a couple of envelopes I generate something that has a 'glass piano/violin' kind of sound and play a major scale on it.
0 · May 31, 2012
The future blog post I mentioned during the talk about scripting MacVim to allow it to interact with Beats is up:
Sweet, I'm glad to hear you got it working!
You might look at the perl version for some other ideas... one thing I did was a "note" and "song segment" generator which would take more traditional notation. For example - https://github.com/awwaiid/perl-noise/blob/master/eg/mary.pl
Also try the thing I just pushed up to github, a "formula" generator which is totally insane.
I love the intertubes. I had a couple spare minutes so I googled on "portaudio installed with homebrew" and found this issue:
with this patched installer:
brew install https://raw.github.com/beniamino38/homebrew/1c82e9166b96d0a68e440c584854d74c3782325c/Library/Formula/portaudio.rb
everything is working now & I'm making some fun noise. If I can figure out a way to suck the data out of my DX7, I'll try to get the sound patches to work.
I've had fun poking around and I have exactly the same problem on 5 versions of ruby on my early 2009 MBP running[masked], regardless of the sample rate or frame size.
1.8.7-p358 1.9.2-p290 1.9.3-p125 jruby-1.6.6 ree[masked]
I've also tried installing portaudio with both LLVM and GCC, but no dice. I'm pretty convinced its something about my portaudio install via homebrew at this point.
Serious musical hacking
Try turning the sample rate down reaaalllllyyyy low. And also try relatively small buffer size in addition to large. I had to fiddle to find one that didn't skip. Unfortunately when I said that we can waste all of this high-level processing on this sound generation and get away with it... well actually it seems we can just _barely_ get away with it.
I haven't tried this on any machine besides my debian laptop. Though really all the hardware is made by Intel in any case :)
Brock, do you know if ruby-noise works on OSX 10.7? I installed portaudio with homebrew, got everything else it needed (the submodule from your github repo and ffi), and have it making noise with Ruby 1.9.3, but it isn't the noise I expect. it seems to start playing each buffer as it fills, but then clips it . I think thats the behavior I'm seeing, since if I make the buffer bigger the silence between the clipped bits grows longer...
For the NoiseGen talk, see http://thelackthereof.org/NoiseGen or http://github.com/awwaiid/ruby-noise for code/slides. Also, slides are at http://www.slideshare.net/awwaiid/noisegen-rug2012
0 · May 30, 2012
Next: Invite friends
This group was created to share knowledge about Ruby and educate anyone interested.
Application performance monitoring
Get the ebook by Jim Gay about Ruby, OOP, and DCI
Discounts on print and ebooks.
Or sign up with email
Already a member? Log in.
Meetup members, Log in