Cloudinary Uploads
Requirements
Section titled “Requirements”storage.typemust becloudinary.storage.baseDirmust still be set because HLS output is created locally before upload.storage.credentialsmust includecloudName,apiKey, andapiSecret.
Returned Value
Section titled “Returned Value”processCloudinary() returns a single URL string for the uploaded master.m3u8 file.
const masterUrl = await sdk.processCloudinary("./input.mp4");Cloudinary Folder Structure
Section titled “Cloudinary Folder Structure”Every run uploads into the following path structure:
mediapipeline/<videoId>/<filename>Example:
mediapipeline/7450677b-c0bf-4053-bfc5-b29d92f37171/master.m3u8mediapipeline/7450677b-c0bf-4053-bfc5-b29d92f37171/variant_720p.m3u8mediapipeline/7450677b-c0bf-4053-bfc5-b29d92f37171/segment_240p_001.tsUpload Behavior
Section titled “Upload Behavior”- Resource type:
raw - Timeout per file:
120000ms - Max concurrent uploads per batch:
4 - Retry attempts:
3 - Exponential backoff:
1000,2000,4000ms
Retryable Failures
Section titled “Retryable Failures”The upload helper retries when Cloudinary responds with:
429499- Any
5xxstatus code TimeoutError
Cleanup Behavior
Section titled “Cleanup Behavior”The SDK attempts to remove the temporary local HLS output directory after a successful Cloudinary upload when cleanup is enabled.