• webrtc-client在浏览器使用c++推流程序崩溃nlohmann::detail::type_error错误修复分享


    我们介绍过很多TSINGSEE青犀视频开发团队开发WebRTC的过程,我们使用到了c开发。C不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

    在开发WebRTC流媒体服务器时,WebRTC推流在使用浏览器拉流一段时间后,c++ 程序会导致崩溃,浏览器拉流端的视频也会停止播放,c++ 推流端在vs2017会进入到错误断点报以下内容:
    “0xxxxxxx处(位于xxxxx.exe中)有未经处理的异常,异常:nlohmann::detail::type_error,位于内存位置0xxxxxxxxx处”。

    看报错信息,是在使用webrtc json的库里出现的错误信息,这样就能确定一点,应该是某部分代码在调用webrtc json的库出现不一致的情况导致的错误。

    我们在代码中找到WebRTCClient.cpp文件,打印一下服务端反馈的数据:

     服务端反馈的错误数据格式如下:

    {“data”:{“errCode”:-1,”errMsg”:”Router not found”,”id”:9,”method”:”createWebRtcTransport”}}。

     知道问题所在,那么解决就变简单多了。我们只需要在添加一个简单的判断代码,判断字段是否存在即可。

     
  • 相关阅读:
    (04)-Python3之--字典(dict)操作
    word2vec简单介绍
    基于websocket爬虫
    Python数据结构之链表(1)-->单链表
    词云wordcloud
    Neo4j--第一章
    AHP(层次分析法) 附Python示例代码(觉得还可以的,帮忙点个赞,谢谢)
    几种归一化方法(Normalization Method)python实现
    EM算法之Python
    通俗易懂的EM
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14378481.html
Copyright © 2020-2023  润新知