あらゆる JavaScript フレームワークで使える、カスタマイズ可能なネイティブ Web コンポーネント製の音声・動画プレイヤーコントロール。
muxinc/next-video
Muxなどのストレージプロバイダーを通じて、動画のアップロード、最適化、CDN配信を自動化するNext.js向けReactコンポーネント。
- スター
- 1,225
- フォーク
- 72
- 未解決の Issue
- 1
- 最終コミット
- 4 日前
これは何?
next-videoは、Next.jsプロジェクト向けにネイティブのvideo要素を拡張するReactコンポーネントです。動画ファイルをローカルの/videosフォルダーに置き、syncコマンドを実行すると、リモートストレージへのアップロードと処理が行われるため、大容量のメディアをgitリポジトリに含めずに済みます。動画ファイルのインポートはアセットオブジェクトとして解決され、Videoコンポーネントでそのまま再生できます。
デフォルトではMux上で処理とホスティングが行われ、圧縮、アダプティブストリーミング、自動のプレースホルダーポスター、タイムラインのホバーサムネイル、AI生成字幕、オプションの分析機能が利用できます。プロバイダーとしてVercel Blob、Backblaze、Amazon S3、Cloudflare R2もサポートしていますが、これらの機能の処理を行うのはMuxのみです。
プレーヤーはMedia Chromeをベースにしており、テーマをカスタマイズできます。また、カスタムプレーヤーコンポーネントに置き換えることも可能です。アップロードや処理が不要な場合に使える、単体のプレーヤーと背景動画用コンポーネントも用意されています。
主な機能
- 01syncコマンドでローカルの動画ファイルをリモートストレージに同期し、自動で処理します。
- 02小さなJSONメタデータファイルのみを管理し、大容量の動画ファイルをgitから除外できます。
- 03プロバイダーとしてMux、Vercel Blob、Backblaze、Amazon S3、Cloudflare R2をサポートします。
- 04Muxを使って、プレースホルダーポスターとタイムラインのホバーサムネイルを自動生成します。
- 05カスタマイズ可能なプレーヤーテーマと、カスタムプレーヤーコンポーネント用の差し替え枠を備えています。
- 06単体のプレーヤーと背景動画用コンポーネントを利用できます。
ユースケース
- メディアファイルをリポジトリにコミットせずに、Next.jsサイトでマーケティング動画や製品動画を配信する。
- プレーヤーコントロールのない背景動画のヒーローセクションを追加する。
- Muxを利用して、アダプティブストリーミングや字幕が必要な動画を埋め込む。
- 既存のS3またはR2での動画ホスティングをNext.jsのビルドワークフローに移行する。
クイックスタート
- 1
Next.jsプロジェクトのルートで自動セットアップを実行します
npx -y next-video init - 2
Muxのアクセストークンを.env.localに追加します
- 3
/videosに動画を追加し、リモートストレージに同期します
npx next-video sync - 4
開発サーバーを起動して、デモページを開きます
npm run dev
使う前に知っておきたいこと
- デフォルトのリモートストレージと最適化を利用するには、Muxアカウントとアクセストークンが必要です。
- /api/videoルートはデフォルトで認証されていないため、本番環境ではアクセス制限を設定してください。
トピック
よくある質問
- next-video とは?
- Muxなどのストレージプロバイダーを通じて、動画のアップロード、最適化、CDN配信を自動化するNext.js向けReactコンポーネント。 next-videoは、Next.jsプロジェクト向けにネイティブのvideo要素を拡張するReactコンポーネントです。動画ファイルをローカルの/videosフォルダーに置き、syncコマンドを実行すると、リモートストレージへのアップロードと処理が行われるため、大容量のメディアをgitリポジトリに含めずに済みます。動画ファイルのインポートはアセットオブジェクトとして解決され、Videoコンポーネントでそのまま再生できます。
- next-video は無料で使えますか?ライセンスは?
- next-video は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- next-video は今もメンテナンスされていますか?
- 活発にメンテナンス中。next-video の最終コミットは 2026年11月3日 です。
- next-video は何に使えますか?
- メディアファイルをリポジトリにコミットせずに、Next.jsサイトでマーケティング動画や製品動画を配信する。 プレーヤーコントロールのない背景動画のヒーローセクションを追加する。 Muxを利用して、アダプティブストリーミングや字幕が必要な動画を埋め込む。 既存のS3またはR2での動画ホスティングをNext.jsのビルドワークフローに移行する。
- next-video のインストール方法は?
- Next.jsプロジェクトのルートで自動セットアップを実行します: npx -y next-video init Muxのアクセストークンを.env.localに追加します /videosに動画を追加し、リモートストレージに同期します: npx next-video sync 開発サーバーを起動して、デモページを開きます: npm run dev
- next-video はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/muxinc/next-video
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
i18nextとreact-i18nextをNext.jsのApp Router、Pages Router、middlewareに組み込む翻訳ツールキット。
ICUメッセージ構文、ロケール対応の日付・数値フォーマット、型安全な翻訳フックを備えたNext.js向け国際化(i18n)ライブラリ。
既存のFastifyサーバーでReactのサーバーサイドレンダリングによるNext.jsページの表示を可能にするFastifyプラグイン。
ネイティブなSwiftインターフェースを備えた、mpvベースのmacOS向け動画・音楽プレーヤー。
動画・音声・GIFをプログラムで編集できるPythonライブラリ。カット、連結、テキストの重ね合わせ、合成、独自エフェクトに対応。