Overview - Content Management
Video Editing Overview
This guide covers all non-destructive video composition operations: trimming, clipping, multi-clip concatenation, overlays (picture-in-picture), background replacement (chroma key), caption burn-in, fade effects, dimension control, audio mixing, and waveform visualization. All operations use media.updateContent (trim in place) or media.addContent (create new entry) with operation resource types.
Base URL: $KALTURA_SERVICE_URL (default: https://www.kaltura.com/api_v3)
Auth: All requests require a valid KS (see Session Guide)
Format: Form-encoded POST, format=1 for JSON responses
When to Use
| Scenario | What to Use |
|---|---|
| Trim a video in place — shorten without changing the entry ID | media.updateContent + KalturaOperationResource with KalturaClipAttributes |
| Create a clip — extract a segment to a new entry | baseEntry.clone (exclude flavors) + media.updateContent on the clone |
| Concatenate segments — splice clips from multiple sources | media.addContent + KalturaOperationResources (plural) |
| Picture-in-picture — overlay one video on another | KalturaOverlayAttributes in mediaCompositionAttributesArray |
| Green screen removal — replace background via chroma key | KalturaReplaceBackgroundAttributes |
| Avatar on B-roll — nested overlay + background replacement | KalturaOverlayAttributes with resourceMediaCompositionAttributesArray containing KalturaReplaceBackgroundAttributes |
| Burn captions into video — permanent subtitle render | KalturaRenderCaptionAttributes in captionAttributes |
| Fade transitions — fade in/out between segments | KalturaEffect in effectArray |
| Resize / crop — change aspect ratio or resolution | KalturaDimensionsAttributes subtypes |
| Audio mixing — blend overlay audio with main video | audioAttributes on overlay/background resources |
| Waveform preview — get audio amplitude data | media.getVolumeMap / flavorAsset.getVolumeMap |
Prerequisites
- Kaltura Session (KS): ADMIN KS (type=2) with
disableentitlementprivilege. See Session Guide. - FEATURE_ENTRY_REPLACEMENT: Required for trim operations (
media.updateContent). Accounts without this feature receiveFEATURE_FORBIDDEN(one-time setup by your Kaltura account team). - Source entries in READY status (2): All editing operations require the source entry to be fully transcoded.
- Caption asset ID: For caption burn-in, you need an existing
captionAssetID (see Captions & Transcripts).