HTTP Live直播服务,如LiveStream / Ustream / Twitch / Youtube Live

时间:2015-03-09 15:38:09

标签: ios video video-streaming http-live-streaming live-streaming

我是流媒体直播的新手,很难为初学者找到好的信息。除了Apple的文档之外,还有人可以向HLS推荐资源吗?

我尝试制作类似于LiveStream的应用,可以将视频实时广播给多个用户。

我已经遇到过像encoding.com,heywatchencoding.com和wowza这样的服务,但我对每个平台提供的内容都有困难,因为每个平台的文档似乎都是为了更多中间/经验用户。

创建像LiveStream / Ustream / Twitch / Youtube这样更简单的网站有多难?我试图通过ios设备和网络开始简单,但寻找在线资源却更加困难。任何提示都很有帮助

任何机会,你们中的任何人也知道我是否可以使用Warseza与Parse.com服务?

由于

1 个答案:

答案 0 :(得分:1)

这是一个非常简单的Node.js媒体服务器,它可以旋转HTTP服务器,将大多数视频或音频格式文件从服务器流式传输到浏览器。一旦安装了nodejs,就执行

node file_containing_below_code.js

然后将您的浏览器指向网址

http://localhost:8888/

您的浏览器已在正向/反向的滑块小部件中出现,并自动将流量发送回此服务器以实时响应

享受......顺便说一下,没有文件需要点和拍摄

var http = require('http'),
    fs = require('fs'),
    util = require('util');


var path = "/path/to/audio/or/video/file/local/to/server/cool.mp4"; // put any audio or video file here


var port = 8888;
var host = "localhost";

http.createServer(function (req, res) {

  var stat = fs.statSync(path);
  var total = stat.size;

  if (req.headers.range) {   // meaning client (browser) has moved the forward/back slider
                                         // which has sent this request back to this server logic ... cool
    var range = req.headers.range;
    var parts = range.replace(/bytes=/, "").split("-");
    var partialstart = parts[0];
    var partialend = parts[1];

    var start = parseInt(partialstart, 10);
    var end = partialend ? parseInt(partialend, 10) : total-1;
    var chunksize = (end-start)+1;
    console.log('RANGE: ' + start + ' - ' + end + ' = ' + chunksize);

    var file = fs.createReadStream(path, {start: start, end: end});
    res.writeHead(206, { 'Content-Range': 'bytes ' + start + '-' + end + '/' + total, 'Accept-Ranges': 'bytes', 'Content-Length': chunksize, 'Content-Type': 'video/mp4' });
    file.pipe(res);

  } else {

    console.log('ALL: ' + total);
    res.writeHead(200, { 'Content-Length': total, 'Content-Type': 'video/mp4' });
    fs.createReadStream(path).pipe(res);
  }
}).listen(port, host);

console.log("Server running at http://" + host + ":" + port + "/");
相关问题