zoukankan      html  css  js  c++  java
  • 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”}}。

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

     
  • 相关阅读:
    【bzoj2115】[Wc2011] Xor
    【bzoj2460】[BeiJing2011]元素
    P2300 合并神犇 DP
    P1041 传染病控制 深搜
    P1038 神经网络 图论
    树状数组模板
    送外卖 状压DP
    士兵守卫(同P2016 战略游戏) 树形DP
    P1171 售货员的难题 喻队状压 DP
    P2062 分队问题 DP
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14378481.html
Copyright © 2011-2022 走看看