# File lib/espeak/voice.rb, line 13 def self.all voices = [] CSV.parse(espeak_voices, headers: :first_row, col_sep: ' ') do |row| voices << Voice.new(language: row[1], gender: row[2], name: row[3], file: row[4] ) end voices end
# File lib/espeak/voice.rb, line 25 def self.espeak_voices %xespeak --voices` end
# File lib/espeak/voice.rb, line 21 def self.find_by_language(lang) all.find { |v| v.language == lang.to_s } end
# File lib/espeak/voice.rb, line 6 def initialize(attributes) @language = attributes[:language] @name = attributes[:name] @gender = attributes[:gender] @file = attributes[:file] end