elevenlabs_client 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +108 -0
- data/README.md +85 -4
- data/lib/elevenlabs_client/client.rb +35 -6
- data/lib/elevenlabs_client/endpoints/admin/history.rb +106 -0
- data/lib/elevenlabs_client/endpoints/admin/models.rb +27 -0
- data/lib/elevenlabs_client/endpoints/admin/usage.rb +46 -0
- data/lib/elevenlabs_client/endpoints/admin/user.rb +28 -0
- data/lib/elevenlabs_client/endpoints/admin/voice_library.rb +86 -0
- data/lib/elevenlabs_client/endpoints/sound_generation.rb +0 -1
- data/lib/elevenlabs_client/endpoints/speech_to_text.rb +13 -0
- data/lib/elevenlabs_client/endpoints/text_to_dialogue.rb +34 -1
- data/lib/elevenlabs_client/endpoints/text_to_speech.rb +147 -1
- data/lib/elevenlabs_client/endpoints/text_to_voice.rb +13 -1
- data/lib/elevenlabs_client/endpoints/voices.rb +23 -24
- data/lib/elevenlabs_client/version.rb +1 -1
- data/lib/elevenlabs_client.rb +5 -5
- metadata +21 -7
- data/lib/elevenlabs_client/endpoints/models.rb +0 -26
- data/lib/elevenlabs_client/endpoints/text_to_dialogue_stream.rb +0 -50
- data/lib/elevenlabs_client/endpoints/text_to_speech_stream.rb +0 -43
- data/lib/elevenlabs_client/endpoints/text_to_speech_stream_with_timestamps.rb +0 -75
- data/lib/elevenlabs_client/endpoints/text_to_speech_with_timestamps.rb +0 -73
@@ -1,73 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module ElevenlabsClient
|
4
|
-
class TextToSpeechWithTimestamps
|
5
|
-
def initialize(client)
|
6
|
-
@client = client
|
7
|
-
end
|
8
|
-
|
9
|
-
# POST /v1/text-to-speech/{voice_id}/with-timestamps
|
10
|
-
# Generate speech from text with precise character-level timing information
|
11
|
-
# Documentation: https://elevenlabs.io/docs/api-reference/text-to-speech/with-timestamps
|
12
|
-
#
|
13
|
-
# @param voice_id [String] Voice ID to be used
|
14
|
-
# @param text [String] The text that will get converted into speech
|
15
|
-
# @param options [Hash] Optional TTS parameters
|
16
|
-
# @option options [String] :model_id Model identifier (defaults to "eleven_multilingual_v2")
|
17
|
-
# @option options [String] :language_code ISO 639-1 language code for text normalization
|
18
|
-
# @option options [Hash] :voice_settings Voice settings overriding stored settings
|
19
|
-
# @option options [Array<Hash>] :pronunciation_dictionary_locators Pronunciation dictionary locators (max 3)
|
20
|
-
# @option options [Integer] :seed Deterministic sampling seed (0-4294967295)
|
21
|
-
# @option options [String] :previous_text Text that came before current request
|
22
|
-
# @option options [String] :next_text Text that comes after current request
|
23
|
-
# @option options [Array<String>] :previous_request_ids Request IDs of previous samples (max 3)
|
24
|
-
# @option options [Array<String>] :next_request_ids Request IDs of next samples (max 3)
|
25
|
-
# @option options [String] :apply_text_normalization Text normalization mode ("auto", "on", "off")
|
26
|
-
# @option options [Boolean] :apply_language_text_normalization Language text normalization
|
27
|
-
# @option options [Boolean] :use_pvc_as_ivc Use IVC version instead of PVC (deprecated)
|
28
|
-
# @option options [Boolean] :enable_logging Enable logging (defaults to true)
|
29
|
-
# @option options [Integer] :optimize_streaming_latency Latency optimizations (0-4, deprecated)
|
30
|
-
# @option options [String] :output_format Output format (defaults to "mp3_44100_128")
|
31
|
-
# @return [Hash] Response containing audio_base64, alignment, and normalized_alignment
|
32
|
-
def generate(voice_id, text, **options)
|
33
|
-
# Build query parameters
|
34
|
-
query_params = {}
|
35
|
-
query_params[:enable_logging] = options[:enable_logging] unless options[:enable_logging].nil?
|
36
|
-
query_params[:optimize_streaming_latency] = options[:optimize_streaming_latency] if options[:optimize_streaming_latency]
|
37
|
-
query_params[:output_format] = options[:output_format] if options[:output_format]
|
38
|
-
|
39
|
-
# Build endpoint with query parameters
|
40
|
-
endpoint = "/v1/text-to-speech/#{voice_id}/with-timestamps"
|
41
|
-
if query_params.any?
|
42
|
-
query_string = query_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
43
|
-
endpoint += "?#{query_string}"
|
44
|
-
end
|
45
|
-
|
46
|
-
# Build request body
|
47
|
-
request_body = { text: text }
|
48
|
-
|
49
|
-
# Add optional body parameters
|
50
|
-
request_body[:model_id] = options[:model_id] if options[:model_id]
|
51
|
-
request_body[:language_code] = options[:language_code] if options[:language_code]
|
52
|
-
request_body[:voice_settings] = options[:voice_settings] if options[:voice_settings]
|
53
|
-
request_body[:pronunciation_dictionary_locators] = options[:pronunciation_dictionary_locators] if options[:pronunciation_dictionary_locators]
|
54
|
-
request_body[:seed] = options[:seed] if options[:seed]
|
55
|
-
request_body[:previous_text] = options[:previous_text] if options[:previous_text]
|
56
|
-
request_body[:next_text] = options[:next_text] if options[:next_text]
|
57
|
-
request_body[:previous_request_ids] = options[:previous_request_ids] if options[:previous_request_ids]
|
58
|
-
request_body[:next_request_ids] = options[:next_request_ids] if options[:next_request_ids]
|
59
|
-
request_body[:apply_text_normalization] = options[:apply_text_normalization] if options[:apply_text_normalization]
|
60
|
-
request_body[:apply_language_text_normalization] = options[:apply_language_text_normalization] unless options[:apply_language_text_normalization].nil?
|
61
|
-
request_body[:use_pvc_as_ivc] = options[:use_pvc_as_ivc] unless options[:use_pvc_as_ivc].nil?
|
62
|
-
|
63
|
-
@client.post(endpoint, request_body)
|
64
|
-
end
|
65
|
-
|
66
|
-
# Alias for backward compatibility
|
67
|
-
alias_method :text_to_speech_with_timestamps, :generate
|
68
|
-
|
69
|
-
private
|
70
|
-
|
71
|
-
attr_reader :client
|
72
|
-
end
|
73
|
-
end
|