HLS形式による動画のオンデマンド配信

動画の準備

1. 配信したい動画を準備する。(ここでは mp4 形式で保存)
2. ffmpeg をダウンロードし,動画と同じフォルダーに保存する。
3. 上記フォルダーでコマンドプロンプトを起動する。(フォルダーのアドレスバーに「cmd」と入力し⏎キーを押す。)

動画の変換(mp4 から HLS へ)

1. コマンドプロンプトから,次のコマンドを入力する。

>ffmpeg -i [動画ファイル名].mp4 -c:v copy -c:a copy -f hls -hls_time 9 -hls_playlist_type vod -hls_segment_filename [動画ファイル名]%3d.ts [動画ファイル名].m3u8

※ この場合のセグメントタイムは9秒なので,10分の動画なら67ぐらいのファイル(拡張子 ts)が連番で作成される。

Webサーバーへの配置

1. 作成された全てのファイル([動画ファイル名]連番.tsと,[動画ファイル名].m3u8)をWebサーバーの任意のフォルダーに転送する。
2. HTMLファイル中に,次のように指定する。

<video src="http://.../[動画ファイル名].m3u8" ></video>

※ HLS対応ブラウザ(Safari と Edge)は,これで再生可能になる。

hls.js の実装

※ hls.js を使うと,HLS非対応のブラウザにも配信が可能になる。
1. hls.js を提供サイトからダウンロードして,Webサーバーに転送する。
2. HTMLファイル中に,次のように指定する。

<script src="hls.js"></script>
<video id="video_smaple" controls>
<script>
 if(Hls.isSupported()) {
   var video = document.getElementById('video_smaple');
   var hls = new Hls();
   hls.loadSource('./[動画ファイル名].m3u8');
   hls.attachMedia(video);
 }
</script>

※ 1行目を <script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script> とすれば,hls.jsのダウンロードは不要。

サンプル動画


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS