Overview
Purpose
The Video Trim Manager provides a platform-level capability for trim selection, validation, playback-boundary sync, and undo/reset behavior.
It exists to keep trim behavior deterministic and UI-agnostic:
- Trim behavior is owned by the manager
- React is a consumer via hooks
- Screen rendering is a consumer via module components
ℹ️ Note
If trim logic needs to be duplicated in UI components, the boundary has already failed.
What This Capability Is
- A core internal capability under
src/lib/internal - A behavior engine for start/end range editing
- A contract-driven integration point for different players
- A source of truth for trim state and validation
What This Capability Is Not
Video Trim Manager is not:
- A React hook
- A UI component
- A backend orchestration service
- A timeline renderer
It does not own layout, form rendering, or transport integration.
Layer Model
Player
↓
Contract
↓
Manager
↓
Hooks
↓
Module
Read Order
- Architecture
- Core Concepts
- Lifecycle
- Player Contract
- Manager API
- Hooks
- Integration Guide
- Testing Philosophy
- Ownership and Invariants
- Future
Related Decision
- ADR-028: Video Trimmer Architecture