Tag: http live streaming

如何确定HTTP范围请求开始和结束字节(nodejs + mongodb)

我想知道是否有可能确定HTTP范围请求中的开始和结束字节,或让浏览器知道从哪里开始,并让它使用一些用户定义的块大小等等。 我在我的数据库中有一个文件,它被分成多个块,每个块是2 MB。 例如。 20 MB文件=> 10个块 当浏览器开始下载文件(video文件)时,我已经研究了Chrome,它首先检查'range=bytes 0-'字节范围,如果服务器成功回应'right'字节和206回头,则发送另一个请求文件的结束字节,例如'range=bytes 1900000-' , 它只是检查您的服务器是否对部分响应做出了很好的响应 在服务器端,我编写了我的应用程序,以便它会发送2 MB的部分,如果你问它很好:) 我想让浏览器做什么 range=bytes 0-' range=bytes 2000000-4000000 bytes' range=bytes 4000000-6000000 bytes' 但是如果你问一个不适合2MB块的部分,它会给出一个错误。 或者它只是不能从正确的位置播放audio/video文件。 range=bytes 2500000-4000000 bytes' range=bytes 0-1000000 bytes' 这将会产生错误,因为我无法从块的一部分开始发送。 否则,我不得不切片我的块,并做一些缓冲操作。 但我想保持清洁。 如果这是可能的,请让我知道。

NodeJS – 正在下载的videostream

我正在编写一个程序,将stream式传输当前正在下载到驱动器上的video文件。 我遇到的问题似乎是让浏览器实际播放video。 该脚本监听文件的变化,然后stream其余的,但除了显示一个空白的video页面之外浏览器不做任何事情。 var fs = require('fs'), http = require('http'), filename = '/home/qrpike/Videos/topgears.mp4'; http.createServer(function (req, res) { console.log(req.url); if( req.url == '/video.mp4'){ res.writeHead(200,{ 'Content-Type' : 'video/mp4', 'Cache-Control' : 'public', 'Connection' : 'keep-alive', 'Content-Disposition' : 'inline; filename=topgears.mp4;', 'Content-Transfer-Encoding' : 'binary', 'Transfer-Encoding' : 'chunked' }); fs.open(filename, 'r', function(err, fd) { if (err) throw new Error('Could not open […]

HLS使用节点JS进行stream式传输

我正在尝试使用node.jsstream式传输HLS内容。 不知何故,它不工作。 如果有人帮助我,这将会非常有帮助。 问题:试图从node.js服务HLS内容(不是直播stream,而是一组.ts文件和.m3u8播放列表 , 换句话说就是VOD内容 ) 文件夹结构 stream_test |— app.js |— node_modules |— streamcontent |— test.m3u8 |— segment0.ts |— segment1.ts . . . |— segment127.ts 我的app.js看起来像这样 var http = require('http'), url = require('url'), path = require('path'), fs = require('fs'); var mimeTypes = { "html": "text/html", "jpeg": "image/jpeg", "jpg": "image/jpeg", "png": "image/png", "js": "text/javascript", "css": […]

如何通过meteor来提供HTTP请求

我正在使用meteor创build一个实时stream媒体应用程序。 目前我有一个需要创build一个实时转码选项,所以我正在试图将这个node.js模块与我们的meteor应用程序: https : //github.com/mifi/hls-vod 。 然而,它的工作方式是,你实际上从你的HTML5video标签的src调用app.get(hls /)。 我想知道是否有一种方法可以期待使用meteor的电话。 由于我不能整合meteor,所以我在这方面遇到一些麻烦。 我想知道是否有一个方法来让meteor接收HTTP请求,并根据节点模块发回数据。

iPhone上的HTTP实时stream媒体服务器

我试图在iPhone上运行HTTP实时stream媒体服务器,该服务器捕获来自摄像机的videostream并将其提供给HTML5客户端(它支持HTTP实时stream式传输)。 到目前为止,我有以下工作。 iOS上的HTTP Livestream媒体服务器(用Node.js编写),它从video捕获模块生成的传输stream(video/ MP2T)文件列表中dynamic更新索引文件。 video捕捉模块,它使用AVCaptureMovieFileOutput连续产生一系列10秒的QuickTime文件(它们之间有一个小的差距,但它足够小,我的应用程序)。 我需要的是一个即时转换器,它将每个QuickTime文件转换为一个传输stream文件(无需更改编码,我只需要一个不同的容器),它将上面的两个模块桥接起来。 我正在采取这种方法,因为据我所知,这是利用iPhone的硬件video编码器的唯一方法(我在这里已经做了相当多的研究,我很确定,请让我知道我是否错了)。 less数人提出了ffmpeg,但是我宁愿使用MIT许可证(如果有的话)使用更小的代码,或者从头开始写一些东西(并且使用MIT许可证开放源代码)。 我对这个媒体容器很陌生,如果有人能指出我正确的方向(示例代码,开源,文档,…),我真的很感激。