Skip to main content

Overview

This tutorial demonstrates how to:
  • Upload and process videos using Cloudinary integration
  • Extract and analyze video content
  • Add overlays and transformations
  • Process video subtitles and speaker information

Task Structure

Let’s break down the task into its core components:

1. Input Schema

First, we define what inputs our task expects:
This schema specifies that our task expects:
  • A video file URL
  • A public ID for the video
  • A transformation prompt describing desired changes
  • VTT subtitle content (optional)

2. Tools Configuration

Next, we define the external tools our task will use:
We’re using three main integrations:
  • Cloudinary for video uploads and transformations
  • FFmpeg for additional video processing capabilities

3. Main Workflow Steps

1

Initial Video Upload

The steps[0].input variable refers to the initial input object passed to the task. It’s used to access the input parameters defined in the input schema.
This step:
  • Takes the input video URL
  • Uploads it to Cloudinary
  • Specifies the resource type as video
2

Create Video Preview

This step:
  • Creates a 30-second preview of the video
  • Useful for quick analysis and processing
3

Analyze Video Content

This step:
  • Analyzes the video content
  • Identifies speakers and their positions
  • Uses VTT subtitles for additional context
4

Generate Speaker Transformations

This step:
  • Creates transformations for each speaker
  • Adds speaker labels with proper positioning
  • Sets timing for each overlay
5

Apply Transformations

This step:
  • Uses the Cloudinary upload tool to apply the generated transformations
  • Processes the video with speaker labels and positioning
  • Returns a URL to the transformed video with all overlays applied
YAML

Usage

Here’s how to use this task with the Julep SDK:

Example Output

This is an example output when the task is run over the sample video input.

Next Steps