Module: MusicTheory::Output
- Defined in:
- lib/music_theory/output.rb
Instance Method Summary collapse
- #buffer_format ⇒ Object
- #format ⇒ Object
- #output_track ⇒ Object
- #play ⇒ Object
- #sample_rate ⇒ Object
Instance Method Details
#buffer_format ⇒ Object
12 13 14 |
# File 'lib/music_theory/output.rb', line 12 def buffer_format WaveFile::Format.new :mono, :float, sample_rate end |
#format ⇒ Object
8 9 10 |
# File 'lib/music_theory/output.rb', line 8 def format WaveFile::Format.new :mono, :pcm_16, sample_rate end |
#output_track ⇒ Object
16 17 18 19 20 21 |
# File 'lib/music_theory/output.rb', line 16 def output_track WaveFile::Writer.new "#{output_file_name || 'music'}.wav", format do |writer| buffer = WaveFile::Buffer.new samples, buffer_format writer.write buffer end end |
#play ⇒ Object
23 24 25 26 27 |
# File 'lib/music_theory/output.rb', line 23 def play output_track unless File.file?("#{output_file_name || 'music'}.wav") `afplay #{output_file_name}.wav` nil end |
#sample_rate ⇒ Object
4 5 6 |
# File 'lib/music_theory/output.rb', line 4 def sample_rate 22050 end |