---
title: Overview
url: https://docs.kaltura.com/docs/embeddable-kaltura-products/kaltura-player/player-embed-overview
---

## Player Embedding & Control

Embed Kaltura's PlayKit player in web applications using iframe or dynamic JavaScript. Both methods support KS-based access control, clipping, autoplay, and full programmatic control via the player API.

**Base URL:** `https://cdnapisec.kaltura.com/p/\{PARTNER_ID\}/embedPlaykitJs/uiconf_id/\{PLAYER_ID\}` (may differ by region)
**Auth:** Optional KS for access-controlled content (see [Session Guide](/docs/getting-started/authentication/ks-overview))
**Format:** HTML embed (iframe) or JavaScript SDK (PlayKit)

### When to Use

- **Website and app video playback** — Embed adaptive video and audio playback in websites, web apps, and mobile web views using iframe or JavaScript integration.
- **Branded player customization** — Configure player appearance (watermarks, custom CSS, UI component toggles) and behavior (autoplay, looping, stream priority) to match your application's branding.
- **Interactive video delivery** — Enable in-player experiences such as chapter navigation, dual-screen slides, in-video quizzes, hotspots, and transcript search through the 30+ plugin ecosystem.
- **Access-controlled content** — Deliver protected video content using KS-based authentication, entry-scoped sessions, privacy contexts, and IP tokenization for CDN-protected delivery.
- **Programmatic player control** — Build custom playback workflows with play/pause/seek APIs, event listeners for progress tracking, and runtime plugin control for dynamic layout switching.

### Prerequisites

- **KS (Kaltura Session):** Optional for public content. For access-controlled entries, generate a USER KS (type=0) scoped with `sview:ENTRY_ID` on your server and pass it to the player. For IP-tokenized delivery, include `iprestrict:VIEWER_IP`.
- **Player instance (uiConfId):** A player configuration created in the KMC under Studio > TV Platform or Studio > Player. The `uiConfId` determines which plugins are available and the default player settings.
- **Partner ID:** Your Kaltura account ID, used to construct the player library URL and authenticate API requests.
- **Session management:** See [Session Guide](/docs/getting-started/authentication/ks-overview) for KS generation and privilege scoping.

### Embed Type Comparison

- **Iframe embed** – Simplest drop-in, ideal for quick embedding where the host page manages layout only. Works well for sites that restrict JavaScript to first-party code. Control the configuration passed to the player by adding query string params.
- **Dynamic JS (PlayKit)** – recommended when you need **runtime config**, **start time**, **programmatic control**, or richer integrations.
