Sha256: 6725dd3cf8e84c7a480de3f952d216f3483067e6c972f3dadeb37f0914dc38f0

Contents?: true

Size: 725 Bytes

Versions: 11

Compression:

Stored size: 725 Bytes

Contents

#!/usr/bin/env ruby
# examples/speak.rb

$player = "afplay" # For MacOS

require_relative 'common'

def play(audio_file)
  `#{$player} #{audio_file}`
end


models = [
  'tts-1',               # OpenAI
  # 'google-tts-1',        # Google (placeholder, adjust as needed)
  # 'elevenlabs-v1'        # ElevenLabs (if supported)
]
clients = []

models.each do |model|
  clients << AiClient.new(model)
end

title "Default Configuration Text-to-Speech"

clients.each do |c|
  puts "\nModel: #{c.model}  Provider: #{c.provider}"
  text = "Text to speach example using the #{c.model} by provider #{c.provider} with the default voice."
  result = c.speak(text)
  puts "Audio generated. Tempfile: #{result.path}"
  play result.path
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
ai_client-0.4.5 examples/speak.rb
ai_client-0.4.4 examples/speak.rb
ai_client-0.4.3 examples/speak.rb
ai_client-0.4.1 examples/speak.rb
ai_client-0.4.0 examples/speak.rb
ai_client-0.3.1 examples/speak.rb
ai_client-0.3.0 examples/speak.rb
ai_client-0.2.5 examples/speak.rb
ai_client-0.2.4 examples/speak.rb
ai_client-0.2.3 examples/speak.rb
ai_client-0.2.2 examples/speak.rb