使用node.js在简单请求中流式传输多个文件

时间:2012-04-03 15:43:16

标签: node.js video-streaming coffeescript

我正在尝试使用coffescript编写的node.js应用程序在单个请求中流式传输多个视频文件。这是我的代码:

express = require 'express'

app = express.createServer(
  express.compiler(src: __dirname + '/client', enable: ['coffeescript']),
  #express.static(__dirname + '/client'),
  express.errorHandler dumpExceptions: true, showStack: true
)

app.get('/video/:number', (req, res) ->
  console.log 'sending'
  res.sendfile("sample#{req.params.number}.webm")
)

port = 3000
app.listen port

到目前为止,我设法发送一个文件,我可以指向任何名称格式为sample<number>.webm的视频文件。我的目标是能够发送具有相同名称格式但只有一个请求的文件夹内的所有文件,这意味着当用户将浏览器指向http://localhost:3000时,视频就会显示为一个单个视频。

2 个答案:

答案 0 :(得分:2)

can't just concatenate WebM files,所以你必须要么:

  1. 通过连接所有视频构建一个大文件,
  2. 通过连接视频的管道运行它们,或
  3. 发送视频名称列表,然后按javascript顺序轮询视频。
  4. 我选择3号,看似简单,带宽节俭。

答案 1 :(得分:0)

为什么不在服务器端压缩所有视频文件并发回一个zip存档......就像这样..

Zip archives in node.js