Cloudflare StreamでライブストリーミングのIngest先に独自ドメインを設定できるようになりました!

デフォルトではStream LiveのIngest先ドメインは「live.cloudflare.com」ですが、ここに独自ドメインを設定できるようになりました。ブランディングに加えプラットフォームの移行の簡略化も見据えたアップデートとなります。
2022.05.17

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。先週、CloudflareではPlatform Weekと題して様々な発表を行っていました。本エントリではこの中でもCloudflare Streamについての発表をあつかいます。(最後に「おまけ」としてPlatform WeekでのCloudflare Stream関連の発表を振り返っています。)Stream Live利用時の映像打ち上げ先のドメインについて、これまでのlive.cloudflare.comではなく独自ドメインが利用可能になりました。

Streaming Softwareに設定する映像の打ち上げ先(Ingest)ドメイン、これまではlive.cloudflare.comで固定となっていました。ライブストリーミングを視聴するユーザに見えるドメイン部分は、WebサイトにStream Playerをiframeで埋め込むなどでこれまでも独自ドメインを使った運用が可能でしたが、今回の打ち上げ先となるIngestドメインについてもlive.cloudflare.comへのCNAMEレコードを作成することで独自ドメインが利用できるようになりました。

独自のIngestドメインの利用については、映像の作成者やストリーミングを自ら行いたいといったユーザへのブランディングでの利点が挙げられます。また独自Ingestドメインを利用することで、ベンダーロックインを避けストリーミングサーバ(プラットフォーム)の移行が容易になります。(現在は未対応ですが、今後のロードマップに独自Stream Keyの利用もあるようです。ここまでできるとIngest先プラットフォームを意識せずDNSのレコード変更だけで移行が可能になりそうですね。)

なお独自Ingestドメインの使用にあたってはDNSへのCNAMEレコード登録のみではなく、Cloudflare Streamで使用するドメインを登録(追加)する作業が必要になります。以下で実際にドメインを追加し、独自Ingestドメインでライブストリーミングができることを確認していきます。

Stream LiveのIngestドメインを独自ドメインにしてみた

それでは実際にIngestのドメインを独自ドメインに設定してみたいと思います。ドメインの設定はCloudflareでゾーン管理しているドメインのほか、外部DNSで管理しているドメインも利用可能なようです。今回はAmazon Route 53でゾーン管理しているmydomain.tokyoドメインを利用しました。

まずはCloudflareのダッシュボード、Streamの「ライブ入力」のページで設定ボタン(歯車マーク)を押下します。

Custom Input Domainsの設定画面に遷移します。ドメインの箇所に独自ドメインを入力して[Add domain]ボタンを押下します。今回はpush.mydomain.tokyoとしています。

[Add domain]ボタン押下後、ホスト名のところに追加したドメインが表示されます。ステータスはまだ保留中の状態です。

続いて使用しているDNSサービス(今回はAmazon Route 53)でCNAMEレコードを作成します。CNAMEレコードの値はlive.cloudflare.comを設定します。

設定後、手元のPCからdigコマンドでレコード登録状況を確認しておきます。

% dig push.mydomain.tokyo

; <<>> DiG 9.10.6 <<>> push.mydomain.tokyo
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50633
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;push.mydomain.tokyo.          IN      A

;; ANSWER SECTION:
push.mydomain.tokyo.   300     IN      CNAME   live.cloudflare.com.
live.cloudflare.com.    300     IN      A       172.65.29.121

;; Query time: 32 msec
;; SERVER: xxxx:xx:xxxx:xxx:xx:xxxx:xxxx:xxxx#53(xxxx:xx:xxxx:xxx:xx:xxxx:xxxx:xxxx)
;; WHEN: Tue May 17 20:21:53 JST 2022
;; MSG SIZE  rcvd: 98

そしてレコード作成後、しばらく(2,3分程度)するとCloudflare側、ホスト名に対するステータスが「アクティブ」に変わります。設定としてはこれだけです!

独自のIngestドメインでライブストリーミングしてみた

独自のIngest用ドメインが設定できました。このドメインを使って実際にライブストリーミングをやってみましょう。ダッシュボード上の接続情報はこれまでとかわらずlive.cloudflare.comドメインですが、Streaming SoftwareでのIngest先設定時にここを独自ドメインに変えたものを設定します。

以下、Streaming Softwareとして使用したZixi ONAIRの設定画面です。

独自Ingestドメインでライブストリーミングができました!

IngestのプロトコルにSRTを使用する場合も同様です。ダッシュボードでは以下形式でSRT URLが取得できます。

  • srt://live.cloudflare.com:778?passphrase=$PASSPHRASE&streamid=$STREAMID

live.cloudflare.comの部分を独自ドメインpush.mydomain.tokyoに変えて、Streaming Softwareに設定します。(以下はOBS Studioを使用した例となります。)

  • srt://push.mydomain.tokyo:778?passphrase=$PASSPHRASE&streamid=$STREAMID

まとめ

Cloudflare Streamで新たにサポートされた独自Ingestドメインの利用について確認してみました。Cloudflare Stream側でのドメインの登録、そして使用しているDNSサービス側でレコードの追加の2ステップで独自Ingestドメインが利用可能になります。ストリーミングプラットフォームを利用する場合、Ingestドメインは大抵はそのプラットフォーマーと関連付けられたドメインになることが多いかと思いますが、ここが独自ドメインだとちょっとイイ感じですよね!なおこの独自Ingestドメイン機能については、追加費用なしで利用可能とのことです。アカウントで追加できるドメインは最大で5つまでとなっている点は注意しておきましょう。

おまけ: Platform WeekでのCloudflare Stream関連の発表の振り返り

最後に本エントリのまとめとして、Platform WeekでのCloudflare Stream関連の発表を簡単に振り返っておきたいと思います。合計4件の発表がありました。低遅延ライブストリーミングサポートならびにCreator Propertyのサポートについては、本DevelopersIOにブログエントリも公開されています。

ブログエントリになっていないClosed Caption(字幕)サポートについて簡単におさえておきましょう。これまでもオンデマンド動画(VOD)ではClosed Captionがサポートされてきました。今回、これに加えてあらたにライブストリーミングでもClosed Captionをサポートすることが発表されました。CEA-608ならびにCEA-708形式でのClosed Captionに対応し、Cloudflare Streamに打上げるライブ映像にClosed Captionが含まれていれば、そのまま(特に設定せずに)配信時のマニフェストファイルに含まれるようになるようです。またStream PlayerでもClosed Captionに対応し、Captionが含まれていればプレイヤー内にレンダリングされるとのことです。こちらは来月(2022年6月)からクローズドベータで利用可能となる予定です。