---
title: Draft mode and reproducible reruns — P-Video-Edit | Runware Docs
url: https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode
description: How to use settings.draft in Pruna P-Video-Edit to preview an edit at a lower rate before committing, and how seed makes the run you approved repeatable.
---
### [Introduction](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#introduction)

Most of the edits you run are **edits you will throw away**. The wording was not quite right, the colour was not the one the client meant, or the idea was worth trying and not worth keeping. Paying full rate to find that out gets expensive when the bill is per second of output and the clip is long, as [editing video](https://runware.ai/docs/models/prunaai-p-video-edit/guides/editing-video) sets out.

`settings.draft` exists for that part of the work. It renders the same edit at **lower quality and roughly half the cost**, fast enough to iterate against, so the full-quality run happens once you already know what you are asking for.

[Watch video](https://runware.ai/docs/assets/source-armchair.Dgdenvme.mp4)

*The source clip every edit below starts from*

The same instruction run twice, once each way:

**Draft**:

[Watch video](https://runware.ai/docs/assets/output-draft-teal.BavIZVvk.mp4)

*Draft, for the decision*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

**Final**:

[Watch video](https://runware.ai/docs/assets/output-final-teal.DwDIbo19.mp4)

*Full quality, for delivery*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

This guide covers the flag, what draft actually trades away, the iteration loop it is built for, and how `seed` makes a run repeatable.

### [The flag](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#the-flag)

`settings.draft` is a boolean and it defaults to `false`, so every call is full quality unless you say otherwise.

**TypeScript**:

```typescript
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'prunaai:p-video@edit',
  positivePrompt: 'Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.',
  inputs: {
    video: 'https://vm.runware.ai/video/os/a14d18/ws/2/vi/4c7e2a90-8b15-4d63-a2f7-9e1c5d3b8074.mp4'
  },
  settings: {
    draft: true
  },
  seed: 1840572,
  deliveryMethod: 'async'
})
```

**Python**:

```python
import asyncio
import os

from runware import Runware

async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "prunaai:p-video@edit",
            "positivePrompt": "Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.",
            "inputs": {
                "video": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/4c7e2a90-8b15-4d63-a2f7-9e1c5d3b8074.mp4"
            },
            "settings": {
                "draft": True
            },
            "seed": 1840572,
            "deliveryMethod": "async"
        })

asyncio.run(main())
```

**cURL**:

```bash
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "videoInference",
      "taskUUID": "f2b6d419-5c83-4a07-9e51-3d8a2c7f0b64",
      "model": "prunaai:p-video@edit",
      "positivePrompt": "Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.",
      "inputs": {
        "video": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/4c7e2a90-8b15-4d63-a2f7-9e1c5d3b8074.mp4"
      },
      "settings": {
        "draft": true
      },
      "seed": 1840572,
      "deliveryMethod": "async"
    }
  ]'
```

**CLI**:

```bash
runware run prunaai:p-video@edit \
  positivePrompt="Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged." \
  inputs.video=https://vm.runware.ai/video/os/a14d18/ws/2/vi/4c7e2a90-8b15-4d63-a2f7-9e1c5d3b8074.mp4 \
  settings.draft=true \
  seed=1840572 \
  deliveryMethod=async
```

**JSON**:

```json
{
  "taskType": "videoInference",
  "taskUUID": "f2b6d419-5c83-4a07-9e51-3d8a2c7f0b64",
  "model": "prunaai:p-video@edit",
  "positivePrompt": "Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.",
  "inputs": {
    "video": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/4c7e2a90-8b15-4d63-a2f7-9e1c5d3b8074.mp4"
  },
  "settings": {
    "draft": true
  },
  "seed": 1840572,
  "deliveryMethod": "async"
}
```

**Response**:

```json
[
  {
    "taskType": "videoInference",
    "taskUUID": "f2b6d419-5c83-4a07-9e51-3d8a2c7f0b64",
    "videoUUID": "8e3a1c57-2f94-4b60-9a18-7c5e2a9d4f13",
    "videoURL": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/8e3a1c57-2f94-4b60-9a18-7c5e2a9d4f13.mp4"
  }
]
```

Turning it on **halves the rate per second of output and roughly doubles the speed**. Everything else about the request is identical, so the same call switches between the two modes on one boolean.

### [What draft trades away](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#what-draft-trades-away)

The thing draft does not change is the one people assume it does. **The output dimensions are identical in both modes**, and so is the 25 fps frame rate. This model already snaps every result to a fixed size for its aspect ratio, capped at 848 pixels on the long edge, and the flag does not move that. A draft and a final of the same 16:9 source are both 848 × 480 files.

What you lose is rendering quality inside those frames. **Fine texture goes soft and small detail is approximated** rather than resolved, which is exactly the part of the picture a material decision turns on.

[Watch video](https://runware.ai/docs/assets/output-draft-boucle.C10M8W9e.mp4)

*Draft: the texture is indicated*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to cream boucle fabric with a nubbly looped texture. Preserve the seams, the buttoning and the shape of the cushions. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

[Watch video](https://runware.ai/docs/assets/output-final-teal.DwDIbo19.mp4)

*Full: the texture is rendered*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

That shapes what a draft can answer. **A draft settles composition-level questions**, whether the right object changed, whether the preserve clause held, whether the colour reads. It cannot settle material questions, because the exact thing you would be judging is the detail draft mode approximates. Judge a boucle against a velvet at full quality, and judge whether you targeted the chair at all in draft.

### [The iteration loop](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#the-iteration-loop)

The loop the flag is built for is cheap exploration, then one expensive commit. Three materials explored in draft, one taken to full:

[Watch video](https://runware.ai/docs/assets/output-draft-teal.BavIZVvk.mp4)

*Draft: teal velvet*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to deep teal velvet. Preserve the seams, the buttoning and the pile of the fabric. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

[Watch video](https://runware.ai/docs/assets/output-draft-oxblood.BdeUOtDE.mp4)

*Draft: oxblood leather*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to deep oxblood leather. Preserve the seams, the buttoning and the shape of the cushions. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

[Watch video](https://runware.ai/docs/assets/output-draft-boucle.C10M8W9e.mp4)

*Draft: cream boucle*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to cream boucle fabric with a nubbly looped texture. Preserve the seams, the buttoning and the shape of the cushions. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

Three drafts plus one final costs less than three full-quality runs, and the saving grows with the length of the clip. **Short sources make the loop cheaper still**, so where a decision can be made on a 5-second cut of a 15-second master, testing on the cut is the bigger saving of the two.

> [!NOTE]
> A draft is worth running even when you intend only one edit. It is the cheapest way to find out that an instruction pointed at the wrong object, and that mistake costs a full render to discover any other way.

### [Reproducible reruns](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#reproducible-reruns)

Every call renders fresh, so **the same instruction gives a different result each time** unless you pin `seed`. The field takes an integer from 0 to 2147483647, and leaving it out draws a random one.

```json
{
  "seed": 1840572
}
```

Two runs of one instruction on two seeds show how much moves when nothing else changes:

[Watch video](https://runware.ai/docs/assets/output-seed-a.DzdEAGf7.mp4)

*seed 662041*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to cream boucle fabric with a nubbly looped texture. Preserve the seams, the buttoning and the shape of the cushions. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

[Watch video](https://runware.ai/docs/assets/output-seed-b.BGz3o94u.mp4)

*seed 915738*

> **Prompt**: Change only the mustard-yellow velvet upholstery of the armchair to cream boucle fabric with a nubbly looped texture. Preserve the seams, the buttoning and the shape of the cushions. Keep the grey throw, the oak floor, the wall, the daylight and the camera move unchanged.

The edit is the same edit and the texture is not the same texture. That matters for a catalogue, where **a set of variants has to look like one shoot**, and a shared seed across a run of colourways is what keeps them consistent with each other.

A pinned seed also **carries a draft decision into the final render**. Approve a draft on a seed, drop `settings.draft`, keep the seed, and the full-quality version starts from the same place.

> [!WARNING]
> Treat a seed as a strong hint rather than a guarantee. It makes a rerun far closer than an unseeded one, and it is not a promise of an identical file, so **store the output you approved** rather than relying on regenerating it later.

### [Tips](https://runware.ai/docs/models/prunaai-p-video-edit/guides/draft-mode#tips)

1. **Draft first when the instruction is new.** The question a first run answers is usually "did it change the right thing", and draft answers that at half the rate.
    
2. **Commit at full quality for anything you ship.** Draft softens exactly the texture a viewer looks at in a product or material shot.
    
3. **Judge material at full quality only.** A fabric or finish comparison made in draft is a comparison of two approximations.
    
4. **Pin a seed across a variant set.** Colourways generated on one seed hold together as a set, where unseeded ones drift apart.
    
5. **Carry the seed from draft to final.** Approve in draft, drop the flag, keep the number.
    
6. **Test on a short cut.** Billing follows output length, so a decision made on a 5-second excerpt costs a third of the same decision made on a 15-second master.