RTSP(アールティーエスピー)とは | 意味や読み方など丁寧でわかりやすい用語解説
RTSP(アールティーエスピー)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
リアルタイムストリーミングプロトコル (リアルタイムストリーミングプロトコル)
英語表記
RTSP (アールティーエスピー)
用語解説
RTSP(Real Time Streaming Protocol)は、インターネット上でリアルタイムのマルチメディアデータ(動画や音声など)を効率的にストリーミング配信するためのアプリケーション層プロトコルである。このプロトコルは、メディアデータを転送するのではなく、その転送を「制御」することに特化している。具体的には、クライアント(PCやスマートフォンなど)がストリーミングサーバーに対して、メディアの再生、一時停止、早送り、巻き戻し、シーク(特定の位置への移動)といった操作を指示するために用いられる。RTSPは、IPカメラの映像配信や一部のビデオオンデマンドサービス、ライブストリーミングなどで利用され、特に低遅延でのリアルタイム通信が求められる環境でその真価を発揮する。
RTSPは、データそのものを転送する機能を持たない点に大きな特徴がある。メディアデータの実転送には、通常、RTP(Real-time Transport Protocol)という別のプロトコルが使用される。RTPはUDP(User Datagram Protocol)の上で動作し、リアルタイム性が求められるメディアデータの高速な転送に適している。また、RTPと連携してRTCP(RTP Control Protocol)が用いられ、ストリームの品質管理や参加者情報の交換を行う。RTSPは、これらのRTP/RTCPセッションの確立、管理、そして終了といった制御を行う役割を担っている。これは、例えるなら、DVDプレーヤーのリモコンが、ディスクに記録された映像データを再生するプレーヤー本体の動作を制御する関係に似ている。リモコン(RTSP)が再生ボタンを押すと、プレーヤー(RTP/RTCP)が映像データを読み込み、テレビに出力する、というイメージである。
RTSPが提供する主な機能は、いくつかのコマンド(メソッド)によって実現される。
OPTIONSメソッドは、クライアントがサーバーに対して、サーバーがサポートしているRTSPメソッドの種類を問い合わせるために使う。
DESCRIBEメソッドは、サーバーからストリーミング可能なメディアの情報を取得する。この情報には、動画や音声のコーデック、解像度、ビットレートなどが含まれ、通常はSDP(Session Description Protocol)形式で記述される。
SETUPメソッドは、メディアデータの転送に使用するRTP/RTCPポート番号や転送方式などをクライアントとサーバー間で確立する。これにより、実際のメディアデータ転送の準備が整う。
PLAYメソッドは、ストリーミングを開始する。サーバーは指定されたメディアストリームの送信を開始する。
PAUSEメソッドは、一時的にストリーミングを停止する。再生位置は維持され、後でPLAYメソッドを使って再開できる。
TEARDOWNメソッドは、ストリーミングセッションを終了し、関連するリソースを解放する。
RECORDメソッドは、クライアントがサーバーに対してメディアデータの記録を開始するよう指示するために使用される。これは主にIPカメラなどで、カメラからサーバーへ映像を送信して記録するシナリオで使われる。
RTSPはTCP(Transmission Control Protocol)の上で動作するため、制御メッセージの信頼性が保証される。これは、コマンドが確実にサーバーに届き、サーバーからの応答も確実にクライアントに届くことを意味する。一方で、実際のメディアデータ転送にはUDPベースのRTPが使われることで、高速かつ低遅延なリアルタイム配信を実現している。TCPのような再送制御がないUDPは、パケットロスが発生しても再送を試みないため、途切れることなくストリームを継続できる利点がある。多少のパケットロスは映像や音声の一瞬の乱れとして現れるが、リアルタイム性にとっては再送による遅延の方が問題となるケースが多いため、この設計が採用されている。
RTSPの主な利用シーンとしては、監視カメラやネットワークカメラの映像配信が挙げられる。これらのデバイスは、RTSPサーバーとして機能し、クライアントからの制御要求に基づいてリアルタイム映像を配信する。また、一部のビデオ会議システムやVoIP(Voice over IP)システムでも、メディアストリームの制御にRTSPが使われることがある。
Webサイトなどで一般的なHTTP(Hypertext Transfer Protocol)ベースの動画配信とRTSPベースの配信は根本的に異なる。HTTPは主にファイルをダウンロードして再生する方式であり、ストリーミング中のシークや一時停止といったリアルタイム制御には向かない。HTTPでは、動画ファイルを分割して順次ダウンロードしながら再生する方式(プログレッシブダウンロード)が主流だが、再生位置の移動はダウンロード済みの範囲に限られることが多い。これに対し、RTSPはセッションの概念を持ち、クライアントとサーバー間で常に状態を維持(ステートフル)しながら、再生位置の指定や一時停止、早送り、巻き戻しといったきめ細やかなリアルタイム制御を可能にする。
近年では、ファイアウォール通過の容易さや既存のWebインフラとの親和性から、HTTPベースのストリーミング技術(例:HLS (HTTP Live Streaming) や MPEG-DASH (Dynamic Adaptive Streaming over HTTP))が主流になりつつある。これらの技術は、HTTPサーバーとCDN(Content Delivery Network)をそのまま利用できるため、大規模なコンテンツ配信に適している。しかし、RTSPは特定の用途、特に低遅延が非常に重要であり、かつ詳細なリモート制御が必要とされるIPカメラやビデオ監視システムなどの分野では、依然として重要な役割を果たしている。これらの環境では、既存のHTTPベースの技術では実現が難しい、ミリ秒単位の低遅延やカメラのパン・チルト・ズーム(PTZ)制御と連携したストリーミング管理が求められるため、RTSPの利用が継続されている。