当前位置: 首页 > news >正文

网站描述怎么写比较好wordpress双语插件

网站描述怎么写比较好,wordpress双语插件,哪个网站可以做试卷,成都网站seo报价文章目录 基本流程状态回调类sdp的中媒体行pc对象 基本流程 webrtc native的接口#xff0c;主要就是围绕着PeerConnection对象#xff0c;一个PeerConnection对象它代表了一次音视频会话。 那么通过PeerConnection对象建立音视频通话#xff0c;包括如下步骤#xff1a; … 文章目录 基本流程状态回调类sdp的中媒体行pc对象 基本流程 webrtc native的接口主要就是围绕着PeerConnection对象一个PeerConnection对象它代表了一次音视频会话。 那么通过PeerConnection对象建立音视频通话包括如下步骤 创建PeerConnectionFactory通过工厂方法webrtc::CreatePeerConnectionFactory。创建PeerConnection通过它的PeerConnectionFactory的CreatePeerConnection方法。调用PeerConnectionFactory的CreateAudioTrack和CreateVideoTrack方法创建Track。调用PeerConncetion的 AddTrack方法添加Tracktrack最终会反映到sdp中的m行中。协商成功的Track在随后会通过onAddTrack回调告知应用层根据Track的类型来确定是回放视频还是音频。如果是本地为发起端则需调用PeerConnection的CreateOffer方法产生本地sdp信息(抽象为了webrtc::SessionDescriptionInterface**对象)触发 **CreateSessionDescriptionObserver**中 **OnSuccess方法在OnSuccess方法中调用PeerConnection的SetLocalDescription方法获取sdp字符串后通过信令协议给到远端。如果远端是发起在收到信令服务传来的远端sdp消息调用PeerConnection的SetRemoteDescription方法(需将sdp字符转换为webrtc::SessionDescriptionInterface对象)。然后调用PeerConnection的CreateAnswer方法(产生的local sdp应该还是会通过CreateSessionDescriptionObserver的OnSuccess回调给出最终还是通过PeerConnection的SetLocalDescription方法设置需要调试一下追踪流程)。 整个过程本质就是获取本地sdp信息和远端sdp信息再进行协商流程可以概括为如下图。 状态回调类 上述流程都是异步所以会有状态回调来告知应用状态。主要的两个Observer就是CreateSessionDescriptionObserver和PeerConnectionObserver前者是告知sdp创建协商的状态。后者是PC对象的状态。如下图。 Conductor类在examples/peerconnection/client/conductor.h是webrtc native的pc对象封装示例代码。 实现一个pc client可以参照它的实现首先是要继承CreateSessionDescriptionObserver和PeerConnectionObserver再是有PeerConnectionInterface(PC对象)和PeerConnectionFactoryInterface(用于创建PC对象)的成员变量。 sdp的中媒体行 sdp中核心的信息就是描述媒体信息的内容简称m行或媒体行。通过pc对象的AddTrack或AddTransceiver方法添加track会直接反映到sdp中。 如下代码添加了两个VideoTrack最终反映到sdp中为两个sendrecv的m行。 rtc::scoped_refptrCapturerTrackSource video_device CapturerTrackSource::Create();if (video_device) {rtc::scoped_refptrwebrtc::VideoTrackInterface video_track_(peer_connection_factory_-CreateVideoTrack(kVideoLabel, video_device));main_wnd_-StartLocalRenderer(video_track_);result_or_error peer_connection_-AddTrack(video_track_, {kStreamId});if (!result_or_error.ok()) {RTC_LOG(LS_ERROR) Failed to add video track to PeerConnection: result_or_error.error().message();}//添加第二个video trackrtc::scoped_refptrwebrtc::VideoTrackInterface video_track_1(peer_connection_factory_-CreateVideoTrack(video_track_1, video_device));result_or_error peer_connection_-AddTrack(video_track_1, {kStreamId});if (!result_or_error.ok()) {RTC_LOG(LS_ERROR) Failed to add video track to PeerConnection: result_or_error.error().message();}} else {RTC_LOG(LS_ERROR) OpenVideoCaptureDevice failed;}如下代码添加了一个VieoTrack方向为recvonly。 //video recvonly webrtc::RtpTransceiverInit init; init.direction webrtc::RtpTransceiverDirection::kRecvOnly;peer_connection_-AddTransceiver(cricket::MediaType::MEDIA_TYPE_VIDEO, init);pc对象 一个PC对象表示一次P2P会话它包括sdp handlecall。可以产生多个PC对象PC对象之间相互不关联。 std::unique_ptrSdpOfferAnswerHandler sdp_handler_;用以处理sdp协商。 std::unique_ptrCall call_;管理PC sdp中对应的stream如下类图为它提供的核心方法 一个PC对象中video/audio send/receive stream都被webrtc::interal::call对象管理也是通过它的接口进行创建。 sdp中一个m行对应一个RtpTransceiver对象最终被映射成MediaChannel和 video/audio的各种send/receive stream(比如webrtc::internal::VideoSendStream)而这些stream就是直接管理编解码器。
http://www.hkea.cn/news/14465410/

相关文章:

  • 事业单位报名网站长春建设信息网站
  • 沙坪坝网站建设公司选哪家好安徽省住房城乡建设部网站
  • 水利建设工程网站官网网站搭建
  • 成都网站建设怎么样淘客网站seo怎么做
  • 济南网站优化公司哪家好软件公司找项目
  • 数据处理网站开发中装建设
  • 义乌网站建设优化推广广州seo公司哪个比较好
  • python做网站用什么软件合肥软件开发网站建设
  • 清远做网站的广告公司接单软件
  • 10000ip网站怎么做北京seo软件
  • 外贸自建站源码网页设计实验报告格式模板
  • 关于网站建设分类北京seo优化公司
  • 网站后台如何修改参数企业做网站用dedeCMS免费吗
  • 网站 关键词库重庆公司注销的流程及需提供的材料
  • 网络广告网站怎么做网站免费模板资源
  • 建材企业网站推广方案北京设计制作公司
  • 嵊州市住房和城乡建设局网站网络游戏代理平台
  • 郑州网站建设讯息湘潭网站建设出色磐石网络
  • 山东川畅信息技术有限公司网站建设2024年楼市大局已定
  • 怎么做网站快捷方式有没有在网上做ps赚钱的网站
  • 网站更换模板重庆公众号开发服务
  • 盐城北京网站建设网站层级关系
  • 如何让网站被百度收录详情页设计图片
  • 做网站是用什么软件运营培训班学费大概多少
  • 网站绝对路径301如何发布网站教程
  • 为什么选择做游戏网站南通营销网站制作
  • 改了网站关键词用自己的名字设计logo
  • 做3d效果图的网站有哪些做网站可以在哪儿接活
  • 关于服装的网站规划与设计大兴网站建设报价
  • 网站域名要怎样规划沈阳百度关键词推广