ページ内ナビ
概要
Video.jsはWeb向けのオープンソース動画プレイヤーです。HTML5の<video>要素を基盤に、デスクトップ・モバイル端末・タブレット・Web対応Smart TV向けのプレイヤーUIとAPIを提供し、HLSやDASHを含む一般的なWeb動画形式を扱えます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
video要素を自動または明示的にVideo.jsプレイヤーへ初期化する
data-setup='{}'を付けた<video class="video-js">はページ読み込み時に自動初期化できます。コンポーネント側で制御したい場合はvideojs('my-player', options)を呼ぶ方法もあります。
出典:[1]
HLS・DASHを含むWeb動画を共通のplayer APIで扱う
READMEは一般的なWeb media formatに加え、HLSとDASHのストリーミング形式を標準対応として挙げています。利用者側はプレイヤーのcontrolsやeventを共通のVideo.js APIから扱えます。
出典:[1]
option・event・pluginでプレイヤー動作を拡張する
初期化時にoption objectとready callbackを渡せ、endedなどのeventを購読できます。公式サイトにはplugin一覧があり、用途に応じてplayer機能を追加できます。
出典:[1]
向いている用途
複数ブラウザ・端末で動画プレイヤーのUIと操作APIを統一したい場合に向く
動画配信サイト、教育コンテンツ、メディアサービスなどで、native video elementを保ちつつストリーミングとcontrolsを共通化したいフロントエンドに適します。
出典:[1]
導入前の確認
data-setupを使う場合は有効なJSONとしてoptionを記述する
READMEはdata-setupの値を少なくとも{}とし、optionを含める場合も有効なJSONにする必要があると説明しています。コンポーネントのライフサイクルからプレイヤーを管理する場合は明示的な初期化を選べます。
出典:[1]
参考にした公式資料
- [1]Video.js v8.24.1 README(2026-10-05)
- [2]Video.js v8.24.1 package metadata(2026-10-05)
- [3]Video.js Apache-2.0 license(2026-10-05)
- [4]Video.js plugins(2026-10-05)
編集部からの補足
標準の<video>要素を土台に、プレイヤーUI・共通API・ストリーミング対応をまとめられる点が選定理由です。data-setupで自動初期化する方法とvideojs()で明示的に初期化する方法があるため、SPAではコンポーネントのライフサイクルに合わせて後者を選ぶ構成も比較してください。
3ステップで試す
- 1
Video.js 8.24.1を一時ディレクトリへ導入する
確認対象のv8系packageを固定し、既存アプリから分離して試します。
demo=$(mktemp -d "${TMPDIR:-/tmp}/videojs.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact video.js@8.24.1 - 2
Video.jsを読み込む最小HTMLを作る
READMEのQuick Startに沿って
video-jsclassとdata-setupを指定し、導入したpackageのCSSとJavaScriptを読み込みます。printf "%s\n" '<!doctype html>' '<meta charset="utf-8">' '<link rel="stylesheet" href="./node_modules/video.js/dist/video-js.css">' '<video id="my-player" class="video-js" controls preload="auto" width="640" height="264" data-setup="{}">' '<source src="https://vjs.zencdn.net/v/oceans.mp4" type="video/mp4">' '</video>' '<script src="./node_modules/video.js/dist/video.min.js"></script>' > index.html - 3
ブラウザでHTMLを開いてプレイヤーを確認する
index.htmlをブラウザで開き、Video.jsのcontrolsを持つプレイヤーが表示されることを確認します。サンプル動画の取得にはネットワーク接続が必要です。index.html
成長
成長の推移 · 直近30日
39,907 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 4
- Open PR
- 57
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
カテゴリ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
GitHub Topics
- video
- player
- hls
- javascript
- videojs
- html
- html5-video
- html5-audio
- html5
- dash
- video-player
- Stars
- 39,907
- Forks
- 7,479
- Watchers
- 1,248
- Open Issues
- 617
- Contributors
- 369
- 所有者種別
- Organization
- 主要言語
- JavaScript
- ライセンス
- Apache-2.0
- リポジトリ最終更新
- 2026/10/02
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Tippy.js12,240 Stars
共通タグ 3件 · 同じ言語
tooltip・popover・dropdownをPopperベースで配置し、hover・focus・click操作へ追加する
JavaScript - Stylelint11,526 Stars
共通タグ 3件 · 同じ言語
CSSのerrorとconventionを100以上のrule・plugin・shareable configで継続的に検査する
JavaScript - Stylus11,333 Stars
共通タグ 3件 · 同じ言語
indented syntaxと通常のCSS styleを同じcompilerで扱うexpressiveなstylesheet language
JavaScript - i18next8,637 Stars
共通タグ 3件 · 同じ言語
翻訳キー・複数形・補間・resource loadingをUI frameworkから切り離すi18n core
JavaScript - melonJS6,401 Stars
共通タグ 3件 · 同じ言語
WebGPU・WebGL 2・Canvasを同じAPIで扱い、ブラウザ向け2D/2.5Dゲームを組み立てるエンジン
JavaScript - DOM Testing Library3,335 Stars
共通タグ 3件 · 同じ言語
ユーザーが要素を見つける方法に近いDOM queryでUIをテストする
JavaScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。