class Zappa::RiffHeader

Attributes

chunk_id[R]
chunk_size[RW]
format[R]

Public Class Methods

new(file = nil) click to toggle source
# File lib/zappa/wave/riff_header.rb, line 6
def initialize(file = nil)
  if file.nil?
    @chunk_id = 'RIFF'
    @chunk_size = 40
    @format = 'WAVE'
  else
    unpack(file)
  end
end

Public Instance Methods

pack() click to toggle source
# File lib/zappa/wave/riff_header.rb, line 16
def pack
  @chunk_id + [@chunk_size].pack('V') + @format
end
unpack(file) click to toggle source
# File lib/zappa/wave/riff_header.rb, line 20
def unpack(file)
  @chunk_id = file.read(4)
  @chunk_size = file.read(4).unpack('V').first
  @format = file.read(4)
  fail 'ID is not RIFF' unless @chunk_id == 'RIFF'
  fail 'Format is not WAVE' unless @format == 'WAVE'
end