簡単にHLS形式の動画を作れる「HLS作成さん」を配布しました ※2024年3月更新

テクノロジー

HLS(HTTP Live Streaming)の作成は面倒です。
基本的にはFFmppegを使用してコマンドラインで作るのが一般的です。
しかし、それだとABR(アダプティブ・ビットレート)の対応に苦労します。

そこで、今回windows限定ですがドラック&ドロップで240p~1080pまでの画質を自動で作成できるバッチ「HLS作成さん」を作りました。

FFmpegのパスを通す必要があるので、まだの場合はこちらの記事を参考に導入してください。

WordPressでHLS形式の動画を配信する方法はこちら

【追記】GitHubにも上げました

GitHub - GoLaboRat/Ms.-HLS-Creation
Contribute to GoLaboRat/Ms.-HLS-Creation development by creating an account on GitHub.

プログラムのダウンロード

フォルダ内のREAD_MEをお読みの上、自己責任でご利用ください。

解凍するとHLS_Sakusei_Sanというフォルダがあるので、それを好きな場所に置いてください。

使用方法

フォルダを開くと「Drop_30fps.bat」、「Drop_60fps.bat」という2種類のファイルがあります。

元動画に近いフレームレートのファイルに変換したい動画ドロップします。

TEST.mkvを60fps.batファイルにドロップする場合

するとコマンドプロンプトが開いてエンコードが始まります。

エンコードが終わると「HLS_Sakusei_San」フォルダの「video」にエンコードされた動画が入っています。

このバッチを使用すると必ず240p、360p、480p、720p、1080pが生成されます。

videoフォルダはバッチを起動するたびに初期化されるので、名前を変更するか別の場所に移動してください。

バッチの内容について※2024年3月更新

このプログラムは複数のバッチファイルで構成されています。

HSS_ver2.00
→Drop_30fps.bat
→Drop_30fps.bat
→videoフォルダ
→Temporaryフォルダ

それぞれ解説します。

Drop_30fps.bat
Drop_30fps.bat

30fps/60fpsの動画を作成します。
従来の機能を一つのバッチにまとめました

Videoフォルダ
HLS形式の動画が保存されます。
内部は相対リンクなのでフォルダ名を変えても問題ありません。

Temporaryフォルダ
一時的な作業場として動画ファイルが保存されます。

[ads]

エンコード内容について

作成される動画について説明します。

共通項目
セグメントの長さ(tsファイルの長さ)は3秒
キーフレームも3秒毎に設定されています

30fpsの動画
FRAME_RATE 30fps
GOP 90
HLS TYPE VOD
HLS TIME 3 seconds

426×240  Profile main 3.1 libx264 crf:22 maxrate:400k AAC:96kbps
640×360  Profile main 3.1 libx264 crf:21 maxrate:700k AAC:128kbps
854×480  Profile main 3.1 libx264 crf:20 maxrate:1200k AAC:160kbps
1280×720  Profile main 3.1 libx264 crf:19 maxrate:2200k AAC:192kbps
1920×1080 Profile main 3.1 libx264 crf:18 maxrate:3800k AAC:224kbps

60fpsの動画
FRAME_RATE 60fps
GOP 180
HLS TYPE VOD
HLS TIME 3 seconds

426×240  Profile main 3.1 libx264 crf:22 maxrate:600k AAC:96kbps
640×360  Profile main 3.1 libx264 crf:21 maxrate:900k AAC:128kbps
854×480  Profile main 3.1 libx264 crf:20 maxrate:1400k AAC:160kbps
1280×720  Profile main 3.1 libx264 crf:19 maxrate:3000k AAC:192kbps
1920×1080 Profile main 3.1 libx264 crf:18 maxrate:5400k AAC:224kbps

もし、エンコード設定を変更したい場合、「enc30fps.bat」、もしくは「enc60fps.bat」を右クリックし、編集を選択します。

すると、メモ帳が開くので書き換えてください。

注意事項

videoファルダの中身はバッチを起動すると必ず初期化されます(ダブルクリックでも)
作成後は名前を変更するか、別ディレクトリに移動することをお勧めします。

あくまでフォルダ内で実行する前提で組んでいるので、階層を弄ったり中身を別の場所に移したり絶対しないでください。


エンコード設定は自分の経験を元に決めています。


動作がおかしい、.tsファイルが消えないという場合はお手数ですがフォルダ内の「video」フォルダを削除して再度試してみてください。

分からないことがあればお気軽にコメント下さい。

コメント

  1. Sainen より:

    GOさん。調整頂きまして、ありがとうございました。 新しいバージョンで無事変換することができました。お礼申し上げます!

  2. Sainen より:

    はじめましてGOさん。HLS作成さんがとても便利そうなので使わせて頂きたいです。
    以下の表示の羅列が出まして動画ファイルをドロップできないのですが、もしよろしければアドバイス頂けると嬉しいです。普段はMacユーザーなので初歩的な質問でしたらすみません。。FFMPEGはインストール済みです。

    重複するファイルが存在するか、またはファイルが見つかりませんでした。
    C:\Users\〇〇\Desktop\HLS_Sakusei_San\0vid.txt が見つかりませんでした。
    Initialization completion
    ——-Criating 30fps VIDEO——

タイトルとURLをコピーしました