onvif-flow

了解onvif程序


更新記錄

item note
20170306 第一版

目錄


onvif test tool flow

GetCapabilities

  • GetCapabilities
    test tools使用GetCapailites裡面設定all,camera回傳全部訊息(network/system/event/media/imageing)

    [onvif-get-capabilities]
  • GetCapabilities Response

    [onvif-get-capabilities-response]

nk onvif flow

GetCapabilities

  • GetCapabilities

    [nk-get-capabilities]
  • GetCapabilities Response

    [nk-get-capabilities-response]

GetProfile

  • GetProfile[nk-get-profile]

GetProfile Response

  • GetProfile Response

    [nk-get-profile-response]
  • GetProfile Response

    [nk-get-profile-response]

GetVideoEncoderConfiguration

  • GetVideoEncoderConfiguration

    [GetVideoEncoderConfiguration]
  • GetVideoEncoderConfigurationResponse

    [GetVideoEncoderConfigurationResponse]

GetStreamUri

  • GetStreamUri

    [GetStreamUri]
  • GetStreamUriRespose

    [GetStreamUriRespose]

flow

  • SManager_StreamAgentThd

    [SManager_StreamAgentThd]
  • SManagerUpdateAgentStreamInfo
    主要取得device的大小碼流streamurl及port
    Main StreamURI: [media?profile=h264], port:[554]
    Sub StreamURI: [media?profile=h264_2], port:[554]

    [SManagerUpdateAgentStreamInfo]
  • GetCapabilities Flow
    取得device_path(ex. http://10.0.0.141/onvif/Media)
    1.先送出GetCapibilties裡面設定media
    2.取得訊息parse, 更新namespace(採用camera送過來的ns)
    3.使用此ns來parse xml裡面的欄位訊息以取得Xaddr數值
    若為media及device,則將XAddrs字串設定到media_path
    若為image,則將XAddr字串設定到image_path

    [nk-OnvifDoGetCapabilities]
  • OnvifDoGetProfiles Flow
    由trt:GetProfilesResponse的tt:SourceToken決定VideoServer頻道
    每個頻道內會有大小碼流

    [nk-OnvifDoGetProfiles.png]
  • OnvifDoGetStreamUri

    [OnvifDoGetStreamUri]

參考