# UploadVideoOptions

```ts
type UploadVideoOptions = {
  hls?: boolean;
  passthrough?: boolean;
};
```

Defined in: packages/sdk/src/index.ts:492

VIDEO-only delivery knobs threaded into `/assets/process`. Ignored for
image / audio / other uploads. Both fields default to today's behavior when
omitted, so existing callers are unaffected.

## Properties

### hls?

```ts
optional hls?: boolean;
```

Defined in: packages/sdk/src/index.ts:499

`false` → skip the auto-dispatched HLS adaptive ladder (240p–2160p). Use
for download-only assets served as a progressive `-v.mp4` and never
streamed (e.g. share-video reels) — it avoids a second background job no
one watches. Default/absent → the ladder is generated as before.

***

### passthrough?

```ts
optional passthrough?: boolean;
```

Defined in: packages/sdk/src/index.ts:508

`true` → when the uploaded MP4 is ALREADY web-safe (H.264 + yuv420p),
re-mux the `video` variant instead of re-encoding it. Use for
delivery-ready uploads (the bytes are already H.264 High / yuv420p /
+faststart / capped bitrate) to skip a wasteful re-encode + generational
quality loss. Falls back to a full re-encode automatically when the source
is not web-safe. Default/absent → unconditional re-encode (today's path).