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

webrtc学习笔记1

WebRTC开发环境

配置vscode

安装插件
Prettier Code Formatter 使用 Prettier 来统一代码风格,当保存 HTML/CSS/JavaScript 文件时,它会自动调整代码格式。
Live Server:在本地开发环境中,实时重新加载(reload)页面。

第一个简单的HTML页面

<html><body><h1>标题1</h1><p>第一个段落.</p><p>我的第一个HTML页面</p></body>
</html>

运行时
在这里插入图片描述

安装 nodejs

  1. 下载nodejs
wget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz
  1. 解压文件
1 # 解压
2 tar ‐xvf node‐v10.16.0‐linux‐x64.tar.xz
3 # 进入目录
4 cd node‐v10.16.0‐linux‐x64/
5 # 查看当前的目录
6 pwd
  1. 链接执行文件
1 # 确认一下nodejs下bin目录是否有node 和npm文件,如果有就可以执行软连接,比如
2 sudo ln ‐s /home/lqf/webrtc/nodejs/bin/npm /usr/local/bin/
3 sudo ln ‐s /home/lqf/webrtc/nodejs/bin/node /usr/local/bin/
4
5 # 看清楚,这个路径是你自己创建的路径,我的路径是/home/lqf/webrtc/nodejs
6
7 # 查看是否安装,安装正常则打印版本号
8 node ‐v
9 npm ‐v

第一个node.js程序

var http=require('http');http.createServer(function(request,response){// 发送 HTTP 头部// 内容类型: text/plain// HTTP 状态值: 200 : OKresponse.writeHead(200, {'Content-Type': 'text/plain'}); // 发送响应数据 "Hello World"response.end('Hello World\n');}).listen(8888);console.log('Server running at http://127.0.0.1:8888/');

在vs本地写完然后在vm运行运行代码(共享文件夹)
在这里插入图片描述
在windows端可以直接写ubuntu的ip:port
在这里插入图片描述

在ubuntu的浏览器可以直接127.0.0.1:8888

coturn穿透和转发服务器

安装依赖

ubuntu系统

1 sudo apt‐get install libssl‐dev
2 sudo apt‐get install libevent‐dev

centos系统

1 sudo yum install openssl‐devel
2 sudo yum install libevent‐devel

编译安装coturn

1 git clone https://github.com/coturn/coturn
2 cd coturn
3 ./configure
4 make
5 sudo make install

查看是否安装成功

1 # nohup是重定向命令,输出都将附加到当前目录的 nohup.out 文件中; 命令后加 & ,后台执行起来后按
ctr+c,不会停止
2 sudo nohup turnserver -L 0.0.0.0 -a -u xxx:123456 -v -f -r nort.gov &   (xxx:123456 用户名:密码)
3
4 #然后查看相应的端口号3478是否存在进程
5 sudo lsof ‐i:3478

在这里插入图片描述

测试地址,请分别测试stun和turn
Coturn是集成了stun+turn协议。
测试网址:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 企业选型指南:8款最佳工资管理系统推荐
  • 使用 Vue 2 搭建大屏可视化系统
  • 安全入门day.02
  • 断言的用途
  • asyncio模块学习
  • webrtc学习笔记2
  • Dubbo服务自动Web化之路
  • CPU的功能和基本结构
  • 优思学院|六西格玛实施关键:如何整合定性与定量数据
  • 10-使用sentinel流控
  • 免费Excel数据批量转Word工具
  • Affine Transformations仿射变换
  • Android的日志工具Log
  • 负载均衡---相关概念介绍(一)
  • 华为AR1220配置GRE隧道
  • Bootstrap JS插件Alert源码分析
  • input的行数自动增减
  • iOS高仿微信项目、阴影圆角渐变色效果、卡片动画、波浪动画、路由框架等源码...
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • js对象的深浅拷贝
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • STAR法则
  • vue 配置sass、scss全局变量
  • 初识 beanstalkd
  • 从零开始学习部署
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 欢迎参加第二届中国游戏开发者大会
  • 简单数学运算程序(不定期更新)
  • 如何在 Tornado 中实现 Middleware
  • 删除表内多余的重复数据
  • 少走弯路,给Java 1~5 年程序员的建议
  • 数组的操作
  • - 转 Ext2.0 form使用实例
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • #100天计划# 2013年9月29日
  • #NOIP 2014#Day.2 T3 解方程
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (2020)Java后端开发----(面试题和笔试题)
  • (LeetCode) T14. Longest Common Prefix
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (编译到47%失败)to be deleted
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (分布式缓存)Redis哨兵
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (回溯) LeetCode 46. 全排列
  • (一)基于IDEA的JAVA基础1
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转)jdk与jre的区别
  • (转)程序员技术练级攻略
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .Net - 类的介绍
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖