Skip to main content
View source

TwelveLabs

View as Markdown

A RocketRide video node that sends an incoming video to TwelveLabs and emits the service's generated text response.

About TwelveLabs

TwelveLabs is the video-analysis service that this node contacts. RocketRide uses it to index a submitted video temporarily and request text generated from that indexed video.

What it does

The node receives video data, collects the stream, submits the resulting temporary file for analysis, and writes the returned text to text when that lane has a listener. Pick it when a pipeline needs a hosted analysis response for a complete video, rather than local playback, transcription, or speech generation. There is no agent-tool interface.

Lanes

Lane inLane outDescription
videotextSubmit the completed video stream and emit its generated text response.

Configuration

Set the API key and add instructions only when the default description prompt is not enough. The node has one default profile, so profile selection itself does not change its behavior.

Instructions

The instruction strings are joined with newlines and sent as the analysis prompt. Leave the list empty to use Describe this video.. Add instructions when the response needs to answer a particular question or follow a particular format; use separate entries for distinct constraints so they remain readable in the configuration panel.

Authentication

Set apikey to the API key accepted by the TwelveLabs client. The key and instructions are loaded once when the pipeline starts and shared by the node's instances.

Notes

Submission lifecycle and failures

Every stream is buffered in memory, written to a temporary file when it ends, and analyzed through a new index named rocketride-<random>. The node polls the indexing task every five seconds, fails if that task reports failed, and raises TwelveLabs task timed out after 15 minutes. It attempts to delete both the temporary index and the local temporary file even when processing fails; an empty service response is emitted as No data from TwelveLabs.

Input file suffix

The local temporary-file suffix follows the input MIME type for MP4, QuickTime, AVI, WebM, Matroska, and MPEG video. Any other MIME type is written with an .mp4 suffix. This only determines the temporary filename; choose a MIME type that accurately describes the input so the upload is not mislabeled.

Upstream docs

Schema

FieldTypeDescriptionDefault
twelvelabs.apikeystringAPI Key
TwelveLabs API key.
twelvelabs.instructionsarrayInstructions
Instructions to guide TwelveLabs when analyzing the video.
twelvelabs.profilestring"default"

Dependencies

  • twelvelabs