kenimo49 Tech Notes

WebRTC・リアルタイム通信を使っているエンジニアです。業務で得た知見をメモしています。

getUserMediaの音声制約、undefinedで動いてるから大丈夫?:echoCancellation / autoGainControl / noiseSuppressionの挙動を整理する

導入 WebRTCの通話機能を実装していたとき、音声制約をどう設定するか迷いました。 const stream = await navigator.mediaDevices.getUserMedia({ audio: true }); これで動きます。通話もできます。じゃあ echoCancellation とか noiseSuppression は明示し…

WebRTCをエンプラに導入するとき必ず問題になる"プロキシ"を整理した

WebRTCをエンプラに導入するとき必ず問題になる”プロキシ”を整理した 「プロキシを通してください」で話が噛み合わない問題 エンタープライズ環境にWebRTCを導入しようとすると、情シス部門から「プロキシ経由にしてください」と言われることがあります。 こ…

IPv4アドレスは枯渇した。でもIPv6への移行は甘くない

サムネイル IPv4は「在庫切れ」になった IPv4アドレスは2011年に枯渇しました。世界のIPアドレスを管理する組織が「もう新しいIPv4アドレスの在庫はありません」と宣言したのです。 43億個あったはずのアドレスが、インターネットの爆発的な普及で使い切られ…

WebTransportが変えるリアルタイム通信 — WebSocketの「1車線問題」を解決する新プロトコル

ひとことで言うと WebSocketは「1車線の道路」。前の車が止まると全車渋滞します。 WebTransportは「多車線の高速道路」。1車線で事故が起きても、他の車線は流れ続けます。 この違いが、リアルタイム通信の未来を変えます。 ちなみに今日、小泉進次郎さんの…

Zoom・Meet・Teams・Skype、4大ビデオ会議の通信プロトコルを比較する ― 全部WebRTCだと思っていませんか?

業務でWebRTCを含め、Agora、SkyWay、Amazon Chime SDK等の実装検証をやってきたエンジニアです。 なお、WebRTCは単一技術ではなく仕様群です。本記事では「ブラウザ標準API(RTCPeerConnection)を利用した通信」を"WebRTCを使っている"と定義します。この…