Class: GoogleSpeech::Chunk

Inherits:
Object
  • Object
show all
Defined in:
lib/google_speech/chunk.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(original_file, original_duration, start_time, duration) ⇒ Chunk

Returns a new instance of Chunk.



10
11
12
13
14
15
16
17
18
# File 'lib/google_speech/chunk.rb', line 10

def initialize(original_file, original_duration, start_time, duration)
  @original_file = original_file
  @original_duration = original_duration
  @start_time = start_time
  @duration = [duration, (@original_duration - @start_time)].min
  @chunk_file = Tempfile.new([File.basename(@original_file), '.flac'])
  # puts "@chunk_file: #{@chunk_file.path}"
  Utility.trim_to_flac(@original_file.path, @duration, @chunk_file.path, @start_time, @duration)
end

Instance Attribute Details

#chunk_fileObject

Returns the value of attribute chunk_file.



8
9
10
# File 'lib/google_speech/chunk.rb', line 8

def chunk_file
  @chunk_file
end

#durationObject

Returns the value of attribute duration.



8
9
10
# File 'lib/google_speech/chunk.rb', line 8

def duration
  @duration
end

#original_durationObject

Returns the value of attribute original_duration.



8
9
10
# File 'lib/google_speech/chunk.rb', line 8

def original_duration
  @original_duration
end

#original_fileObject

Returns the value of attribute original_file.



8
9
10
# File 'lib/google_speech/chunk.rb', line 8

def original_file
  @original_file
end

#start_timeObject

Returns the value of attribute start_time.



8
9
10
# File 'lib/google_speech/chunk.rb', line 8

def start_time
  @start_time
end

Instance Method Details

#dataObject



27
28
29
# File 'lib/google_speech/chunk.rb', line 27

def data
  @data ||= @chunk_file.read
end

#loggerObject



31
32
33
# File 'lib/google_speech/chunk.rb', line 31

def logger
  GoogleSpeech.logger        
end

#to_hashObject



20
21
22
23
24
25
# File 'lib/google_speech/chunk.rb', line 20

def to_hash
  {
    :start_time => @start_time,
    :end_time => @start_time + @duration
  }
end