今 WebRTC では WHIP っぽい双方向シグナリング規格が求められている
OpenAI が Realtime API (WebRTC) を公開した。Realtime API が採用したシグナリングは WHIP っぽい HTTP POST で Offer SDP を送信し、201 Created で Answer SDP を受け取るというモデル。
ただ、大きく違うのは WHIP は送信専用 (sendonly) だが、OpenAI のシグナリングでは送受信 (sendrecv) ができるようになっている。
WHIP は送信用で、WHEP は受信用という二つの規格が RFC 化で進められている。これらのシグナリング規格は P2P では利用できず、主に SFU での利用を前提としている。
WebRTC がほぼ SFU 前提になった今の時代、WHIP+WHEP というシグナリングが今求められていると考えている。特に組み込みで利用する場合はシグナリングにコストは書けていられないだろうから、 HTTP POST して終わりという WHIP 系のシグナリングと相性がいい。また、一度 WebRTC を貼ってしまえば DataChannel でうまいことできる。実際 OpenAI の Realtime API では音声だけを返すのではなく、DataChannel で文字も返せる。
当面 RFC のような規格としてはでてこないだろうから、まずは独自で WHIP+WHEP なシグナリングを検討しようと思う。