影響あり RTCRtpTransceiver.mid が接頭辞なしのメディア ID を返すようになりました

公開日: | カテゴリー: 音声 & 動画, DOM

概要

従来、RTCRtpTransceiver インターフェイス上の mid プロパティは、"sdparta_0""sdparta_1" など sdparta_ という接頭辞の付いたメディア ID を返していました。仕様が短い値を推奨していることや Google Chrome が現時点で接頭辞を使用していないことから、Firefox 63 で接頭辞が外され、単に "0""1" といった文字列型の数字を返すようになりました。

一部の WebRTC ライブラリなど特定のスクリプトはこの変更による影響を受けているようです。これは、プロパティが返す可能性のある null に加えて、"0" が JavaScript では偽とみなされる値であるためです。値を確認する際には厳密な比較を行ってください。

"0" == false // true
"0" === false // false
Number("0") // 0
Number(null) // 0
parseInt("0") // 0
parseInt(null) // NaN

参考資料