Class: RunApi::HappyHorse::Resources::TextToVideo
- Inherits:
-
Object
- Object
- RunApi::HappyHorse::Resources::TextToVideo
- Includes:
- Core::ResourceHelpers
- Defined in:
- lib/runapi/happyhorse/resources/text_to_video.rb
Overview
HappyHorse text-to-video resource. Generate video from a text prompt, with optional character consistency via happyhorse-character.
Constant Summary collapse
- ENDPOINT =
"/api/v1/happyhorse/text_to_video"- RESPONSE_CLASS =
Types::TextToVideoResponse
- COMPLETED_RESPONSE_CLASS =
Types::CompletedTextToVideoResponse
- REFERENCE_IMAGE_URLS_RANGE =
(1..9)
Instance Method Summary collapse
-
#create(**params) ⇒ RunApi::HappyHorse::Types::TextToVideoResponse
Create a text-to-video task.
-
#get(id) ⇒ RunApi::HappyHorse::Types::TextToVideoResponse
Get text-to-video task status by task ID.
-
#initialize(http) ⇒ TextToVideo
constructor
A new instance of TextToVideo.
-
#run(**params) ⇒ RunApi::HappyHorse::Types::CompletedTextToVideoResponse
Create a text-to-video task and wait until complete.
Constructor Details
#initialize(http) ⇒ TextToVideo
Returns a new instance of TextToVideo.
17 18 19 |
# File 'lib/runapi/happyhorse/resources/text_to_video.rb', line 17 def initialize(http) @http = http end |
Instance Method Details
#create(**params) ⇒ RunApi::HappyHorse::Types::TextToVideoResponse
Create a text-to-video task.
34 35 36 37 38 |
# File 'lib/runapi/happyhorse/resources/text_to_video.rb', line 34 def create(**params) params = compact_params(params) validate_params!(params) request(:post, ENDPOINT, body: params) end |
#get(id) ⇒ RunApi::HappyHorse::Types::TextToVideoResponse
Get text-to-video task status by task ID.
44 45 46 |
# File 'lib/runapi/happyhorse/resources/text_to_video.rb', line 44 def get(id) request(:get, "#{ENDPOINT}/#{id}") end |
#run(**params) ⇒ RunApi::HappyHorse::Types::CompletedTextToVideoResponse
Create a text-to-video task and wait until complete.
25 26 27 28 |
# File 'lib/runapi/happyhorse/resources/text_to_video.rb', line 25 def run(**params) task = create(**params) poll_until_complete { get(task.id) } end |