owt-conference

  • 视频会议流程

    • 获取token
    • 加入会议室
    • 采集和推流
    • 拉流

视频会议流程

获取token

post-uri:
https://ip:3004/createToken/
参数:
{"role":"presenter","username":"user","room":""}

加入会议室

解析token

JSONObject jsonToken = new JSONObject(new String(Base64.decode(token, Base64.DEFAULT)));

解析出来的token是

{"tokenId":"5f253b987171911f9b70dc6e","host":"xxx:8080","secure":true,"signature":"NmRiMGVmOWUxZTZhODIyY2YxYzUwYjkzZjBiMWIyZDBkYTQ1MWFlYTNhZjNlMWFkYjg1NmFjNWU0ZTFhNGJlNQ=="}

初始化 socketio参数,开始连接服务器

socketClient = IO.socket(url, opt);
socketClient.connect();

获取到会议室信息

//通过token加入服务器
conferenceClient.join(token, new ActionCallback<ConferenceInfo>() {}
// 发送登录服务器到指令
socketClient.emit("login",....);
// 处理服务器返回回来的会议室信息
observer.onRoomConnected((JSONObject) args[1]);
public void onRoomConnected(final JSONObject info) {}
// 创建会议信息对象
conferenceInfo = new ConferenceInfo(info);
// 加入会议室成功
joinCallback.onSuccess(conferenceInfo);
// 添加会议室流id信息
remoteStreamIdList.add(remoteStream.id());
remoteStreamMap.put(remoteStream.id(), remoteStream);

采集和推流

采集信息

capturer = OwtVideoCapturer.create(vga ? 640 : 1280, vga ? 480 : 720, 30, true,isCameraFront);
localStream = new LocalStream(capturer,new MediaConstraints.AudioTrackConstraints());
localStream.attach(localRenderer);

推流关键函数:

sendSignalingMessage("publish", publishMsg, args -> {}
conferenceClient.publish(localStream, setPublishOptions(), callback);

拉流

选择一个流

private View.OnClickListener subscribe = new View.OnClickListener() {public void onClick(View v) {}
}

复制

选择编码:

public void chooseCodec(RemoteStream remoteStream) {}

开始拉流

conferenceClient.subscribe(remoteStream, options,

上一篇:owt-client-android系列分析下一篇:Licode

owt-conference 视频会议流程相关推荐

  1. Conference Call流程介绍

    1.Conference call 基本介绍 Conference call 就是常说的电话会议,简单的说就是多台设备同时参与某一路通话(假设为A,B,C三台设备),不是常见的两方对话.详细的解释可以 ...

  2. OWT Server信令分析 (下) [Open WebRTC Toolkit]

    OWT Server信令分析 (下) [Open WebRTC Toolkit] 目录 信令分析因为包含一些代码和格式,文章很长,所以分成上下两篇记录,OWT(Open WebRTC Toolkit) ...

  3. 告别渣画质,视频会议带宽降90%,英伟达公开Maxine服务背后重要技术

    来源:机器之心 本文约2800字,建议阅读9分钟 英伟达团队发布的新论文揭露了AI视频会议服务Maxine技术. 10 月初,英伟达推出了一项 AI 视频会议服务 Maxine,使用了 AI 来提升分 ...

  4. java毕业设计——基于Java+Socket的视频会议系统设计与实现(毕业论文+程序源码)——视频会议系统

    基于Java+Socket的视频会议系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Java+Socket的视频会议系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下 ...

  5. 某石油公司100-500人办公网络方案设计

    一.项目概述 (略) 二.项目需求 1. 业务需求 ² 公司内部各分支机构和办事处之间文件传输与资源共享: ² 客户及其他外部人员.机构与公司进行文件传输与资源共享: ² 公司内部人员对Interne ...

  6. 计算机相关单词 1000+

    1.计算机常用英语词汇大全 2.第一章计算机硬件 3.1.1计算机的组成 4.audio声[音]频的,声音的 5.bus总线 6.computer计算机 7.central processing un ...

  7. PCI Express

    PCI Express是新一代的总线接口,而采用此类接口的显卡产品,已经在2004年正式面世.早在2001年的春季"英特尔开发者论坛"上,英特尔公司就提出了要用新一代的技术取代PC ...

  8. 如何实现网上实时视频直播的功能

    当然,还需要视频直播软件.同三维T230E高清HDMI采集卡不仅赠送同三维多路视频录播软件和网络Flash同三维视频直播软件 问:在比赛现场.庆典活动现场的实时直播, 如何在摄像机录像的同时在旁边不远 ...

  9. 【华为认证视频会议工程师HCIA-Video Conference V3.0正式发布】

    华为认证hcia-Video Conference V3.0(中文版)自2021年3月31日起,正式中国区发布. 发布概述 基于"平台+生态"战略,围绕"云-管-端&qu ...

  10. 视频会议开发流程指南

    下面主要介绍BR_Chat Platform Core SDK基本开发流程,适用于开发视频会议系统.语音视频聊天系统.远程教育平台以及即时通讯平台(IM)等. 一.初始化 该部分是首先要完成的,用于设 ...

最新文章

  1. 计算机组成原理文华学院,华中科技大学文华学院计算机组成原理课设.doc
  2. 物资管理信息系统5 -- 删除用户界面
  3. 重装MS SQL Server 2000前必须彻底删除原安装文件!
  4. 关于exchange 2013输入账号密码后owa空白页解决方法
  5. vue 安装指定版本swiper_Vue中的runtime-only和runtime-compiler
  6. 数据结构(十五)dijkstra单源最短路径
  7. python实现通讯录代码
  8. 图片相似度对比在线测试,图片相似度对比 python
  9. 研究生应如何合理管理时间
  10. RabbitMQ高可用--Quorum Queue(仲裁队列)的原理
  11. 这款耳机的性价比堪比AirPods,写代码的你可以看看
  12. 瑞吉外卖项目——修改分类
  13. gnuplot入门教程
  14. openfalcon 组件监控_使用滴滴云快速搭建 Open-Falcon 监控平台
  15. 伽卡他卡学生端去捆绑版(LikeWendy制作)
  16. CleanMyMac X激活码免费版安装包MAC清理工具
  17. Interspeech 2021 | 腾讯AI Lab解读9篇入选论文
  18. 洛谷 P2832 行路难
  19. html做网页计算bmi,体重指数如何计算?肥胖程度计算公式 BMI 法
  20. 网站盈利的10大方法

热门文章

  1. 美国华盛顿州通过 ArcBlock 支持的区块链法案
  2. 上海交通大学教授金耀辉:AI在智慧法院中的应用
  3. DialogueCRN: Contextual Reasoning Networks for Emotion Recognition in Conversations论文阅读笔记
  4. 富贵论坛的来历和背景
  5. 路由器的原理及其配置(一)
  6. andriod自带模拟器使用代理
  7. HTML编辑器-Bluefish 2.0.1 发布
  8. 找不到系统指定路径的解决思路
  9. 2020.1.1 只争朝夕,不付韶华
  10. 编程示例:公农历转换的算法