prolove2046 2020-06-30 17:01 采纳率: 0%
浏览 843
已结题

如何通过ONVIF协议获取NVR中摄像头的RecordingToken

海康的NVR,支持 ONVIF协议。
开发平台: .Net Core 3.0

我的调用顺序是:

[onvif/search_services]  GetRecordingSummary
[onvif/search_services]  FindRecordings
[onvif/search_services]  GetRecordingSearchResults

在 GetRecordingSearchResults 的返回对象的Source中,没有任何信息。没有办法与具体的摄头对应。无法确认Recording是对应的哪一个摄像头。

哪位大佬有ONVIF回放录像的示例? 最好是可以直接运行的。

这个NVR感觉得很奇怪,用Happytime onvif client也是一样无法访问回放视频。不知道是海康NVR对ONVIF的支持不够好,还是软件有问题。

  • 写回答

3条回答 默认 最新

  • king_weng 2020-09-24 15:33
    关注

    1、需要先调用RecordingBindingProxy::GetRecordings();

    _trc__GetRecordingsResponse recordingsRep;
    _trc__GetRecordings recodingReq;
    RecordingBindingProxy::GetRecordings(&recodingReq ,&recordingsRep);
    

    2、然后通过_trc__GetRecordingsResponse返回的结果中的tt__GetRecordingsResponseItem来获取

    _trc__GetRecordingsResponse recordings;
            onvifRecoding->getRecoding(recordings);
            for (auto it = recordings.RecordingItem.begin(); it != recordings.RecordingItem.end(); ++it) {
                tt__GetRecordingsResponseItem * pRecordings = *it;
                cout << "recoding token = " << pRecordings->RecordingToken;
                tt__RecordingConfiguration *pRecordingConf = pRecordings->Configuration;
                if (pRecordingConf->Source) {
                    cout << "Recording SourceId = " << pRecordingConf->Source->SourceId.c_str();
                    cout << "Recording Name = " << pRecordingConf->Source->Name.c_str();
                    cout << "Recording Location = " << pRecordingConf->Source->Location.c_str();
                    cout << "Recording Description = " << pRecordingConf->Source->Description.c_str();
                    cout << "Recording Address = " << pRecordingConf->Source->Address.c_str();
                }
            }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型