4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VLCでマルチキャストソースとマルチキャストレシーバを動かす(SSM+IGMPv3)

Last updated at Posted at 2023-06-11

はじめに。

 VLCメディアプレイヤーには,マルチキャストソースとしてマルチキャストパケットを配信する機能と,マルチキャストレシーバとしてマルチキャストパケットを受信する機能があります。これらの機能を活用し,ネットワーク内でマルチキャストパケットの疎通をテストしてみます。

この記事で取り扱わない内容

  • ルータ・スイッチなどのネットワーク機器の設定。
  • マルチキャストの概要的な知識。
  • マルチキャストルーティングプロトコル(PIM-SMとかPIM-DM)
  • CODECの種類

準備する環境

  • マルチキャストルーティング(PIM-SMとSSM)が有効になっているネットワーク(ルータ,スイッチ等)。
  • VLCメディアプレイヤー(以下,VLC。今回はubuntu用3.0.18を利用)
  • マルチキャストソース用PC(VLCが動くなら,WindowsでもUbuntuでも。)
  • マルチキャストレシーバ用PC(VLCが動くなら,WindowsでもUbuntuでも。)

マルチキャスト配信する(マルチキャストソース用PCの操作)

  • 配信用のMP4ファイルを拾ってきます。今回はここからダウンロードしました。

  • VLCを起動します。

  • VLCの設定で、送出パケットのTTLを変更し(32とか64ぐらいにしておけば十分)、VLCを再起動します。
    image.png

  • 「メディア」→「ネットワークストリームを開く」
    image.png

  • 「ネットワーク」タブから「ファイル」タブへ移動
    image.png

  • 「ファイル」タブで「+追加」をクリック
    image.png

  • ファイル選択画面から、MP4ファイルを指定

  • 「再生」右の▼をクリックし、「ストリーム再生」を選択。ウィザードが開始されます。
    image.png

  • 「入力元」はそのまま「次へ」をクリック。
    image.png

  • 「出力先の設定」の「新しい出力先」で「RTP/MPEG Transport Stream」を選択し、「追加」をクリック
    image.png

  • 「アドレス」にグループアドレス(配信先のマルチキャストIPアドレス)を入力し「次へ」をクリック
    image.png

  • 「トランスコーディング」では、「トランスコーディングを有効にする」のチェック有、プロファイルを「Video - H.264+MP3(TS)」を選択し「次へ」をクリック。
    image.png
    -「オプション設定」で「ストリーム」をクリックすると、マルチキャスト配信が始まります。
    image.png

  • ループボタンを押しておくと、エンドレス(ループ再生)でマルチキャスト配信します。
    image.png

IGMPv3でマルチキャスト受信する(マルチキャストレシーバ側)

  • ラストホップルータでSSM(Source Specific Multicast)が有効化されている必要があります。
  • VLCを起動します。
  • 「メディア」→「ネットワークストリームを開く」
    image.png
  • 「ネットワークURL」に、「rtp://ソースIPアドレス @ グループアドレス」を入力します。例えば、172.16.90.21のマルチキャストソースから232.1.1.1宛のマルチキャストパケットを受信する場合には、「rtp://172.16.90.21@232.1.1.1」です。
    image.png
    -「再生」をクリックすると、マルチキャスト配信された動画が再生されます。
  • Wiresharkでキャプチャすると、レシーバからIGMPv3 Membership Reportが送信されたことが確認できます。
    image.png

注意点

  • VLCのマルチキャストパケットはTTLがデフォルトで1です。なので,そのままだとルータを越えてくれません。ルータ越えする場合には、設定でTTLを増やす必要があります。
  • VLCではIGMPv2を明示的に使うことはできないようです。VLCの機能というより、OSがIGMPv3を使ってしまうようです。WindowsXP(多分それ以降も)では、IGMPv3が標準のようです。レジストリを書き換えればIGMPv2を使えるようですが、そこまでしてIGMPv2を使う必要もないでしょう…

参考資料

  • 詳解マルチキャスト(ソフトバンククリエイティブ)
4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?