動画高画質化 API

November 5, 2026

動画高画質化 API

プラットフォームに保存済みの動画、またはアップロードしたファイルを送信し、1080p、2K、4K の高画質化結果を受け取ります。画面内テキストの強調はオンとオフを切り替えられます。動画全体、または最長 10 分の区間を処理できます。

対応する動画ソース

プラットフォームのファイル URL、または アップロード API が返す identity を渡します。ローカルアップロードには Starter プラン以上が必要です。

ワークフロー

  1. 元動画と目標解像度を指定して高画質化タスクを送信する
  2. status が DONE または ERROR になるまで結果をポーリングする
  3. status が DONE のとき output_url を読み取る

エンドポイント

メソッドパス説明
POST/api/v2/video-enhancer高画質化タスクを送信する
GET/api/v2/video-enhancer/results/{id}タスク結果を取得する

すべてのリクエストに次のヘッダーが必要です。

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
x-wayinvideo-api-version: v2

高画質化タスクを送信する

POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer

リクエストボディ

パラメータ型必須デフォルト説明
video_urlstringはい—プラットフォームのファイル URL、または アップロード API が返す identity。
target_resstringはい—出力解像度。指定できる値は 1080p、2k、4k。
enable_text_hdbooleanいいえtrue画面内テキストを強調するかどうか。省略した場合のデフォルトは true。
start_msintegerいいえ—区間の開始位置(ミリ秒)。start_ms と end_ms をどちらも省略すると動画全体を処理します。10 分の上限は引き続き適用されます。どちらか一方だけを送ると拒否されます。
end_msintegerいいえ—区間の終了位置(ミリ秒)。start_ms より大きく、元動画の長さを超えてはいけません。

処理区間は 10 分以内です。課金はこの区間を秒単位で切り上げて計算します。料金は 料金・請求 を参照してください。

リクエスト例

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{
    "video_url": "EF_up_06wguq1afbwg1",
    "target_res": "1080p",
    "enable_text_hd": true,
    "start_ms": 0,
    "end_ms": 8000
  }'
import requests

requests.post(
    "https://wayinvideo-api.wayin.ai/api/v2/video-enhancer",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "x-wayinvideo-api-version": "v2",
    },
    json={
        "video_url": "EF_up_06wguq1afbwg1",
        "target_res": "1080p",
        "enable_text_hd": True,
        "start_ms": 0,
        "end_ms": 8000,
    },
)
await fetch('https://wayinvideo-api.wayin.ai/api/v2/video-enhancer', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer YOUR_API_KEY',
    'x-wayinvideo-api-version': 'v2',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    video_url: 'EF_up_06wguq1afbwg1',
    target_res: '1080p',
    enable_text_hd: true,
    start_ms: 0,
    end_ms: 8000,
  }),
});

レスポンス

送信直後のタスクは、通常 PENDING(待機中)または IN_PROGRESS(実行中)です。

{
  "data": {
    "id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
    "status": "IN_PROGRESS"
  }
}
フィールド型説明
idstringProject id。結果取得時にパスへ渡します。
statusstringPENDING(待機)、IN_PROGRESS(実行中)、DONE(完了)、ERROR(失敗)。
output_urlstring高画質化後の動画 URL。status が DONE のときだけ含まれます。

高画質化結果を取得する

送信レスポンスの id で、status が DONE または ERROR になるまでポーリングします。status が DONE のとき output_url を読み取ります。

GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/{id}

リクエスト例

curl -X GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/proj_01HQ2X8J3K4L5M6N7O8P9Q0R \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2"

レスポンス

{
  "data": {
    "id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
    "status": "DONE",
    "output_url": "https://cdn.viralhub.ai/user/video_0_8000_1080p.mp4"
  }
}

フィールドは送信レスポンスと同じです。タスク完了時に output_url が含まれます。


料金

動画高画質化は、処理した区間の長さに対して API ユニットを消費します。秒単位で切り上げ、1 秒未満は 1 秒として計算します。

目標解像度API ユニット
1080p1 秒あたり 1
2K(2k)1 秒あたり 2
4K(4k)1 秒あたり 4

API ユニットが不足している場合、タスクは作成されず、ユニットも消費されません。詳しくは 料金・請求 と ステータスコード を参照してください。


エラー

失敗したリクエストは標準のステータスコードとレスポンス形式を使います。詳しくは ステータスコード を参照してください。