0
0

AWS MediaLiveでSRTプロトコルを試してみた

Posted at

SRTとは
SRT(Secure Reliable Transport)は映像配信用プロトコルです。
ざっくりいうと RTMP より性能がいい方式です。
RTMPのポート番号は1935に対してSRTのポート番号は自由です。本書では5000を使います。
注:SRTは字幕のSRT (SubRip Subtitle) もあるので注意。
注:SRT自体はプロトコルなのでファイル転送も可能です。

Caller と Listener
SRT には Caller と Listener があります。
送受信で一方が Call だともう一方は Listen になります。両方 Call はないです。
注:Caller,Listener の他に Rendezvous があります。

AWS の設定

① AWS MediaConnect で Flow を作成
② AWS MediaLive で Input を作成
③ AWS MediaConnect で Output を作成

AWS MediaConnect で Flow を作成

項目
Source type Standard source
Protocol SRT listener
Allowlist CIDR block 自宅のグローバルIP(xx.xx.xx.xx/32)
Inbound port 5000
Maximum bitrare 4000000(4Mbps)
Maximum latency 5000(5秒)

AWS MediaLive で Input を作成

項目
Input type Media Connect
Input class SINGLE_INPUT(SINGLEにしないとFlowが2つ必要)
Flow A ARN 先ほど作成したもの

AWS MediaConnect で Output を作成

項目
Source type Standard output
Protocol SRT listener
port 5001
CIDR allow list 自宅や会社のグローバルIP(xx.xx.xx.xx/32)

START

IPアドレスを控えてください。
配信側 srt://xxx.xxx.xxx.xxx:5000
受信側 srt://xxx.xxx.xxx.xxx:5001
Start を押すと開始します。

配信アプリ It's my Live

自作アプリ「It's my Live」を使います。
iOS (Apple Store), Android (Google Play) で公開中。
良いニュース:2024年1月にAndroidも可能になりました!(以前はiOSのみ)
悪いニュース:機能面はよわよわです(SwiftからFlutterに乗り換え)

Google Play で検索しても出ない場合は下記URL
Google Play - It's my Live

It's my Live の設定

URLに srt://xxx.xxx.xxx.xxx:5000 を登録します。
手元の iPhone と Android の両方でテストして配信できました。
注:スマホの自動ロックで停止するので注意してください。

プレイヤー VLC

ネットワークにURLを入れます。
無事に再生することができました。

SRTプロトコルは流行るのか

配信アプリ「It's my Live」が SRT に対応したのが2019年5月です。令和元年の10連休に頑張りました。それから約5年どうなんでしょうね。
どうやら Youtube と Haivision社に動きがあるようです。もし Youtube が対応するならワンチャンありますね。う~ん頑張ってプレイヤーも作るかな。
映像配信の仕事をしているとトラブルの8割はネットワークなんですよね。そこを解決するアプリを作りたい。

ソース
https://github.com/koji4104/ItsMyLive

昔のMediaLiveの記事(2018年06月)
https://qiita.com/koji4104/items/c1b4ddd27fa0f9c011d9

0
0
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
0
0