Quick Start
Local Processing
Section titled “Local Processing”import { MediaPipelineSDK } from "mediapipeline-sdk";
async function main() { const sdk = new MediaPipelineSDK( { storage: { type: "local", baseDir: "./output", }, }, ["1080", "720", "480"], );
const result = await sdk.processLocal("./samples/input.mp4");
console.log(result.variants[0].path);}
main().catch(console.error);The generated output will be written into a per-run UUID folder under your configured baseDir.
Cloudinary Processing
Section titled “Cloudinary Processing”import { MediaPipelineSDK } from "mediapipeline-sdk";
async function main() { const sdk = new MediaPipelineSDK( { storage: { type: "cloudinary", baseDir: "./output", credentials: { cloudName: "your-cloud-name", apiKey: "your-api-key", apiSecret: "your-api-secret", }, }, }, ["720", "480", "360"], );
const masterUrl = await sdk.processCloudinary("./samples/input.mp4");
console.log(masterUrl);}
main().catch(console.error);S3 Processing
Section titled “S3 Processing”import { MediaPipelineSDK } from "mediapipeline-sdk";
async function main() { const sdk = new MediaPipelineSDK( { storage: { type: "s3", baseDir: "./output", credentials: { accessKeyId: "your-access-key-id", secretAccessKey: "your-secret-access-key", region: "your-region", bucket: "your-bucket", folderName: "mediapipeline", }, }, }, ["720", "480", "360"], );
const playbackUrl = await sdk.processS3("./samples/input.mp4");
console.log(playbackUrl);}
main().catch(console.error);What You Get Back
Section titled “What You Get Back”processLocal()returns aProcessResultand an internal output directory used during the run.processCloudinary()returns thesecure_urlformaster.m3u8only.processS3()returns a signed playback URL forsigned/master.m3u8.
Resolution Selection
Section titled “Resolution Selection”Pass a string array of output levels when constructing the SDK:
["1080", "720", "480", "360"];If you pass an empty array, the SDK defaults to "720".