Class: RunApi::Wan::Resources::EditVideo
- Inherits:
-
Object
- Object
- RunApi::Wan::Resources::EditVideo
- Includes:
- Core::ResourceHelpers
- Defined in:
- lib/runapi/wan/resources/edit_video.rb
Overview
Modifies existing videos guided by a text prompt and optional reference image. The 2.6 models use source_video_urls (plural, required) while 2.7 uses source_video_url (singular, required). Flash variants support audio. On WAN 2.6, multi_shots controls whether the generated video uses multiple shots with transitions instead of one continuous shot.
Constant Summary collapse
- ENDPOINT =
"/api/v1/wan/edit_video"- RESPONSE_CLASS =
Types::VideoTaskResponse
- COMPLETED_RESPONSE_CLASS =
Types::CompletedVideoTaskResponse
Instance Method Summary collapse
-
#create(options: nil, **params) ⇒ RunApi::Wan::Types::VideoTaskResponse
Create a video editing task.
-
#get(id, options: nil) ⇒ RunApi::Wan::Types::VideoTaskResponse
Get video editing status by task ID.
-
#initialize(http) ⇒ EditVideo
constructor
A new instance of EditVideo.
-
#run(options: nil, **params) ⇒ RunApi::Wan::Types::CompletedVideoTaskResponse
Edit a video and wait until complete.
Constructor Details
#initialize(http) ⇒ EditVideo
Returns a new instance of EditVideo.
18 19 20 |
# File 'lib/runapi/wan/resources/edit_video.rb', line 18 def initialize(http) @http = http end |
Instance Method Details
#create(options: nil, **params) ⇒ RunApi::Wan::Types::VideoTaskResponse
Create a video editing task.
35 36 37 38 39 |
# File 'lib/runapi/wan/resources/edit_video.rb', line 35 def create(options: nil, **params) params = compact_params(params) validate_params!(params) request(:post, ENDPOINT, body: params, options: ) end |
#get(id, options: nil) ⇒ RunApi::Wan::Types::VideoTaskResponse
Get video editing status by task ID.
45 46 47 |
# File 'lib/runapi/wan/resources/edit_video.rb', line 45 def get(id, options: nil) request(:get, "#{ENDPOINT}/#{id}", options: ) end |
#run(options: nil, **params) ⇒ RunApi::Wan::Types::CompletedVideoTaskResponse
Edit a video and wait until complete.
26 27 28 29 |
# File 'lib/runapi/wan/resources/edit_video.rb', line 26 def run(options: nil, **params) task = create(options: , **params) poll_until_complete { get(task.id, options: ) } end |