Move remaining block docs to block-integrations/ subdirectory: - Delete old docs from docs/integrations/ root - Add new docs under docs/integrations/block-integrations/ - Add guides/ directory with LLM and voice provider docs - Update SUMMARY.md with correct navigation structure Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
4.3 KiB
Multimedia
Blocks for processing and manipulating video and audio files.
Add Audio To Video
What it is
Block to attach an audio file to a video file using moviepy.
How it works
This block combines a video file with an audio file using the moviepy library. The audio track is attached to the video, optionally with volume adjustment via the volume parameter (1.0 = original volume).
Input files can be URLs, data URIs, or local paths. The output can be returned as either a file path or base64 data URI.
Inputs
| Input | Description | Type | Required |
|---|---|---|---|
| video_in | Video input (URL, data URI, or local path). | str (file) | Yes |
| audio_in | Audio input (URL, data URI, or local path). | str (file) | Yes |
| volume | Volume scale for the newly attached audio track (1.0 = original). | float | No |
| output_return_type | Return the final output as a relative path or base64 data URI. | "file_path" | "data_uri" | No |
Outputs
| Output | Description | Type |
|---|---|---|
| error | Error message if the operation failed | str |
| video_out | Final video (with attached audio), as a path or data URI. | str (file) |
Possible use case
Add Voiceover: Combine generated voiceover audio with video content for narrated videos.
Background Music: Add music tracks to silent videos or replace existing audio.
Audio Replacement: Swap the audio track of a video for localization or accessibility.
Loop Video
What it is
Block to loop a video to a given duration or number of repeats.
How it works
This block extends a video by repeating it to reach a target duration or number of loops. Set duration to specify the total length in seconds, or use n_loops to repeat the video a specific number of times.
The looped video is seamlessly concatenated and can be output as a file path or base64 data URI.
Inputs
| Input | Description | Type | Required |
|---|---|---|---|
| video_in | The input video (can be a URL, data URI, or local path). | str (file) | Yes |
| duration | Target duration (in seconds) to loop the video to. If omitted, defaults to no looping. | float | No |
| n_loops | Number of times to repeat the video. If omitted, defaults to 1 (no repeat). | int | No |
| output_return_type | How to return the output video. Either a relative path or base64 data URI. | "file_path" | "data_uri" | No |
Outputs
| Output | Description | Type |
|---|---|---|
| error | Error message if the operation failed | str |
| video_out | Looped video returned either as a relative path or a data URI. | str |
Possible use case
Background Videos: Loop short clips to match the duration of longer audio or content.
GIF-Like Content: Create seamlessly looping video content for social media.
Filler Content: Extend short video clips to meet minimum duration requirements.
Media Duration
What it is
Block to get the duration of a media file.
How it works
This block analyzes a media file and returns its duration in seconds. Set is_video to true for video files or false for audio files to ensure proper parsing.
The input can be a URL, data URI, or local file path. The duration is returned as a float for precise timing calculations.
Inputs
| Input | Description | Type | Required |
|---|---|---|---|
| media_in | Media input (URL, data URI, or local path). | str (file) | Yes |
| is_video | Whether the media is a video (True) or audio (False). | bool | No |
Outputs
| Output | Description | Type |
|---|---|---|
| error | Error message if the operation failed | str |
| duration | Duration of the media file (in seconds). | float |
Possible use case
Video Processing Prep: Get video duration before deciding how to loop, trim, or synchronize it.
Audio Matching: Determine audio length to generate matching-length video content.
Content Validation: Verify that uploaded media meets duration requirements.