Veo31
A utility library for interacting with and processing data related to the Veo 3.1 video model. Provides convenient functions for structuring, transforming, and validating Veo 3.1 data formats.
Installation
Add veo31 to your list of dependencies in mix.exs:
elixir
def deps do
[
{:veo31, "~> 0.1.0"}] end
Then run: bash mix deps.get
Usage Examples
Here are some examples illustrating common use cases:
1. Data Validation: elixir alias Veo31.Validator
data = %{ "resolution" => "1920x1080", "frame_rate" => 30, "codec" => "h264" }
case Validator.validate_video_data(data) do {:ok, validated_data} ->
IO.puts("Data is valid: #{inspect(validated_data)}")->
IO.puts("Data is invalid: #{inspect(errors)}")end
2. Data Transformation: elixir alias Veo31.Transformer
input_data = %{ "width" => 1920, "height" => 1080, "fps" => 30 }
transformed_data = input_data |> Veo31.Transformer.normalize_keys() |> Veo31.Transformer.add_default_values()
IO.puts("Transformed data: #{inspect(transformed_data)}")
3. Generating Metadata: elixir alias Veo31.Metadata
video_path = "/path/to/video.mp4"
case Veo31.Metadata.extract_from_file(video_path) do {:ok, metadata} ->
IO.puts("Metadata: #{inspect(metadata)}")->
IO.puts("Error extracting metadata: #{reason}")end
4. Building Query Parameters: elixir alias Veo31.QueryBuilder
params = %{ "prompt" => "A cat playing piano", "duration" => 10, "style" => "cartoon" }
query_string = Veo31.QueryBuilder.build(params)
IO.puts("Query string: #{query_string}") # Output: "prompt=A%20cat%20playing%20piano&duration=10&style=cartoon"
5. Handling API Responses: elixir alias Veo31.ResponseHandler
response = %{ "status" => "success", "data" => %{
"video_url" => "https://example.com/video.mp4"} }
case Veo31.ResponseHandler.process(response) do {:ok, video_url} ->
IO.puts("Video URL: #{video_url}")->
IO.puts("Error processing response: #{reason}")end
Feature Summary
- Data Validation: Ensures data conforms to expected Veo 3.1 formats.
- Data Transformation: Normalizes data structures for consistent processing.
- Metadata Extraction: Retrieves relevant information from video files.
- Query Parameter Generation: Constructs API requests easily.
- Response Handling: Parses and processes API responses effectively.
- Error Handling: Provides informative error messages for debugging.
- Modular Design: Allows for easy extension and customization.
- Well-Documented API: Clear and concise documentation for all functions.
License
MIT
This package is part of the veo-3-1 ecosystem. For advanced features and enterprise-grade tools, visit: https://supermaker.ai/video/veo-3-1/