module WavTool

Public Instance Methods

ogg_to_wav(oggfile, wavfile=oggfile.sub(/\.ogg$/,'.wav')) { |oggfile| ... } click to toggle source
# File lib/v2av.rb, line 44
def ogg_to_wav(oggfile, wavfile=oggfile.sub(/\.ogg$/,'.wav'))
  
  if block_given? then
    yield(oggfile)
  else
  `oggdec #{oggfile}`
  end
  
end
wav_concat(files, save_file='audio.wav') click to toggle source
# File lib/v2av.rb, line 29
def wav_concat(files, save_file='audio.wav')
  
  Writer.new(save_file, Format.new(:stereo, :pcm_16, 22050)) do |writer|

    files.each do |file_name|

      Reader.new(file_name).each_buffer(samples_per_buffer=4096) do |buffer|
        writer.write(buffer)
      end

    end
  end
  
end
wav_silence(filename, duration: 1) click to toggle source
# File lib/v2av.rb, line 18
def wav_silence(filename, duration: 1)

  square_cycle = [0] * 100 * duration
  buffer = Buffer.new(square_cycle, Format.new(:mono, :float, 44100))

  Writer.new(filename, Format.new(:mono, :pcm_16, 22050)) do |writer|
    220.times { writer.write(buffer) }
  end

end