fumiLab

fumimakerが作ったもの、やったことについて書いていきます。

WiresharkでRTPを解析する方法

Gstreamerを使ったRTP映像伝送を最近いじってるのですが,ちゃんと遅れているのかWireSharkを使ったRTPの解析をしたくなったところ,ちょっと詰まったので一応こちらで共有します.

f:id:fumimaker:20210317214913p:plain

環境

ネット上の情報が通用しない

Edit—>Preference—>protocol—>Try to decode RTP outside of conversationsを有効にしろみたいな解決策が多いです.

minkara.carview.co.jp

openmaniak.com

しかし,EditにPreferenceはそもそもありません.一応PreferenceはあったのでそれをみてみてもTry to decode RTP outside of conversationsはありませんでした.

f:id:fumimaker:20210317214444p:plain
EditにPreferenceはない

f:id:fumimaker:20210317214528p:plain
Preferenceの中のRTPに該当項目はなかった

わからんので他の解決策を探ります.

www.cisco.com

UDPデータを右クリックしてDecode asからRTPを選択するようなことが書いてあります.やってみましたがRTPが表示されることはありませんでした...

解決策

解決策はこれです.

f:id:fumimaker:20210317214659p:plain
有効にする
https://osqa-ask.wireshark.org/questions/50795/wireshark-2-missing-option-to-try-to-decode-rtp-outside-of-conversation

Analyze—>Enable protocol—>RTP—>rtp_udpをEnableにする.

どうやらWiresharkのバージョンがV2になった時に新しくなったらしく項目が消えたり写ったりしたようです.これでただのUDPだったデータがRTPとして認識され,ストリーミング解析をすることができるようになりました.めでたし.

追記

H264とか、H265認識されてなくね?って気づきました。RTP分析してもJitterが0msになっているようです。確かにパケット見てもRTPよりも上の層の話が何もないみたいです。調べてみるとPayloadTypeを教えてあげないと認識してくれない模様。Edit->Preferences->Protocol->H.264を探してdynamic payload typeを教えてあげます。

f:id:fumimaker:20210428215724p:plain
dynamic payload typeを指定
自分の場合は96にしてたので96を入れてやりました。無事に見えるようになりました。

今日はそんな感じです