AppKask’s media pipeline processes every upload through a type-specific processing chain — all behind a single unified upload endpoint.
When you upload a video with HLS transcoding enabled, it goes through an 8-stage pipeline:
Quality selection is automatic: if your source is 720p, AppKask only creates 720p, 480p, and 360p variants. No upscaling.
Images are auto-converted to WebP format (~30% smaller than JPEG). Originals can be preserved on request. SVGs are stored as-is with Content Security Policy headers to prevent embedded script attacks.
PDFs get first-page thumbnails via Ghostscript. Markdown files are editable in-browser with live preview. BPMN diagrams open in an interactive modeler.
During transcoding, the frontend connects via WebSocket to /api/media/{slug}/progress/ws. The backend reports stage, percentage, ETA, and current quality level every 500ms.