transloadit-media-processing
Original:🇺🇸 English
Translated
Process media files (video, audio, images, documents) using Transloadit. Use when asked to encode video to HLS/MP4, generate thumbnails, resize or watermark images, extract audio, concatenate clips, add subtitles, OCR documents, or run any media processing pipeline. Covers 86+ processing robots for file transformation at scale.
17installs
Sourcegithub/awesome-copilot
Added on
NPX Install
npx skill4agent add github/awesome-copilot transloadit-media-processingTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Transloadit Media Processing
Process, transform, and encode media files using Transloadit's cloud infrastructure.
Supports video, audio, images, and documents with 86+ specialized processing robots.
When to Use This Skill
Use this skill when you need to:
- Encode video to HLS, MP4, WebM, or other formats
- Generate thumbnails or animated GIFs from video
- Resize, crop, watermark, or optimize images
- Convert between image formats (JPEG, PNG, WebP, AVIF, HEIF)
- Extract or transcode audio (MP3, AAC, FLAC, WAV)
- Concatenate video or audio clips
- Add subtitles or overlay text on video
- OCR documents (PDF, scanned images)
- Run speech-to-text or text-to-speech
- Apply AI-based content moderation or object detection
- Build multi-step media pipelines that chain operations together
Setup
Option A: MCP Server (recommended for Copilot)
Add the Transloadit MCP server to your IDE config. This gives the agent direct access
to Transloadit tools (, , , etc.).
create_templatecreate_assemblylist_assembly_notificationsVS Code / GitHub Copilot ( or user settings):
.vscode/mcp.jsonjson
{
"servers": {
"transloadit": {
"command": "npx",
"args": ["-y", "@transloadit/mcp-server", "stdio"],
"env": {
"TRANSLOADIT_KEY": "YOUR_AUTH_KEY",
"TRANSLOADIT_SECRET": "YOUR_AUTH_SECRET"
}
}
}
}Get your API credentials at https://transloadit.com/c/-/api-credentials
Option B: CLI
If you prefer running commands directly:
bash
npx -y @transloadit/node assemblies create \
--steps '{"encoded": {"robot": "/video/encode", "use": ":original", "preset": "hls-1080p"}}' \
--wait \
--input ./my-video.mp4Core Workflows
Encode Video to HLS (Adaptive Streaming)
json
{
"steps": {
"encoded": {
"robot": "/video/encode",
"use": ":original",
"preset": "hls-1080p"
}
}
}Generate Thumbnails from Video
json
{
"steps": {
"thumbnails": {
"robot": "/video/thumbs",
"use": ":original",
"count": 8,
"width": 320,
"height": 240
}
}
}Resize and Watermark Images
json
{
"steps": {
"resized": {
"robot": "/image/resize",
"use": ":original",
"width": 1200,
"height": 800,
"resize_strategy": "fit"
},
"watermarked": {
"robot": "/image/resize",
"use": "resized",
"watermark_url": "https://example.com/logo.png",
"watermark_position": "bottom-right",
"watermark_size": "15%"
}
}
}OCR a Document
json
{
"steps": {
"recognized": {
"robot": "/document/ocr",
"use": ":original",
"provider": "aws",
"format": "text"
}
}
}Concatenate Audio Clips
json
{
"steps": {
"imported": {
"robot": "/http/import",
"url": ["https://example.com/clip1.mp3", "https://example.com/clip2.mp3"]
},
"concatenated": {
"robot": "/audio/concat",
"use": "imported",
"preset": "mp3"
}
}
}Multi-Step Pipelines
Steps can be chained using the field. Each step references a previous step's output:
"use"json
{
"steps": {
"resized": {
"robot": "/image/resize",
"use": ":original",
"width": 1920
},
"optimized": {
"robot": "/image/optimize",
"use": "resized"
},
"exported": {
"robot": "/s3/store",
"use": "optimized",
"bucket": "my-bucket",
"path": "processed/${file.name}"
}
}
}Key Concepts
- Assembly: A single processing job. Created via (MCP) or
create_assembly(CLI).assemblies create - Template: A reusable set of steps stored on Transloadit. Created via (MCP) or
create_template(CLI).templates create - Robot: A processing unit (e.g., ,
/video/encode). See full list at https://transloadit.com/docs/transcoding//image/resize - Steps: JSON object defining the pipeline. Each key is a step name, each value configures a robot.
- : Refers to the uploaded input file.
:original
Tips
- Use with the CLI to block until processing completes.
--wait - Use values (e.g.,
preset,"hls-1080p","mp3") for common format targets instead of specifying every parameter."webp" - Chain to build multi-step pipelines without intermediate downloads.
"use": "step_name" - For batch processing, use to pull files from URLs, S3, GCS, Azure, FTP, or Dropbox.
/http/import - Templates can include for dynamic values passed at assembly creation time.
${variables}