概述
3D和游戏行业新阶段主要向专用外设发展,3D和游戏上云到打造体验是发展趋势。yangwebrtc可助力3D和游戏向云平台发展提供助力,助力云3d云游戏达到50毫秒以下延迟,助力云3D云游戏转向嵌入式和穿戴设备的轻量化终端,使之可以展示大屏视觉,增加用户的体验感。
下载源码和运行类库
https://github.com/metartc/yangwebrtc/releases/tag/2.0.050https://github.com/metartc/yangwebrtc/releases/tag/2.0.050https://gitee.com/metartc/yangwebrtc/releases/2.0.050https://gitee.com/metartc/yangwebrtc/releases/2.0.050
metartc2_thirdparty.050.7z为源码压缩文件,metartc2.win_runtime.7z为应用程序依赖的dll文件
编译部署参考用yangwebrtc搭建兼容webrtc协议和支持嵌入式智能终端的多人视频会议_m0_56595685的博客-CSDN博客
和在windows下yangwebrtc2编译运行成功——强推防踩坑_熊猫Ben的博客-CSDN博客
视频可参考metartc(yangwebrtc)windows版本编译教程_哔哩哔哩_bilibili
3D云平台和游戏云平台搭建
修改配置参数
将#define Yang_SendVideo_ 0改为#define Yang_SendVideo_ 1
recordmainwindow.cpp里的外部输入视频相关代码就可以使用了
推流代码是成熟代码,现在只需要自己写入视频帧数据即可。
写入视频帧数据
获取写入接口对象
recordmainwindow.cpp里有注释的例子 YangPushFactory pf; YangSendVideoI* send=pf.getSendVideo(this->m_message);
推送视频帧
send->putVideoRgba( data,len,timestamp);//推送rgba格式数据 send->putVideoI420( data,len,timestamp);//推送i420格式数据
timestamp为时间戳,单位为微妙。
头文件<yangutil/sys/YangTime.h>里有获取微妙函数yang_get_system_time()
int64_t base_timestamp=yang_get_system_time();
int64_t timestamp=yang_get_system_time()-base_timestamp;//时间戳
webrtc服务器
推荐Srs4.0,下载编译参考http://github.com/ossrs/srs#usage
objs/srs -c conf/https.rtc.conf