ライブメディアのストリーミング(HTTP)

HTTP 経由でのライブストリーミングの前提条件

HTTP Dynamic Streaming(HDS)と HTTP Live Streaming(HLS)を使用して、HTTP 経由でライブストリームをクライアントに配信するには、Flash Media Server 上の HTTP Live Packager サービス(rootinstall/applications/livepkgr)にストリームをパブリッシュします。livepkgr サービスはストリームを取り込み、フラグメントにパッケージ化し、フラグメントをリアルタイムで Flash クライアントと iOS クライアントに配信します。

これらのチュートリアルを実行するには、次のソフトウェアを使用します。

  • Flash Media Server 4.5

  • Flash Media Live Encoder

    注意: Windows の Flash Media Live Encoder では、AAC エンコーディングはサポートされていません。AAC のサポートを追加するには、MainConcept AAC Encoder を購入してください。
  • (Adobe HTTP Dynamic Streaming)Flash Media Server サンプルビデオ Player(Strobe Media Playback を使用)および Adobe Flash Player 10.1

  • (Apple HTTP Live Streaming)iOS 3.0 以降のデバイスまたは Safari 4.0 や QuickTime X を含む Mac OS 10.6

詳細については、サポートされているクライアント、エンコーダー、コーデックおよびファイル形式構築済みの Media Playerを参照してください。

HTTP 経由での単一のライブストリームのパブリッシュおよび再生

  1. Flash Media Server 4.5 をインストールし、Apache HTTP Server のインストールを選択します。

  2. Flash Media Live Encoder をインストールし、絶対時間を使用するように設定します。

    1. Flash Media Live Encoder を閉じます。

    2. Flash Media Live Encoder の rootinstall¥conf¥config.xml ファイルをテキストエディターで開きます。

      Windows のデフォルトのインストール場所は C:¥Program Files¥Adobe¥Flash Media Live Encoder 3.2 です。

      Mac OS のデフォルトのインストール場所は Macintosh HD:Applications:Adobe:Flash Media Live Encoder 3.2 です。

    3. タグ //flashmedialiveencoder_config/mbrconfig/streamsynchronization/enable を true に設定します。

      <flashmedialiveencoder_config> 
          <mbrconfig> 
              <streamsynchronization> 
                  <!-- "true" to enable this feature, "false" to disable.                    --> 
                  <enable>true</enable>
    4. ファイルを保存します。

  3. ライブストリームを Flash Media Server にパブリッシュするには、Flash Media Live Encoder を開始して次の操作を行います。

    1. Encoding Options パネルの Preset ポップアップメニューから、「High Bandwidth (800 Kbps) — H.264.」を選択します。「Audio Format」で、「AAC」を選択します。

      注意: Windows の Flash Media Live Encoder では、AAC エンコーディングはサポートされていません。AAC のサポートを追加するには、MainConcept AAC Encoder を購入してください。
      フルサイズのグラフィックを表示
      Flash Media Live Encoder エンコーディングオプションパネル
    2. 「Format」の隣のレンチをクリックして、Advanced Encoder Settings を開き、次の操作を実行します。

      • 「Profile」で「Main」を選択します。

      • 「Level」で「3.1」を選択します。

      • 「Keyframe Frequency」で「4」または applications/livepkgr/events/_definst_/liveevent/Event.xml ファイルの <FragmentDuration> の倍数を選択します。<FragmentDuration> のデフォルト値は 4000 ミリ秒です。

        注意: プロファイルおよびレベルサポートの詳細については、サポートされているファイル形式とコーデックを参照してください。
        Flash Media Live Encoder の Advanced Encoder Setting
    3. 「FMS URL」テキストボックスに次のように入力します。

      rtmp://localhost/livepkgr
      注意: RTMP プロトコルを使用して、コンテンツを Flash Media Server 上の livepkgr アプリケーションにストリーミングします。“localhost” に IP アドレスまたはドメイン名を代用することができます。
    4. 「Stream」テキストボックスに次のように入力します。

      livestream?adbe-live-event=liveevent
      注意: applications/livepkgr/main.asc ファイルにはこの値が必要です。
    5. 「Save to File」の選択を解除します。

    6. 「Start」をクリックします。

  4. (Adobe HTTP Dynamic Streaming)Flash Media Playback でメディアを再生するには、次の操作を行います。

    1. Flash Media Playback を Web ブラウザーで開きます。

      http://www.osmf.org/configurator/fmp/

    2. 注意: Flash Media Playback では、HTTP Dynamic Streaming をサポートするために Flash Player 10.1 が必要です。
    3. 「Video Source」に次のように入力します。

      http://localhost/hds-live/livepkgr/_definst_/liveevent/livestream.f4m

      要求 URL の詳細については、HTTP 経由でライブストリームをパブリッシュおよび再生するための URLを参照してください。

    4. 「Are you using HTTP Streaming or Flash Access 2.0?」で「Yes」を選択します。

    5. 「Preview」をクリックします。「Play」をクリックします。

    フルサイズのグラフィックを表示
    Flash Media Playback で再生されている HDS ライブストリーム
  5. (Adobe HTTP Dynamic Streaming)Strobe Media Playback でメディアを再生するには、次の操作を行います。

    1. Web ブラウザーで Flash Media Server のサンプルビデオ Player を開きます。rootinstall/samples/videoPlayer/videoplayer.html を参照します。

    2. 「STREAM URL」に、次のように入力します。

      http://localhost/hds-live/livepkgr/_definst_/liveevent/livestream.f4m

      要求 URL の詳細については、HTTP 経由でライブストリームをパブリッシュおよび再生するための URLを参照してください。

    3. 「LIVE」を選択して「PLAY STREAM」をクリックします。

    フルサイズのグラフィックを表示
    Flash Media Server サンプルビデオ Player で再生されている HDS ライブストリーム
  6. (Apple HTTP Live Streaming)次の URL を使用します。

    http://10.0.1.11/hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

    フルサイズのグラフィックを表示
    iPad の Safari で再生されている HLS ライブストリーム

    この URL を使用して様々な iOS デバイス、QuickTime および Safari を処理する場合の詳細については、「iOS Reference Library」の「HTTP Live Streaming Overview」を参照してください。

    要求 URL の詳細については、HTTP 経由でライブストリームをパブリッシュおよび再生するための URLを参照してください。

注意: “localhost” または “10.0.1.11” は、Flash Media Server をホストしているコンピューターのドメイン名または IP アドレスに置き換えます。Flash Media Server ホスティングプロバイダーを使用している場合は、プロバイダーからこの値が提供されます。

HTTP 経由でのライブマルチビットレートストリームのパブリッシュおよび再生

  1. Flash Media Server 4.5 をインストールし、Apache HTTP Server のインストールを選択します。

  2. Flash Media Live Encoder をインストールし、絶対時間を使用するように設定します。

    1. Flash Media Live Encoder を閉じます。

    2. Flash Media Live Encoder の rootinstall¥Conf¥config.xml ファイルをテキストエディターで開きます。

    3. タグ //flashmedialiveencoder_config/mbrconfig/streamsynchronization/enable を true に設定します。

      <flashmedialiveencoder_config> 
          <mbrconfig> 
              <streamsynchronization> 
                  <!-- "true" to enable this feature, "false" to disable.                    --> 
                  <enable>true</enable>
    4. ファイルを保存します。

  3. rootinstall/applications/livepkgr/events/_definst_/liveevent を参照し、次の操作を行います。

    • Event.xml ファイルを次のように編集します。

      <Event> 
          <EventID>liveevent</EventID> 
              <Recording> 
                      <FragmentDuration>4000</FragmentDuration> 
                      <SegmentDuration>16000</SegmentDuration> 
                      <DiskManagementDuration>3</DiskManagementDuration> 
              </Recording> 
      </Event> 
    • Manifest.xml ファイルを liveevent フォルダーから削除するか、名前を変更します。

  4. (Adobe HTTP Dyanmic Streaming)マルチビットレートストリーミングでは、Flash Media Player と AIR Media Player で、各ライブストリームの場所とビットレートを含む F4M マニフェストファイルを要求します。このタイプの F4M ファイルは、セットレベルマニフェスト と呼ばれます。セットレベルマニフェストを作成するには、次の操作を行います。

    1. ブラウザーで rootinstall/tools/f4mconfig/configurator/f4mconfig.html を開きます。

    2. f4m ファイルタイプを選択します。

    3. ストリーム URI には、ベース URI に対する絶対パスまたは相対パスのいずれでも指定できます。ベース URI に次のように入力します。

      http://localhost/hds-live/livepkgr/_definst_/liveevent

    4. 各ストリームについて次の情報を入力し、「Add」をクリックします。

      ストリーム URI

      ビットレート

      livestream1.f4m

      150

      livestream2.f4m

      500

      livestream3.f4m

      700

      フルサイズのグラフィックを表示
      Set-level F4M/M3U8 File Generator のセットレベル F4M ファイル
    5. ファイルをプレビューするには、「View Manifest」をクリックします。マニフェストファイルは次のようになります。

      <manifest xmlns="http://ns.adobe.com/f4m/2.0"> 
          <baseURL>http://localhost/hds-live/livepkgr/_definst_/liveevent/</baseURL> 
          <media href="livestream1.f4m" bitrate="150"/> 
          <media href="livestream2.f4m" bitrate="500"/> 
          <media href="livestream3.f4m" bitrate="700"/> 
      </manifest>
    6. 「Save Manifest」をクリックして、ファイルを liveevent.f4m という名前で rootinstall/webroot に保存します。

      Media Player で、Web サーバーからこのファイルを要求します。このチュートリアルでは、このファイルを rootinstall/webroot に保存しますが、Web サーバー上のどの場所からでもこのファイルを配信できます。このファイルは、Flash Media Server に存在する必要はありません。このファイルには名前を付けることもできます。

  5. (Apple HTTP Live Streaming)iOS デバイスで、各ストリームの場所、ビットレートおよびコーデック(オプション)を含む M3U8 バリアント再生リストファイルを要求します。M3U8 ファイルを作成するには、次の操作を行います。

    1. Set-level F4M/M3U8 File Generator ツールが開いていない場合は、rootinstall/tools/f4mconfig/configurator/f4mconfig.html をダブルクリックしてブラウザーで開きます。

    2. 「m3u8」を選択します。

    3. 各ストリームのストリーム URI とビットレートを入力します。ストリーム URI には、絶対パスまたは相対パスのいずれでも指定できます。相対パスの場合は、m3u8 ファイルに対する相対パスになります。

      注意: M3U8 ファイルを生成している場合は、ベース URI を使用できません。

      このチュートリアルでは、次のストリーム URI 設定を使用します。

      ストリーム URI

      ビットレート

      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream1.m3u8

      150

      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream2.m3u8

      500

      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream3.m3u8

      700

      フルサイズのグラフィックを表示
      Set-level F4M/M3U8 File Generator のセットレベル M3U8 ファイル
    4. m3u8 ファイルの場合は、各ストリームにオプションでコーデックを追加できます。

      1 つのストリームがオーディオのみの場合は、オーディオコーデックを指定します。マニフェスト内のその他のストリームにはオーディオとビデオのコーデックを指定します。オーディオのみのストリームのパブリッシュ(HLS)を参照してください。

    5. ファイルを表示するには、「View Manifest」をクリックします。m3u8 ファイルは次のようになります。

      #EXTM3U 
      #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=150000 
      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream1.m3u8 
      #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=500000 
      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream2.m3u8 
      #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=700000 
      http://localhost/hls-live/livepkgr/_definst_/liveevent/livestream3.m3u8
    6. ファイルを liveevent.m3u8 という名前でフォルダー rootinstall/webroot に保存します。

      Media Player で、Web サーバーからこのファイルを要求します。このチュートリアルでは、このファイルを rootinstall/webroot に保存しますが、Web サーバー上のどの場所からでもこのファイルを配信できます。このファイルは、Flash Media Server に存在する必要はありません。

  6. ライブストリームを Flash Media Server にパブリッシュするには、Flash Media Live Encoder を開始して次の操作を行います。

    1. Encoding Options パネルの Preset ポップアップメニューから、「Multi Bitrate - 3 Streams (1500 Kbps) - H.264」を選択します。「Audio Format AAC」を選択します。

      注意: Windows の Flash Media Live Encoder では、AAC エンコーディングはサポートされていません。AAC のサポートを追加するには、MainConcept AAC Encoder を購入してください。
    2. 「Format」の隣のレンチをクリックして、Advanced Encoder Settings を開きます。「Keyframe frequency」で「4 seconds」を選択します。

      注意: この値は、applications/livepkgr/events/_definst_/liveevent/Event.xml ファイルの <FragmentDuration> の値と一致します。<FragmentDuration> の値はミリ秒単位です。
    3. 「Bit Rate」で「150」、「500」および「700」を選択します。

    4. 「FMS URL」テキストボックスに次のように入力します。

      rtmp://localhost/livepkgr
      注意: このアプリケーションは Flash Media Server と共にインストールされ、main.asc ファイルおよびライブ HTTP Dynamic Streaming 用の設定ファイルを含みます。
    5. 「Stream」テキストボックスに次のように入力します。

      livestream%i?adbe-live-event=liveevent
      注意: applications/livepkgr/main.asc ファイルにはこの値が必要です。Flash Media Live Encoder では変数 %i を使用して、複数のストリーム名(livestream1、livestream2、livestream3 など)を作成します。別のエンコーダーを使用するには、livestream1?adbe-live-event=liveeventlivestream2?adbe-live-event=liveevent などの独自の一意のストリーム名を指定します。
    6. 「Save to File」の選択を解除します。

    7. 「Start」をクリックします。

  7. (Adobe HTTP Dynamic Streaming)Flash Media Playback では、セットレベルマニフェストファイルはサポートされていません。メディアを再生するには、Strobe Media Playback を使用します。Strobe Media Playback は、Flash Media Server と共にインストールされるサンプルビデオ Player で使用されます。

    1. videoPlayer ディレクトリを rootinstall/samples/videoPlayer から rootinstall/webroot にコピーします。

    2. Web ブラウザーで次のサンプル Player を参照します。

      http://localhost/videoPlayer/videoplayer.html

    3. 「Video Source」に次のように入力します。

      http://localhost/liveevent.f4m

  8. (Apple HTTP Live Streaming)iOS で、Safari に次の URL を入力します。

    http://localhost/liveevent.m3u8

    この URL を使用して様々な iOS デバイス、QuickTime および Safari を処理する場合の詳細については、「iOS Reference Library」の「HTTP Live Streaming Overview」を参照してください。

注意: localhost は、Flash Media Server をホストしているコンピューターのドメイン名または IP アドレスに置き換えることができます。Flash Media Server ホスティングプロバイダーを使用している場合は、プロバイダーからこの値が提供されます。

オーディオのみのストリームのパブリッシュ(HLS)

セルラーネットワーク経由でストリームを配信するには、ストリームの 1 つがオーディオのみである必要があります。詳細については、「HTTP Live Streaming Overview」を参照してください。

オーディオのみのストリームをパブリッシュするには、Flash Media Encoder Stream フィールドに次を入力します。

livestream%i?adbe-live-event=liveevent&adbe-audio-stream-name=livestream1_audio_only&adbe-audio-stream-src=livestream1

エンコーダーが、各ストリームに個別のクエリ文字列を指定する場合は、次に示すように、変数 %i の代わりに個別のストリーム名を使用します。

livestream1?adbe-live-event=liveevent&adbe-audio-stream-name=livestream1_audio_only

livestream2?adbe-live-event=liveevent&adbe-audio-stream-name=livestream2_audio_only

注意: 値はイタリックで使用することも独自の値で置換することもできます。ただし、デフォルトのライブイベント名は「liveevent」です。

パラメーター

説明

adbe-audio-stream-name

オーディオのみのストリームの名前。

adbe-audio-stream-src

オーディオのみのストリームに対してオーディオを抽出するストリームの名前。このパラメーターを指定しない場合は、adbe-audio-stream-name パラメーターが指定されたストリームが使用されます。

オーディオのみのストリームの使用時にセットレベルのバリアント再生リストを生成するには、オーディオのみのストリームのオーディオコーデックを指定します。オーディオとビデオを含むストリームのオーディオとビデオのコーデックを指定します。Set-level F4M/M3U8 File Generator の使用方法の詳細については、HTTP 経由でのライブマルチビットレートストリームのパブリッシュおよび再生を参照してください。

HTTP 経由でライブストリームをパブリッシュおよび再生するための URL

重要: HDS 要求 URL の形式が Flash Media Server 4.5 で変更されました。Apache httpd.conf ファイルは、4.0 形式の要求を 4.5 形式にリダイレクトします。パス /live/events/livepkgr/events は、パス /hds-live/livepkgr にリダイレクトされます。

次の URL を使用して、HTTP 経由でのストリーミング用に単一のライブストリームを Flash Media Server にパブリッシュします。

rtmp://fms-ip-or-dns/livepkgr/livestream?adbe-live-event=liveevent

次の URL を使用して、アダプティブビットレートストリーミング用に複数のライブストリームを Flash Media Server にパブリッシュします。

rtmp://fms-ip-or-dns/livepkgr/livestream%i?adbe-live-event=liveevent

注意: RTMP 経由でストリームをパブリッシュしてください。クライアントでは HTTP 経由でストリームが再生されます。

次の URL を使用して、ライブストリームを HTTP 経由で再生します。

Client

単一ストリームまたはアダプティブビットレート

要求 URL

Adobe HDS

単一ストリーム

http://<fms-dns-or-ip>/hds-live/livepkgr/<instname>/<eventname>/<streamname>.f4m

Apple HLS

単一ストリーム

http://<fms-dns-or-ip>/hls-live/livepkgr/<instname>/<eventname>/<streamname>.m3u8

Adobe HDS

アダプティブビットレート

Media Player は、次に示すセットレベルマニフェストファイルを要求します。

http://<webserver-dns-or-ip>/<set-level-manifest>.f4m

セットレベルマニフェストファイルには、各ライブストリームの URL が次の形式で含まれます。

http://<fms-dns-or-ip>/hds-live/livepkgr/<instname>/<eventname>/<streamname>.f4m

Apple HLS

アダプティブビットレート

Media Player は、次に示すセットレベルのバリアント再生リストファイルを要求します。

http://<webserver-dns-or-ip>/<set-level-variant-playlist>.m3u8

セットレベルのバリアント再生リストファイルには、各ライブストリームの URL が次の形式で含まれます。

http://<fms-dns-or-ip>/hls-live/livepkgr/<instname>/<eventname>/<streamname>.m3u8

重要: HTTP 経由でストリーミングメディアを再生するには、Media Player でマニフェストファイル(F4M または M3U8)を要求します。サーバーでリアルタイムでマニフェストファイルが生成されます。ファイルはディスクには書き込まれないので、サーバーでこのファイルを表示することはできません。

パス /hds-live は、Apache httpd.conf ファイルの <Location> ディレクティブであり、Adobe HTTP Dynamic Streaming(HDS)のコンテンツをパッケージ化するようにサーバーに伝えます。

パス /hls-live は、Apache httpd.conf ファイルの <Location> ディレクティブであり、Apple HTTP Live Streaming(HLS)のコンテンツをパッケージ化するようにサーバーに伝えます。

アダプティブストリーミングでは、クライアントでセットレベルマニフェストを要求します。HDS の場合、このファイルは .f4m ファイルになります。HLS の場合、このファイルは .m3u8 ファイルになります。セットレベルマニフェストは、どの Web サーバーにも置くことができます。単一セットのライブストリームに対し、複数のセットレベルマニフェストファイルを作成できます。

セットレベルマニフェストには、各ライブストリームの F4M マニフェストファイル(HDS)と M3U8 バリアント再生リスト(HLS)へのパスが含まれています。HTTP のストリームをパッケージ化するようにサーバーに伝えるため、パスは、/hds-live または /hls-live で始まる必要があります。

注意: セットレベルマニフェストを要求する URL に /hds-live または /hls-live を含めないでください。

<Location> ディレクティブ設定およびコンテンツの場所は Apache httpd.conf ファイルで設定できます。詳細については、「コンテンツストレージ(HDS および HLS)」を参照してください。

Flash Media Server 4.0 と Flash Media Server 4.5 での HTTP ライブ URL の相違点

HTTP 経由でライブストリームを再生するデフォルトの URL が Flash Media Server 4.5 で変更されました。Flash Media Server 4.0 では、ライブストリームを再生する URL は http://<servername>/live/events/livepkgr/events/<eventname> でした。Flash Media Server 4.5 Apache httpd.conf ファイルは、301 リダイレクトを使用して、4.0 URL を使用する要求を 4.5 URL にリダイレクトします。

詳細については、Flash Media Server 4.0 と Flash Media Server 4.5 での HTTP Dynamic Streaming の相違点を参照してください。

DVR の設定(HDS)

サーバーでの DVR の設定

  1. ブラウザーで、次に示す Set-level F4M/M3U8 File Generator を開きます。rootinstall/tools/f4mconfig/configurator/f4mconfig.html

  2. Stream URI と Bitrate の値を入力するのに加え、DVR Window Duration の値を入力します。この値は、ライブポイントの前に、可視コンテンツの量を分単位で設定します。

    次のガイドラインを使用して、次の Window Duration を設定します。

    • Window Duration を 0 より大きい値に設定します。

      Window Duration を 0 に設定すると、ユーザー操作性を低下させる可能性があります。

    • -1 の値は、ライブポイントの後ろの利用可能な記録済みコンテンツが無制限であることを示しています。

  3. Event.xml ファイルで、DiskManagementDuration エレメントを設定して、サーバーがキャッシュするコンテンツ量を指定します。デフォルトで、サーバーは 3 時間分のコンテンツをキャッシュします。次の式を使用して、DiskManagementDuration の値に関連させて Window Duration の値を決定します。

    HDSWindowDuration <= (DiskManagementDuration - SegmentDuration)

    ディスク管理の詳細については、ディスク管理を参照してください。

DVR ストリームのパブリッシュ

Flash Media Live Encoder から DVR ストリームをパブリッシュするために、「Record」をクリックしたり「DVR Auto Record」をチェックしたりしないでください。ライブストリームをパブリッシュするときにのみストリームをパブリッシュしてください。

DVR ストリームの再生

Strobe Media Playback は、デフォルトで DVR ストリームをサポートします。

注意: Flash Media Playback では、セットレベルマニフェストファイルはサポートされていません。Flash Media Playback を使用するには、Manifest.xml ファイルを設定します。Manifest.xmlを参照してください。

スライディングウィンドウの設定(HLS)

サーバーでのスライディングウィンドウの設定

スライディングウィンドウは、Apple HTTP Live Streaming のストリームのシーク可能な部分です。クライアントは、スライディングウィンドウの長さを越えてシークすることはできません。HTTP Live Streaming クライアントは、スライディングウィンドウを使用してシークバーを設定します。

次のレベルでスライディングウィンドウを設定します。

レベル

設定ファイル

Server

rootinstall/Apache2.2/conf/httpd.conf

Application

rootinstall/applications/livepkgr/Application.xml

livepkgr アプリケーションは HTTP ストリーミング用のデフォルトアプリケーションです。このアプリケーションは、複製して名前を変更できます。

イベント

rootinstall/applications/livepkgr/events/_definst_/liveevent/Event.xml

liveevent フォルダーはデフォルトのライブイベントです。1 つのアプリケーション内に複数のライブイベントを作成できます。

次のパラメーターを使用します。

パラメーター

設定ファイル

説明

HLSSlidingWindowLength

httpd.conf

スライディングウィンドウでのシークに使用できる TS ファイルの数。

SlidingWindowLength

Application.xml と Event.xml

スライディングウィンドウでのシークに使用できる TS ファイルの数。

HLSMediaFileDuration

httpd.conf

ミリ秒単位の TS ファイルの長さ。

MediaFileDuration

Application.xml と Event.xml

ミリ秒単位の TS ファイルの長さ。

スライディングウィンドウ内の時間は次のとおりです。

HLSSlidingWindowLength * HLSMediaFileDuration 
SlidingWindowLength * MediaFileDuration

デフォルトでは、HLSSlidingWindowLength は 6 秒に、HLSMediaFileDuration は 8000 ミリ秒に設定されます。そのため、デフォルトでは、48 秒幅のウィンドウ内ですべての HLS ライブイベントをシークできます。

スライディングウィンドウは、ライブストリームの現在の位置に対応します。例えば、スライディングウィンドウが 15 分のデータを保持するように設定されていて、イベントが時間 0 で開始する場合、ライブストリームが 30 のとき、最後のシーク可能位置は 15 になります。

ライブイベント全体をシーク可能にするには、SlidingWindowLength または HLSSlidingWindowLength を 0 に設定します。ただし、これによってパフォーマンスに影響が出る場合があります。

スライディングウィンドウはディスクにキャッシュされるコンテンツの継続時間より小さくなるように設定します。Event.xml ファイルでは、DiskManagementDuration エレメントはサーバーがキャッシュするコンテンツ量を指定します。デフォルトで、サーバーは 3 時間分のコンテンツをキャッシュします。HLS スライディングウィンドウのサイズは次のようにする必要があります。

HLSSlidingWindow <= (DiskManagementDuration - SegmentDuration)

ディスク管理の詳細については、ディスク管理を参照してください。

イベントレベルでのスライディングウィンドウの設定

次の Event.xml ファイルは、単一の HLS ライブイベントに対し、1 時間のスライディングウィンドウを作成します。

<Event> 
    <EventID>liveevent</EventID> 
    <Recording> 
        <FragmentDuration>4000</FragmentDuration> 
        <SegmentDuration>400000</SegmentDuration> 
        <DiskManagementDuration>3</DiskManagementDuration> 
    </Recording> 
    <HLS> 
        <MediaFileDuration>8000</MediaFileDuration> 
        <SlidingWindowLength>450</SlidingWindowLength> 
    </HLS> 
</Event>

アプリケーションレベルでのスライディングウィンドウの設定

次の Application.xml ファイルは、livepkgr アプリケーション内のすべての HLS ライブイベントに対し、1 時間のスライディングウィンドウを作成します。

<Application> 
    <StreamManager> 
        <Live> 
            <AssumeAbsoluteTime>true</AssumeAbsoluteTime> 
        </Live> 
    </StreamManager> 
    <HLS> 
        <MediaFileDuration>8000</MediaFileDuration> 
        <SlidingWindowLength>450</SlidingWindowLength> 
    </HLS> 
</Application>

livepkgr アプリケーションを再ロードします。

サーバーレベルでのスライディングウィンドウの設定

次の Apache 設定は、HLSSlidingWindowLength450 に設定します。この設定は、サーバー上のすべての HLS ライブイベントに対し、1 時間のスライディングウィンドウを作成します。

... 
<IfModule hlshttp_module> 
<Location /hls-live> 
    HLSHttpStreamingEnabled true 
    HttpStreamingLiveEventPath "../applications" 
    HttpStreamingContentPath "../applications" 
    HLSMediaFileDuration 8000 
    HLSSlidingWindowLength 450 
    HLSFmsDirPath ".." 
    HLSM3U8MaxAge 2 
    HLSTSSegmentMaxAge -1 
    Options -Indexes FollowSymLinks 
</Location>

Apache HTTP Server を再起動します。

スライディングウィンドウによるストリームのパブリッシュ

スライディングウィンドウを使用してストリームをパブリッシュするようにエンコーダーを設定する必要はありません。

スライディングウィンドウによるストリームの再生

HTTP Live Streaming をサポートするデバイスは、デフォルトでスライディングウィンドウ機能をサポートします。

livepkgr サービスの複製

サーバーは livepkgr サービスのインスタンスを無制限の数サポートしています。

 rootinstall/applications/livepkgr フォルダーを applications フォルダー内で複製し、livepkgr2 などの新しい名前を付けます。この場合、新しい livepkgr サービスは rootinstall/applications/livepkgr2 に格納されます。

livepkgr サービスのインスタンスの数は、必要に応じていくつでも作成することができます。

livepkgr サービスでのサーバーサイドコードの変更

注意: Flash Media Streaming Server のサーバーサイドコードを記述することはできません。

 rootinstall/applications/livepkgr/main.far ファイルを削除し、rootinstall/samples/applications/livepkgr/main.asc ファイルに置き換えます。