> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stackshift.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Video, scanning, and governance

> Process video asynchronously, deliver HLS and posters, scan uploads, quarantine infected assets, and enforce account policies.

<Tip>
  **Live.** This area is documented as current, user-reliable behavior.
</Tip>

## Goal

Use video outputs and security controls while keeping original asset URLs backward compatible.

## Prerequisites

* A video upload or replace operation
* A configured account content policy when restrictions are needed

## Workflow

<Steps>
  <Step>
    Upload or replace a video asset.
  </Step>

  <Step>
    StackShift scans the asset first and quarantines infected files.
  </Step>

  <Step>
    Clean video assets enqueue processing for metadata, poster images, thumbnails, MP4 normalization, and HLS renditions.
  </Step>

  <Step>
    Deliver HLS manifests, segments, posters, and thumbnails through public or signed private delivery routes.
  </Step>

  <Step>
    Use policy controls for allowed MIME types, maximum file size by family, and scan requirements.
  </Step>
</Steps>

## Video outputs

* FFprobe metadata: duration, dimensions, codec, bitrate, frame rate, audio presence, and rotation.
* Poster and thumbnail derived assets.
* Normalized MP4 output for web playback.
* HLS ladders for 240p, 360p, 480p, 720p, and 1080p when the source supports them.

## Governance behavior

* Scan states are pending, clean, infected, failed, and skipped.
* Infected assets are quarantined and blocked from original, transform, and video delivery.
* Policy checks run on direct uploads, upload-session creation, chunk completion, replace, and token uploads.
* Audit logs cover uploads, replace, delete, scan results, quarantine, video processing, policy changes, tags, and visibility changes.

## Expected result

<Check>
  Video assets show processing state, playback URLs, scan status, policy status, and audit history.
</Check>

## Related guides

<CardGroup cols={2}>
  <Card title="Private assets and signed URLs" href="/assets/private-assets-and-signed-urls">
    Keep files private by default and generate short-lived URLs only when a user should download them.
  </Card>

  <Card title="AI DAM and versioning" href="/assets/ai-dam-and-versioning">
    Use OpenAI-backed asset intelligence, moderation, transcripts, smart crops, background removal, collections, saved searches, and branching versions.
  </Card>
</CardGroup>
