Expand description
Kino Core - Video Player Library for Kino
This crate provides the core functionality for video playback:
- HLS manifest parsing and segment management
- DASH MPD parsing and adaptation
- Adaptive bitrate (ABR) algorithms
- Buffer management with prefetching
- Analytics event emission
- DRM license acquisition (optional)
§Architecture
┌─────────────────────────────────────────────────────────────────┐
│ Kino Core │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Manifest │ │ Buffer │ │ ABR │ │
│ │ Parser │ │ Manager │ │ Engine │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ └─────────────────┼─────────────────┘ │
│ │ │
│ ┌──────┴──────┐ │
│ │ Player │ │
│ │ Session │ │
│ └──────┬──────┘ │
│ │ │
│ ┌──────────────┐ ┌──────┴──────┐ ┌──────────────┐ │
│ │ Analytics │ │ Event │ │ DRM │ │
│ │ Emitter │ │ Bus │ │ Manager │ │
│ └──────────────┘ └─────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────┘Re-exports§
pub use error::Error;pub use error::Result;pub use manifest::ManifestParser;pub use manifest::HlsParser;pub use manifest::DashParser;pub use buffer::BufferManager;pub use abr::AbrEngine;pub use abr::AbrAlgorithm;pub use session::PlayerSession;pub use analytics::AnalyticsEvent;pub use analytics::AnalyticsEmitter;pub use branding::KinoColors;pub use branding::KinoTheme;pub use branding::JsTheme;pub use branding::CssVariables;pub use drm::DrmConfig;pub use drm::DrmManager;pub use drm::DrmSession;pub use drm::PsshBox;pub use captions::WebVttParser;pub use captions::SrtParser;pub use types::*;
Modules§
- abr
- Adaptive Bitrate (ABR) Engine
- analytics
- Analytics event emission
- branding
- Kino Branding - Official Purple Squirrel Media color palette
- buffer
- Buffer management for video playback
- captions
- Caption parsing - WebVTT and SRT parser
- drm
- DRM - Digital Rights Management module
- error
- Error types for Kino Core
- manifest
- Manifest parsing for HLS and DASH
- session
- Player Session - Main orchestrator for playback
- types
- Core types for Kino
Constants§
- VERSION
- Library version
Functions§
- init
- Initialize the player library with default configuration