---
title: "Live Video To Video"
method: POST
path: "/api/generate/live-video-to-video"
tags: ["generate"]
---

# Live Video To Video

`POST /api/generate/live-video-to-video`

Apply transformations to a live video streamed to the returned endpoints.

## Request body

- LiveVideoToVideoParams
  - `subscribe_url` string, required — Source URL of the incoming stream to subscribe to.
  - `publish_url` string, required — Destination URL of the outgoing stream to publish.
  - `control_url` string — URL for subscribing via Trickle protocol for updates in the live video-to-video generation params.
  - `events_url` string — URL for publishing events via Trickle protocol for pipeline status and logs.
  - `model_id` string, required — Name of the pipeline to run in the live video to video job. Notice that this is named model_id for consistency with other routes, but it does not refer to a Hugging Face model ID. The exact model(s) depends on the pipeline implementation and might be configurable via the `params` argument.
  - `params` object — Initial parameters for the pipeline.
  - `gateway_request_id` string — The ID of the Gateway request (for logging purposes).
  - `manifest_id` string — The manifest ID from the orchestrator (for logging purposes).
  - `stream_id` string — The Stream ID (for logging purposes).

## Response `200`

Successful Response

- LiveVideoToVideoResponse — Response model for live video-to-video generation.
  - `subscribe_url` string, required — Source URL of the incoming stream to subscribe to
  - `publish_url` string, required — Destination URL of the outgoing stream to publish to
  - `control_url` string — URL for updating the live video-to-video generation
  - `events_url` string — URL for subscribing to events for pipeline status and logs
  - `request_id` string — The ID generated for this request
  - `manifest_id` string — Orchestrator manifest ID for this request

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `422` — Validation Error
- `500` — Internal Server Error
- `default` — Error

## Changes

- **2025-10-30** `dfc937fc0d2c` — 6 breaking, 3 info
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from `object`/`` to ``/`` for status `400`
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from `object`/`` to ``/`` for status `401`
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from `object`/`` to ``/`` for status `500`
  - removed the required property `oneOf[subschema #1: HTTPError]/detail/msg` from the response with the `400` status
  - …5 more
- **2025-10-30** `f5d01b71ba9a` — 3 breaking, 6 info
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from ``/`` to `object`/`` for status `400`
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from ``/`` to `object`/`` for status `401`
  - the `oneOf[subschema #1: HTTPError]/detail` response's property type/format changed from ``/`` to `object`/`` for status `500`
  - removed `#/components/schemas/APIError` from the `oneOf[subschema #1: HTTPError]/detail` response property `allOf` list for the response status `400`
  - …5 more
- **2025-10-28** `dfc937fc0d2c` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/livepeer/apis/untitled-api/changes/api/generate/live-video-to-video/post.md)

---

[API](https://skmtc.dev/livepeer/apis/untitled-api.md) · [All operations](https://skmtc.dev/livepeer/apis/untitled-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/livepeer/untitled-api/revisions/dfc937fc0d2c/schema)
