TSINGSEE青犀视频开发WebRTC使用VideoTrackSourceInterface编译报rtc::scoped_refptr<CustomVideoTrackSource>::ptr_错误

本文介绍了解决WebRTC视频推流过程中遇到的编译错误问题,通过排查发现是由于CustomVideoTrackSource类和MyDesktopCapture类重复重写VideoTrackInterfaceInterface导致的。文章最后分享了修复方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们上一篇说到TSINGSEE青犀视频开发团队已经基本实现了WebRTC的视频推流和播放,还剩一些小问题需要我们优化。

WebRTC.png

我们使用VideoTrackInterfaceInterface类对WebRTC进行编译,在重写的该类时,程序编译崩溃报错:“初始化”:无法从“T *”转换为“T *”; “rtc::scoped_refptr::ptr_”:未能初始化成员。

90.png

91.png

我们双击该错误,定位到了该函数成员rtc::scoped_refptr,而rtc::scoped_refptr类是WebRTC的一个智能指针的方法,基本不可能出现该问题。

92.png

因此我们猜测是自身写的代码问题,在代码中CustomVideoTrackSource类和MyDesktopCapture类都重写了webrtc::VideoTrackInterfaceInterface。导致重写了二次方法,而rtc::scoped_refptr方法只要有一个重定义。

93.png

在删除其中一个MyDesktopCapture类和CustomVideoTrackSource类时,vs2017编译都会无问题。那么重写VideoTrackInterfaceInterface类时,就必须确保一个类重写,否则会导致该报错出现。

我们将会继续推动EasyCVR、EasyNVR、EasyGBS等平台对WebRTC的支持,如果大家有兴趣,欢迎联系我们了解或者关注我们。

100.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值