LoginSignup
13
7

More than 5 years have passed since last update.

AWS MediaLiveでRTMPライブ配信を行う

Posted at

やること

MediaLiveでRTMP配信を受けて、MediaPackageでHLSを視聴します。

手順
1. MediaPackageでChannelを2個作成する
2. MediaLiveでInputを作成する
3. MediaLiveでChannelを作成する
4. 配信アプリでRTMP配信を行う
5. MediaPackageで視聴を行う

  • AWS MediaLive
    RTMPを受信します。
  • AWS MediaPackage
    HLSを配信します。
  • RTMP (Real Time Messaging Protocol)
    Adobe社。リアルタイムに特化した動画配信プロトコル。ポート1935。
  • HLS (HTTP Live Streaming)
    Apple社。拡張子m3u8のプレイリストファイルを介して動画配信が可能。MacのSafari、WinのEdgeで直接視聴できます。

Memo
MediaLiveは強制的に2個作成されます。A=100,B=0でも、A=50,B=50でも料金は同じです。たぶん予備が目的かと思います。AWSは様々な理由で止まります。もちろんプロバイダーやローカルの原因もあります。障害が起きて1時間後に復旧しましたではライブ配信は取り返しがつかないので、こういう切り分け可能な仕様にしたのだと思います。この2個セットという発想が好きです。

1.MediaPackageでChannelを2つ作成する



  • MediaPackageでチャンネルを2つ作ります。
  • URL,Username,Passwordの3つを控えます。

2.MediaLiveでInputを作成する

  • Input Type
    RTMP(push)を選びます。
  • Input security group
    許可するIPアドレス。(例 123.456.xx.xx/32、0.0.0.0/0)
  • Input destinations
    これがURLとKEYになります。上記の例では rtmp://~/test/test1 となり、配信アプリにはURL=rtmp://~/test、KEY=test1 になります。 もしIP縛りがないとき、URLを長くすればいいと思います。

3.MediaLiveでChannelを作成する

  • Input
    • IAM role
      MediaLiveAccessRole(あるもの)
    • Input
      作ったもの
    • Channel template
      HTTP Live streaming
  • Output
    • HLS group destination A
      URL,User,PassはMediaPackageで作ったもの。一度Parameterを作成することになります。同様にBも作成。
    • Output
      ここでは2本にしました。(960x540 1M, 1280x720 1M)

Memo
作成された MediaLive Parameter を削除したい場合、[Ec2]-[パラメーターストア]から削除できます。

4.配信アプリでRTMP配信を行う

  • MediaLiveのChannelをStartさせます。
    注:MediaLiveは停止(idol)でも月1500円ほどかかります。

  • フリーソフト OBS を使う場合(Mac or Win)
    rtmp://~/test/test1 のとき、URL=rtmp://~/test、KEY=test1 となります。

  • iOSアプリ It's my Live を使う場合(iPhone or iPad 無料)
    設定画面でRTMPを選び、URLとKEYを入力します。右側の配信ボタンを押し、上部の表示でRtmpの数値が出ればOKです。

5.MediaPackageで視聴を行う

  • MediaPackageでEndpointを作成して、Playで視聴ができます。

トラブルシューティング

  • セキュリティで許可するIPアドレスを変更しても効かない場合があります。そのときはMediaLiveのInputとChannelを作り直してみてください。
  • MediaLiveのHealthで、配信ができていなくてもNetwork In,Outは微妙に増えるので、惑わされないでください。(成功するとケタ違いに増えます)
  • 配信アプリを変えたらなぜか配信ができなくなったとき、一度ChannelをStop,Startするといいかもしれません。
  • MediaLiveのChannelをStopしても、月額1500円ほどかかることに注意してください。

これから

AWS MediaLiveを使えば、大手に頼らず中小でもライブ配信ができます。これで月額5千円のサービスを始められたらいいなと思ってましたが、サポート体制を考えると儲けが微妙だ。それならAWSの構築代行の方がいいかもです。
私の次のテーマは機械学習とメタ情報の自動生成。このあたりと組み合わせると、次のステップへ進めるかもしれません。

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