普段何気なく見ている様々な配信者さんの動画ですが、
ふと、どうやって配信しているのか気になり、お遊びで配信実施までこぎつけてみました(笑)
そんな中驚いたのが、音声・動画・データをやり取りするための、ストリーミング用プロトコルがあるということでした。
普通に考えたらそういった通信プロトコルがあることは至極当たり前なことなのですが、
今まで何も考えずに配信動画を見てきましたので、技術的なことにまで思いを馳せることがありませんでした。
見つけた経緯を含めて、どういったプロトコルか、簡単に書いてみます。
僕の場合は、OBS(Open Broadcaster Software) studio という配信ソフト+某配信サービスを使ってみたのですが、
某配信サービス側では、ブラウザ配信もできれば(これも凄い…)、ツールを使った配信もできるとのこと。
僕が試した方法としてはツール配信で、配信サービス側が発行するURLとストリームキーをOBS側に設定し、OBS側で配信開始をすると、配信サービス側でも配信がスタートするというもの。
この、配信サービス側が発行するURLのプロトコルが「RTMP」というプロトコルになっていました。
RTMPとは、「Real Time Messaging Protocol」の略で、Adobe Flashプレーヤーとサーバーとの間で、
音声、動画、データをやりとりするストリーミングのプロトコルとのこと。(Wikipedia情報)
デフォルトのポート番号は1935です。
RTMPSという、HTTPSを使って暗号化されたプロトコルもあるようです。
(Adobe Flashプレーヤーはもうサポートが終了していて既に廃止の流れとなっていたはず・・・、RTMPに代わるプロトコルがあったりするのかなぁというのは、調べているところです)
RTMPを使うには、Webサーバーだけでなく、専用のRTMPサーバーも必要なようで、
配信サービス側のRTMPサーバーを介して通信をしているわけですねぇ。
配信者さんってシステムエンジニア目線で見ると、中々技術的なことをやっていたのですね…!
(そもそもネットで配信される方はITスキルが高い方が多いのかもしれませんが)
我々が何気なく使っている様々なサービスは、どれもITが活用されることによって実現しているんですねぇ。
皆さんも、普段当たり前のように使っているサービスが、どのようにして実現されているのか、調べてみてはいかがでしょうか!?
(注:インターネット上で聞きかじった情報を自分が解釈した内容で記載しています。この記事の情報が誤った情報である可能性もありますこと、予めご容赦ください)