Articles of videostream

使用nodejs ffmpegstream摄像头

我试图从本地摄像头生成一个rtspstream,我一直在使用fluent-ffmpeg插件nodeJs,这是我的代码: var ffmpeg = require('fluent-ffmpeg'); var proc = ffmpeg('/dev/video1') //.format('h264') .inputOptions([ '-f v4l2', '-framerate 25', '-video_size 640×480' ]) .outputOptions([ '-f rtsp', '-rtsp_transport tcp', 'rtsp://localhost:7002/live.sdp' ]) //.output('rtsp://localhost:7002/live.sdp') .on('end',function(msg){ console.log("finish ffmpeg command " + msg); }) .on('err',function(err){ console.log("error found " + err); }); 在localhost:7002的另一端我有一个ffplay主机,这个ffmpeg命令完美地工作: ffmpeg -f v4l2 -framerate 25 -video_size 640×480 -i / dev / video1 -f […]

如何使用node.JSstream式传输.avi电影文件? (文件打开下载屏幕,而不是stream式传输)

我使用vid-streamer https://github.com/meloncholy/vid-streamer 。 要安装只需在您的电脑上创build一个文件夹 打开terminal并做CD到文件夹 执行npm init 给应用程序一个名字,如“MyVidStreamer” 一个package.json将被创build npm install express 在package.json的同一个文件夹上创build一个server.js 写这个并保存 var app = require("express"); var app = app(); var vidStreamer = require("vid-streamer"); app.get("/videos/:type", vidStreamer); //{folder}/{videoName.extension} app.listen(3000); 更新vid-streamerconfiguration:打开node_modules / vid-streamer / config /并编辑json文件vidStreamer-sample.json: { "mode": "development", "forceDownload": false, "random": false, "rootFolder": "", <—- "rootPath": "", <——- "server": "VidStreamer.js/0.1.4", "maxAge": "3600", "throttle": false […]

如何通过Node JS在ffmpeg中获取特定的开始和结束时间?

我想在特定的开始和结束时间剪切video并保存。 我不能理解如何减less节点JS的video的具体时间。 video复制代码: return new Promise(function(resolve ,reject){ var ffmpeg = require('fluent-ffmpeg'); ffmpeg(fs.createReadStream(path.join(__dirname,'..','..','/video.mp4'))) .seekInput('01:00') .duration('02:00') .outputOptions('-strict experimental') .on('start', function(commandLine) { console.log('Spawned Ffmpeg with command: ' + commandLine); }).on('end', function(err) { if (!err) { console.log('conversion Done'); //res.send("conversion Done"); resolve(); } }).on('error', function(err) { console.log('error: ', +err); reject(err); }).save(path.join(__dirname,'..','..','/test.mp4')); });

在NodeJS中的高性能video文件服务器

我想在NodeJS中构build一个高可用性和高性能的video文件服务器和stream媒体video。 基本上,我想知道: 在NodeJS中创buildvideo文件服务器有哪些可能的方法。 它会pipe理很多并发请求吗? 由于这是一个video文件,每个请求都花费时间来完全解决。 有没有其他的可能性使用另一个静态文件服务器。 请告诉我如何走上正确的道路。

为什么图像没有完全显示与我的stream应用程序?

我已经写了一个简单的Node.js应用程序来传输内容(主要用于video,但其他的东西也可以)。 它似乎工作得很好,除了一些jpeg,其中图像的底部并不总是显示。 这里是一个例子,图片的底部在左侧丢失。 显示问题的网站在这里 ,没有问题的相同的网站在这里 。 (在第一个链接的大多数图像的底部应该有粉红色的位) 该应用程序的代码是在Github上 ,但我想重要的线是 stream = fs.createReadStream(info.file, { flags: "r", start: info.start, end: info.end }); stream.pipe(res); (所有的繁重工作都是由stream.js完成的,而不是我的代码。) 我已经尝试删除开始和结束参数,但没有区别。 如果将其更改为将文件stream式传输到process.stdout ,并将输出保存到文件,则会显示整个图像。 一个文件比较程序说stdout和原来的文件是一样的。 如果我转移除基线jpeg以外的东西(所以即使渐进式jpegs工作),它显示整个文件。 如果我通过链接的Node.js应用程序(使用Express)访问文件,但不通过stream式传输器,它显示整个图像。 如果我从浏览器中将不完整的图片保存到桌面,则会保存整个图像。 对于一些JPEG的作品,但不是最。 这个问题发生在本地和我的服务器上(Windows 2008 R2和Ubuntu 11)。 浏览器testing(超过3台计算机和1个虚拟机) Safari 4,5 – 作品 火狐4,11(2电脑) – 不起作用 Chrome 18(2台电脑) – 不起作用 IE 8 – 不起作用 IE 9 – 作品 歌剧11 […]

捕获缩略图Whilte下载Youtubevideo

我想在特定时间线上捕捉Youtubevideo的缩略图。 (例如3.2秒)我用ytdl和fluent-ffmpeg和node.js来实现它。 下载完成后可以捕获缩略图。 var fs = require('fs'); var ytdl = require('ytdl'); var ffmpeg = require('fluent-ffmpeg'); var videostream = fs.createWriteStream('video.flv'); var myytdl = ytdl('http://www.youtube.com/watch?v=A02s8omM_hI'); myytdl.pipe(videostream); videostream.on('close',function() { console.log('Downloading complete…'); var proc = new ffmpeg({ source: 'video.flv', nolog: true }) .withSize('150×100') .takeScreenshots(1, '/home/test', function(err) { console.log(err || 'Screenshots were saved'); }); }); 但是,我无法实现在下载时捕获缩略图。 我想要做的基本想法如下。 从X秒开始下载Youtubevideo。 (工程) 将其pipe理为可读/可写(双工)内存stream(需要通知) […]

HTTP伪stream,如何获取范围从开始参数

我们正在为nodejs中的MP4文件进行HTTP伪stream式传输。 对于HTML5,这非常简单,因为它可以与内容范围标题一起使用,但是对于Flash而言,通常会将startparameter passing到包含要跳过的秒数的请求。 有谁知道什么逻辑会将秒转换为字节的video,还有什么可能需要这个? 任何正确的信息将是一个巨大的帮助。 谢谢!

将几个video文件与Node JS结合成一个stream

试图创build一个像在线电video道,从互联网上stream随机video。 我可以下载和解压缩video。 但是,我如何从他们创build一个stream? 我读到,我可以将video分成大块,然后逐一交给客户。 这是唯一的方法吗? 我应该用什么js库?

使用nodejs将videostream传输到浏览器

我想用nodejs创build一个stream媒体服务器(我知道有很多,但我想创build一个使用nodejs),问题是,video不像YouTube上得到下载,你可以给如何做像YouTube一样获得stream媒体,谢谢 var http = require('http'), var fs = require('fs'), var util = require('util'); http.createServer(function (req, res) { var path = '/home/flumotion/test.mp4'; var stat = fs.statSync(path); var total = stat.size; if (req.headers['range']) { var range = req.headers.range; console.log("Range = "+range); var parts = range.replace(/bytes=/, "").split("-"); var partialstart = parts[0]; var partialend = parts[1]; var start = […]

如何使用node.js将当前正在下载的videostream传输到html5播放器?

我目前正在下载一个项目,下载一个洪stream,而下载时,它stream到一个HTML5video播放器。 我的项目的限制不让我使用peerflix或webtorrent。 我目前正在使用torrent-stream模块。 我的代码是在node.js和帕格。 具体如下: server.js var uri = 'magnet:?xt=urn:btih:11a2ac68a11634e980f265cb1433c599d017a759'; var engine = torrentStream(uri); let engineGo = function () { return new Promise(function (resolve, reject) { var engine = torrentStream(uri); engine.on('ready', function() { engine.files.forEach(function(file) { if (file.name.substr(file.name.length – 3) == 'mkv' || file.name.substr(file.name.length – 3) == 'mp4') { console.log('filename:', file.name); var stream = file.createReadStream(); var […]