Ruby bindings for PortAudio
* Also wraps Pa_WriteStream with error handling to trap underflows. * Demonstrate use of suggested_output_latency in example.
|lib||Add support for suggested latency.|
|Gemfile||Add Gemfile and Gemfile.lock|
|Gemfile.lock||Add Gemfile and Gemfile.lock|
|LICENSE||Added PortAudio Ruby bindings|
|README||Implemented the PortAudio blocking api, along with a supporting Sampl…|
= PortAudio Author:: Jeremy Voorhis Copyright:: Copyright (c) 2009 Jeremy Voorhis License:: BSD 3-clause (see LICENSE) This package contains Ruby bindings to the PortAudio api. PortAudio is a cross- platform interface to your audio hardware. The ruby-portaudio package supports both PortAudio apis: blocking and non-blocking. The blocking API allows Ruby scripts to iteratively fill a sample buffer which is then written to the audio hardware (later versions will also support reading from a buffer). The non-blocking api allows Ruby programs to act as controllers for audio streams defined by an external callback function. Because the callback function may be run in an interrupt, it is not really feasible to implement one in Ruby. You can, however, write your callback function in a C extension, or you may build your own using LLVM or LibJIT as in http://github.com/jvoorhis/Motivik. See the bottom of lib/portaudio.rb for an example. == Requirements * PortAudio, version 1.9 or better * Fairly complete support for Ruby's foreign function interface