OSS探訪GitHubでログイン

HTML5 videoに共通のプレイヤーUIとAPIを載せ、HLS・DASHを含むWeb動画再生を扱う

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
39,907
主要言語
JavaScript
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/02
ページ内ナビ

概要

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]

8.24.1はv8系のtagged packageで、major version更新は別途確認する

8.24.1のtagged package.jsonはvideo.js version 8.24.1を示しています。READMEは将来のmajor versionで大きな変更があることを案内しているため、upgrade時はmigration情報を確認してください。

出典:[1][2]

参考にした公式資料

  1. [1]Video.js v8.24.1 README(2026-10-05)
  2. [2]Video.js v8.24.1 package metadata(2026-10-05)
  3. [3]Video.js Apache-2.0 license(2026-10-05)
  4. [4]Video.js plugins(2026-10-05)
編集部からの補足

標準の<video>要素を土台に、プレイヤーUI・共通API・ストリーミング対応をまとめられる点が選定理由です。data-setupで自動初期化する方法とvideojs()で明示的に初期化する方法があるため、SPAではコンポーネントのライフサイクルに合わせて後者を選ぶ構成も比較してください。

3ステップで試す

  1. 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. 2

    Video.jsを読み込む最小HTMLを作る

    READMEのQuick Startに沿ってvideo-js classと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. 3

    ブラウザでHTMLを開いてプレイヤーを確認する

    index.htmlをブラウザで開き、Video.jsのcontrolsを持つプレイヤーが表示されることを確認します。サンプル動画の取得にはネットワーク接続が必要です。

    index.html
公式READMEで確認

成長

成長の推移 · 直近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で投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?