ffmpegを使った動画のHLS変換

Windows上でffmpegを使い、HLS(HTTP Live Streaming)形式の動画を作成する方法です。

スマホ向け動画配信ってどうやるのよ?ってことで調べてみました。
なお、HLS形式の動画はスマホのブラウザでは再生できますが、PCではMicrosoft EdgeSafariでしか再生出来ませんでした。(2018/04/28現在)

ffmpegの実行

使用したバージョンは20161101-60178e7です。
以下のコマンドを実行します。(実行時には改行せずに1行で記述します)

ffmpeg.exe
    -i myvideo.mp4
    -vcodec libx264
    -movflags faststart
    -vprofile baseline
    -level 3.0
    -g 150
    -b:v 2048k
    -flags +loop-global_header
    -map 0
    -vbsf h264_mp4toannexb
    -acodec aac
    -ar 48000
    -b:a 256k
    -f segment
    -segment_format mpegts
    -segment_time 6
    -segment_list .\stream\playlist.m3u8 .\stream\v%05d.ts

上記実行時のファイル・フォルダ配置は以下です。

ffmpeg\bin
          ffmpeg.exe
          hls.html
          myvideo.mp4
ffmpeg\bin\stream

再生

stream/playlist.m3u8またはhls.htmlをブラウザで実行します。

hls.htmlの記述例

<!DOCTYPE html>
<html>
<head>
    <title>HLS Sample</title>
</head>
<body>
<video width="640" height="360" src="stream/playlist.m3u8" controls />
</body>
</html>
このエントリーをはてなブックマークに追加
にほんブログ村 IT技術ブログへ

コメント

メールアドレスが公開されることはありません。 が付いている欄は必須項目です