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

# Runway 動画をアップスケールする

> POST /runwayml/v1/video_upscale を使用して、CometAPI 経由で Runway の 4x 動画アップスケーリングタスクを開始します。各辺は 4096px までに制限され、バージョン指定に対応しています。

このエンドポイントは、既存の動画アセットに対する Runway のアップスケーリングタスクを開始するために使用します。

<Note>
  このリファレンスは既存の直接リンクのために保持されています。新しい統合では、他の Runway 公式フォーマットの生成エンドポイントおよびタスクエンドポイントを使用してください。
</Note>

## 呼び出し前に確認すること

* 必須の `X-Runway-Version` ヘッダーを送信します。例: `2024-11-06`
* `model: upscale_v1` を使用します
* 安定した HTTPS の `videoUri` を指定します
* 最大辺サイズ 4096 ピクセルで 4x アップスケールされることを想定します

## タスクの流れ

<Steps>
  <Step title="元動画を送信">
    ソースクリップの URL を使ってアップスケールタスクを作成します。
  </Step>

  <Step title="task id を保存">
    後でステータスを確認できるよう、返された `id` を保存します。
  </Step>

  <Step title="完了までポーリング">
    タスクが完了し、プロバイダーメタデータに最終出力が現れるまで [Runway タスクを取得](./runway-to-get-task-details) を使用します。
  </Step>
</Steps>

## 使用するタイミング

* 最終編集レンダリングが承認された後
* より高速なプレビューではなく、より高解像度の納品用アセットが必要な場合


## OpenAPI

````yaml api/openapi/video/runway/official-format/post-upscale-a-video.openapi.json POST /runwayml/v1/video_upscale
openapi: 3.1.0
info:
  title: Upscale a Video API
  version: 1.0.0
  description: >-
    Create a Runway video-upscale task through the official-format CometAPI
    route.
servers:
  - url: https://api.cometapi.com
security:
  - bearerAuth: []
paths:
  /runwayml/v1/video_upscale:
    post:
      summary: Create a Runway video-upscale task
      description: Submit a source video URL and receive a task id for later polling.
      operationId: upscale_a_video
      parameters:
        - name: X-Runway-Version
          in: header
          required: true
          description: Runway version header, for example `2024-11-06`.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - videoUri
                - model
              properties:
                videoUri:
                  type: string
                  description: >-
                    A HTTPS URL pointing to a video or a data URI containing a
                    video.
                  default: https://your-video-host/source.mp4
                model:
                  type: string
                  description: The model variant to use. Must be upscale_v1.
                  default: upscale_v1
              default:
                videoUri: https://your-video-host/source.mp4
                model: upscale_v1
            examples:
              Default:
                summary: Default
                value:
                  videoUri: https://your-video-host/source.mp4
                  model: upscale_v1
      responses:
        '200':
          description: Task accepted.
          content:
            application/json:
              schema:
                type: object
                required:
                  - id
                properties:
                  id:
                    type: string
      x-codeSamples:
        - lang: Shell
          label: Default
          source: |
            curl https://api.cometapi.com/runwayml/v1/video_upscale \
              -H "Authorization: Bearer $COMETAPI_KEY" \
              -H "Content-Type: application/json" \
              -d '{
                  "videoUri": "https://your-video-host/source.mp4",
                  "model": "upscale_v1"
                }'
        - lang: Python
          label: Default
          source: >
            import os

            import requests


            response = requests.post(
                "https://api.cometapi.com/runwayml/v1/video_upscale",
                headers={"Authorization": "Bearer " + os.environ["COMETAPI_KEY"]},
                json={
                        "videoUri": "https://your-video-host/source.mp4",
                        "model": "upscale_v1"
                },
            )


            task = response.json()

            print(task["id"])  # poll GET /runwayml/v1/tasks/{id} until the
            output array appears
        - lang: JavaScript
          label: Default
          source: >
            const response = await
            fetch("https://api.cometapi.com/runwayml/v1/video_upscale", {
                method: "POST",
                headers: {
                    Authorization: `Bearer ${process.env.COMETAPI_KEY}`,
                    "Content-Type": "application/json",
                },
                body: JSON.stringify({
                        "videoUri": "https://your-video-host/source.mp4",
                        "model": "upscale_v1"
                    }),
            });


            const task = await response.json();

            console.log(task.id); // poll GET /runwayml/v1/tasks/{id} until the
            output array appears
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication. Use your CometAPI key.

````