ClaudeCloudflare Developer Platform2026/03/18 0:00

Stream - Media Transformations binding for Workers

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

claudejamodel: claude-sonnet-4-20250514

Cloudflare Workers用Media Transformationsバインディングがリリース

Key Points

  • WorkersでMedia Transformationsバインディングが利用可能に
  • R2などプライベートソースの動画変換に対応
  • Workers AIと連携したフレーム・音声抽出機能

Summary

Cloudflare WorkersでMedia Transformationsバインディングが利用可能になりました。これにより、R2バケットなどのプライベートな場所に保存された動画を含む、あらゆる場所の動画をリサイズ、クロップ、フレーム抽出、音声抽出できるようになります。

Key Points

  • プライベートソース対応: R2バケットなどの保護されたソースからの動画変換が可能
  • 直接R2保存: 最適化された動画を直接R2に保存して再利用可能
  • Workers AI連携: フレーム抽出による分類・説明生成、音声抽出による文字起こしに対応
  • 複数出力モード: video(MP4)、frame(静止画)、spritesheet(複数フレーム)、audio(M4A)をサポート
  • 簡単設定: Wranglerの設定ファイルにバインディングを追加するだけで利用開始

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

claudejamodel: claude-sonnet-4-20250514

Stream - Workers向けMedia Transformationsバインディング

Changelog

Cloudflareの新しいアップデートと改善。RSSを購読 RSSフィードを表示

← すべての投稿に戻る

Workers向けMedia Transformationsバインディング

2026年3月18日 | Stream

Workersバインディングを使用してMedia Transformationsで動画を変換できるようになりました。これにより、R2バケットなどのプライベートな場所を含む、どこに保存されている動画でもリサイズ、クロップ、フレーム抽出、音声抽出が可能になります。

Media Transformationsバインディングは以下の場合に便利です:

  • プライベートまたは保護されたソースに保存された動画の変換
  • 動画を最適化し、再利用のために出力を直接R2に保存
  • Workers AIでの分類や説明のための静止フレームの抽出
  • Workers AIを使用した転写のための音声トラックの抽出

使用開始

Wrangler設定にMediaバインディングを追加します:

wrangler.jsonc

{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "media": {
    "binding": "MEDIA"
  }
}

wrangler.toml

[media]
binding = "MEDIA"

次に、Workerでバインディングを使用して動画を変換します:

JavaScript

export default {
  async fetch(request, env) {
    const video = await env.R2_BUCKET.get("input.mp4");
    const result = env.MEDIA
      .input(video.body)
      .transform({ width: 480, height: 270 })
      .output({ mode: "video", duration: "5s" });
    return await result.response();
  },
};

TypeScript

export default {
  async fetch(request, env) {
    const video = await env.R2_BUCKET.get("input.mp4");
    const result = env.MEDIA
      .input(video.body)
      .transform({ width: 480, height: 270 })
      .output({ mode: "video", duration: "5s" });
    return await result.response();
  },
};

出力モードには、最適化されたMP4クリップ用のvideo、静止画像用のframe、複数フレーム用のspritesheet、M4A抽出用のaudioがあります。

詳細については、Media Transformationsバインディングドキュメントを参照してください。