LiveInstantly
  • 製品
  • 最新情報
    ブログ ニュース リリース
  • 会社概要
  • 日本語 (Japanese)
    • English
  • リソース
    • パートナー記事
      • ストリーミング業界の 2023 年のトレンド
      • ストリーミング プロトコル: 知っておくべきこと
      • WebRTC とは?
      • HLS とは?
      • CMAF とは?
      • MPEG-DASHとは?
      • IETF が低遅延 HLS を HLS 仕様に盛り込む
      • 低遅延 HLS とは?
    • ニュース
      • Wowza Streaming Engine 4.8.22 のリリース
      • MediaMelons 社とのパートナーシップについて
      • LiveInstantly のご紹介
    • ブログ
      • THEOplayer プレイヤーのデモ Web アプリ
      • Nuxt3 フレームワークの THEOplayer の実装例
      • Vue3 フレームワークの THEOplayer の実装例
      • ビデオストリーミング技術の紹介
      • Wowza Streaming Engine での HLS ストリーミング
      • Wowza Streaming Engine での MPEG-DASH ストリーミング
      • Wowza Streaming Engine を使ったライブストリーミング (3)
      • Wowza Streaming Engine を使ったライブストリーミング (2)
      • Wowza Streaming Engine を使ったライブストリーミング (1)
      • Wowza Streaming Engine を使った VOD ストリーミングのセットアップ
      • シンプルな Web プレイヤーの開発と展開
      • Wowza Streaming Engine に Let's Encrypt HTTPS 証明書をセットアップ
      • Wowza Streaming Engine のセットアップ
Tabel of Contents
  • はじめに
  • 手順1: ライブソースの入力セキュリティの設定 (省略)
  • 手順2: FFmpeg によるビデオファイルを使ったライブソースの入力
  • 手順3: SMIL ファイルの作成
  • 手順4: ライブストリーミング再生のテスト
  • まとめ
記事の分類
カテゴリ
  • Blog 13
  • CrossPosts 8
  • News 3
パートナー
  • irdeto 1
  • mediamelon 2
  • open-source 1
  • theo 5
  • wowza 18
タグ
  • business 1
  • certbot 1
  • company 1
  • dash.js 1
  • hls 1
  • hls.js 1
  • lets-encrypt 1
  • live 3
  • mpeg-dash 1
  • partnership 2
  • player 4
  • protocol 8
  • streaming 9
  • technical 21
  • trends 1
  • vod 1
  • wowza-streaming-engine 8
  1. ホーム
  2. リソース
  3. ブログ
  4. Wowza Streaming Engine を使ったライブストリーミング (2)

Wowza Streaming Engine を使ったライブストリーミング (2)

ブログ post
By 福島 茂之
作成: 2020年11月10日
最終更新: 2023年03月29日
カテゴリ:
  • Blog
パートナー:
  • wowza
タグ:
  • technical
  • live
  • wowza-streaming-engine
4分で読めます(目安)

はじめに

前回の記事 では FFmpeg で生成した RTMP ライブストリーム (シングルストリーム) をアップロードして、 Wowza Streaming Engine 経由でストリーミング配信を行うための設定を紹介しました。

この記事では、アダプティブストリーミングのライブストリーミング配信を行うための方法を紹介します。

作業の手順は、以下の通りです。

  1. ライブソースストリームの入力セキュリティの設定 (省略)
  2. FFmpeg によるビデオファイルを使った RTMP ライブソースの入力
  3. SMIL ファイルの作成
  4. ライブストリーミング再生のテスト

Big Buck Bunny サイト のビデオコンテンツをサンプルとして使うストリーミングコンテンツとします。

配信で利用する ビデオファイル はこちらを利用しました。

手順1: ライブソースの入力セキュリティの設定 (省略)

前回の記事 で作成した設定を利用するため、ここでは省略します。

手順の詳細は、前回の記事 を参照します。

手順2: FFmpeg によるビデオファイルを使ったライブソースの入力

以下のコマンドを実行し、ビデオファイルとスクリプトファイルをダウンロードします。 スクリプトファイルは Gist で公開しているシェルスクリプト を利用します。

cd ~/
mkdir videos
cd videos
curl -O https://download.blender.org/demo/movies/BBB/bbb_sunflower_1080p_30fps_normal.mp4
curl -LO https://gist.github.com/liveinstantly/7969cc44d14e96c98434cf4e8744a15f/raw/88d2a83c77e01ff32262db04f739e5755efbd6a5/ffmpeg_filelive_abr_transcode.sh
chmod +x ffmpeg_filelive_abr_transcode.sh
curl -O https://wowzademostorage1.blob.core.windows.net/transcoding/liveencode_spec_sample.txt

以下のコマンドを実行して、ビデオのトランスコードとライブソースの入力を行います。

このスクリプトでは、ビデオファイルから複数のビットレートのライブストリームを生成し、Wowza Streaming Engine に入力します。 生成する複数のライブストリームの詳細は liveencode_spec_sample.txt ファイルで定義します。

./ffmpeg_filelive_abr_transcode.sh -f ~/videos/bbb_sunflower_1080p_30fps_normal.mp4 -s ./liveencode_spec_sample.txt -h **[WowzaStreamingEngineのドメイン名]** -a **live** -u **[username]** -p "**[password]**"

liveencode_spec_sample.txt ファイルは、コンマ区切りのファイルになっていて、以下の情報が含まれています。

ストリーム名解像度(幅)解像度(高さ)ビットレートプロファイル
livestream112807201500high
livestream2960540800baseline
livestream3640360500baseline

ライブソースストリームの入力が開始したら、上部メニューバーの [Applications] をクリックし、 左のメニューから既定のライブアプリケーション (live) をクリックします。 次に、左のメニューから [Incoming Streams] をクリックすると、 livestream1, livestream2, livestream3 という名前のストリームが入力されていることが確認できます。

Live Incoming Stream

手順3: SMIL ファイルの作成

アダプティブストリーミング配信のために SMIL ファイルを作成します。

以下の SMIL ファイル (XML ファイル) を作成し /usr/local/WowzaStreamingEngine/content ディレクトリに追加します。

liveencode_spec_sample.txt ファイルの詳細情報に従って、以下のように SMIL ファイルを定義します。

<?xml version="1.0" encoding="UTF-8"?>
<smil title="Sample SMIL file for Live Adaptive Streaming">
  <body>
    <switch>
      <video height="720" src="livestream1" systemLanguage="eng" width="1280">
        <param name="videoBitrate" value="1500000" valuetype="data"></param>
        <param name="audioBitrate" value="128000" valuetype="data"></param>
      </video>
      <video height="540" src="livestream2" systemLanguage="eng" width="960">
        <param name="videoBitrate" value="800000" valuetype="data"></param>
        <param name="audioBitrate" value="64000" valuetype="data"></param>
      </video>
      <video height="360" src="livestream3" systemLanguage="eng" width="640">
        <param name="videoBitrate" value="500000" valuetype="data"></param>
        <param name="audioBitrate" value="64000" valuetype="data"></param>
      </video>
    </switch>
  </body>
</smil>

手順4: ライブストリーミング再生のテスト

手順2でライブストリームの入力が完了したら、ライブストリームの配信ができる状態になります。

ライブストリームの再生 URL は以下のように構成されます。

ストリーミング形式URL
HLShttps://[WowzaStreamingEngineのドメイン名]/[アプリケーション名]/smil:[SMILファイル名]/playlist.m3u8
DASHhttps://[WowzaStreamingEngineのドメイン名]/[アプリケーション名]/smil:[SMILファイル名]/manifest.mpd

[アプリケーション名] は、この例では live となります。

[SMILファイル名] は、この例では adaptivelivestream となります。

Web プレイヤー を使って、再生のテストを行います。

ライブストリーム再生テスト

まとめ

この記事では、FFmpeg で生成したマルチビットレートの RTMP ライブストリームをアップロードして、 Wowza Streaming Engine 経由でストリーミング配信を行うための設定を紹介しました。

Wowza Streaming Engine を利用することで、RTMP, RTSP, SRT 等のライブストリームを Apple HLS, MPEG-DASH などの ストリーミング形式に変換することができるようになります。また、CDN と組み合わせを行うことで大規模な HTTP ベースの アダプティブストリーミング配信を実現することも可能となります。

  • 新しい記事
  • 古い記事
  1. ホーム
  2. リソース
  3. ブログ
  4. Wowza Streaming Engine を使ったライブストリーミング (2)
  • LiveInstantly 合同会社
  • ライブビデオストリーミング配信ソリューションにより、お客様のビジネスのデジタルトランスフォーメーションを推進します
  • sales@liveinstantly.com
リンク
  • 製品
  • 会社概要
製品
  • Wowza
  • THEO
  • Irdeto
最新情報
  • ニュース リリース
  • ブログ
Copyright © 2020-2022 LiveInstantly, LLC. All rights reserved.
  • お問い合わせ
  • |
  • プライバシーポリシー
  • |
  • English