WebRTC

关于WebRTC是否可以用来实现大范围的直播众说纷纭。有大神表示大于8人就出现高CPU低稳定性,也有牛人表示在生产环境都已经使用几年了。作为小朋友,听谁的都不如自己实践一番。

一、Chrome作为客户端的Demo
二、发送Chrome的数据至媒体服务器,
三、订阅媒体服务器

第一爪 Chrome作为客户端的Demo

嵌入了 video标签 的HTML页面,里面用到了 adapter.js,用于兼容不同浏览器读取外部设备的方法

代码参考至adapter.js 的demo,进行了一些信息的去除

hello.html

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Doge</title>
<body>
<video id="video"></video>
<script type="application/javascript" src="adapter-latest.js"></script>
<script type="application/javascript" src="hello.js"></script>
</body>
</html>

hello.js

'use strict';

var video = document.querySelector('video');
var constraints = window.constraints = {
  audio: false,
  video: true
};

navigator.mediaDevices.getUserMedia(constraints)
.then(function(stream) {
  var videoTracks = stream.getVideoTracks();
  window.stream = stream;
  video.srcObject = stream;
})
.catch(function(error) {

});

将这两个文件存放在自己的Workspace目录里,然后启动一个简单的HTTP服务器

python -m SimpleHTTPServer 8080

在浏览器访问 127.0.0.1:8080/hello.html,就可以看到摄像头取到的视频了。哈哈,待会儿进行第二爪


小朋友
395 声望11 粉丝

引用和评论

0 条评论