问题标签 [http-streaming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
880 浏览

ruby - EventMachine/em-http-request 检测 http 流连接何时停止

我正在使用 EventMachine + em-http-request 来请求 Twitter 流 API。它工作得很好,但现在我想得到它的错误证明。

检测连接停止的最佳方法是什么?(为了尝试自动重新连接)。

我有一个临时解决方案:每次从流方法收到一个新块时,我都会保存当前时间戳。PeriodicTimer 正在检查此时间戳,并在最后一个时间戳超过 30 秒时发出重新连接。此解决方案的问题在于,停止连接和没有内容的工作连接没有区别。

谢谢你的帮助。

0 投票
1 回答
790 浏览

internet-explorer - 如何使用 Yaws 流式传输内容?

我读到了Yaws:流数据到客户端。我创建了一个如下所示的简单示例,但它不起作用。我得到一个错误,这个过程正在死去。

这是我的 yaws 文件:

我也尝试过,yaws_api:stream_chunk_deliver/2但我得到了同样的错误。这是我在命令提示符下收到的错误消息:

最后一个块似乎没有发送给客户端:

这是我使用的 JavaScript 客户端代码(仅适用于 IE8 和 IE9),使用XDomainRequest

在 JavaScript 客户端上,该xdr.onerror = function()方法被调用。客户端不应在此示例中显示任何数据,因为它需要2k prelude,但应该按照我的理解发送。


更新

在修复了 Steve Vinoski 指出的 Erlang 问题并删除\r\n了我的数据后,Yaws 服务器发送了正确的数据。但我仍然xdr.onerror = function()在 JavaScript 客户端上遇到错误。似乎我需要向响应中添加另一个标头,Access-Control-Allow-Origin: *XDomainRequest Object中所述:

该文档将通过发送一个带有原始值的 Origin 标头从域的服务器请求数据。只有当服务器响应Access-Control-Allow-Origin标头*或请求文档的确切 URL 时,它才会完成连接。此行为是万维网联盟 (W3C) 的 Web 应用程序工作组关于 XDomainRequest 对象与之集成的客户端跨域通信的草案框架的一部分。

如何将此标头添加到 HTTP 响应?看起来我只能在返回值中设置 MIME 类型:{streamcontent, MimeType, FirstChunk}

0 投票
4 回答
901 浏览

ruby - 具有基本身份验证和 gzip 的 em-http 流挂起

我正在尝试使用 Gnip PowerTrack API,它要求我使用基本身份验证连接到 JSON 的 HTTPS 流。我觉得这应该是相当微不足道的,所以我希望一些比我聪明的 ruby​​ist 能指出我明显的错误。

这是我的 ruby​​ 1.9.3 代码的相关部分:

流连接(我的 Gnip 仪表板表示连接)但随后只是缓冲并且从不输出任何内容。事实上,它似乎永远不会进入s.stream do..区块。请注意,这是一个 GZip 编码流。

请注意,这有效:

编辑:我确定这有点隐含,但我不能给出任何登录凭据或实际 URL,所以不要问;)

编辑#2:如果我能弄清楚如何为 URL 编码凭据,yajl-ruby 可能会起作用(简单的 URL 编码似乎不起作用,因为我无法通过 Gnip 进行身份验证)。

编辑#3:@rweald 发现 em-http 不支持流式 gzip,我在这里创建了一个 GitHub 问题。

编辑#4:我已经在 em-http-request 中分叉并修复了这个问题,如果你想以这种方式使用 em-http ,你可以指向我的分叉。该补丁已合并到维护者的存储库中,并将在下一个版本中使用。

编辑#5:我的修复程序已在 em-http-request 1.0.3 中发布,因此这应该不再是问题。

0 投票
0 回答
2695 浏览

google-chrome -

目前,我有 VLC 媒体播放器通过端口 8082 上的 http 流式传输视频文件。我有一个网络服务器运行具有以下代码的页面:

此代码适用于 Firefox。我可以看到 VLC 发送的流在浏览器中播放,延迟 5 秒。但是,此代码在 Chrome 中不起作用。我也尝试过 mp4 流,但这也不起作用。

我想知道这里有什么问题。Chrome 支持对我们来说至关重要。chrome 不支持 http 流<video>吗?

0 投票
4 回答
7023 浏览

flash - Wowza HTTP Live streaming San Jose vs Cupertino ie Flash vs APPLE 到底有什么区别?

http://www.wowza.com/forums/content.php?217#cupertinostreaming 我能做出的唯一区别是,flash http 流使用 xml 清单,而苹果 http 流使用 playlist warper。我不确定这些在概念上是否有任何不同。有两种不同的方式来实现同一概念的目的到底是什么?

我可以从文档中看到 flash http 流需要使用 OSMF 构建的基于 flash 的播放器。苹果http流媒体需要什么播放器。?

0 投票
1 回答
7002 浏览

python - 通过 HTTP 流式传输 ffmpeg 输出

当我尝试将 VLC Python 绑定与 ffmpeg 连接时(请参阅Exchange data between ffmpeg and video player),我认为让 ffmpeg 将 RTSP 流输出到 STDOUT 并用Python 脚本“捕获”它并通过 HTTP 发送将是好主意。因此,我使用 SimpleHTTPServer 制作了一个小型 HTTP 服务器,从中我从 FFMpeg 获取 STDIN 并将其“输出”到网络。

这是我正在使用的语法:

这似乎可行,我可以访问流,但不能访问视频,也不能播放音频。我尝试在 Windows 上使用 VLC,在 Linux 上使用 VLC 和 MPlayer,但没有成功。简单地运行

完美运行。所以问题似乎出在我将数据从标准输入写入网络服务器时。我做错了什么?

0 投票
1 回答
1708 浏览

c# - 使用 ASP.NET 的渐进式 Mp4 流式传输

我在使用 asp.net 脚本从任何部分或部分流式传输 mp4 视频时遇到问题。当您从开始流式传输 mp4 视频但如果您想选择任何起点时流式传输失败,脚本运行良好。

我正在使用的示例脚本

我认为问题出在以下行,如果我删除它,视频仍然可以播放,但从开始 if (position > 0) { fs.Position = position; 可能有开始的 mp4 标头,就像在 flv 流中使用的那样来跟踪搜索位置,因为如果搜索位置 > 0,则无法识别流

任何人都可以帮助我。

问候。

0 投票
0 回答
594 浏览

android - 为安卓流媒体创建视频

这是我为在 android 上创建视频流所做的搜索的答案。虽然 android 支持 mp4 流式传输,但并不容易。我从我的经验中得出的简单步骤是:- 1)首先使用超级编码器对视频进行编码,参数是-

A) 顶级参数:

a) mp4 作为容器 b) mpeg-4 视频编解码器 c) aac-lc 音频编解码器

B) 视频参数:

d) 尺寸为 380x480,将自动创建纵横比 e) 帧速率自动设置为 29.97 或给出该参数 f) 比特率为 480 kbps g) 在选项列中取消选中高质量、顶级质量、裁剪、填充

C) 音频参数:

h) 采样频率为 44100 i) 通道为 2 j) 比特率为 96kbps k) 检测所有已检查的流

D)如果您要编码的视频位于 d:\ 中,则将输出路径设置为与源示例不同的路径,然后设置 d:\ 以外的输出路径,如 d:\encoded 并密切关注它,对于某些视频我被困在中间,所以我关闭了 super 并将它们放在那个文件夹中,直到它已经编码。输出路径是通过右键单击 super 从输出管理中设置的

现在,在编码后,你只需要提示我在 linux 上使用 MP4Box 的视频,因为我是 linux 上瘾者。Linux 上的简单命令是 MP4Box -hint myvideofile.mp4

该视频也可以使用 http 协议轻松地从 Web 服务器流式传输,也可以在 darwin 服务器上使用。

希望这对其他人有帮助

0 投票
1 回答
653 浏览

ruby-on-rails-3.1 - Heroku 上的 HTTP 流式传输(上传大量数据)

我在 Heroku 上托管了一个应用程序,该应用程序将大量数据信息保存到数据库中(大约需要 70 秒)。

Heroku 在每个请求的 30 秒后显示关于超时的错误页面H12,我如何在上传过程中显示一些信息消息而不是显示H12错误?

我一直在寻找这方面的一些例子,但我并没有很成功......我只是发现了一些笔记,我必须每次(例如 15 秒)从服务器发送一些控制字符串,但我已经没有找不到一些具体的例子如何做到这一点......

任何建议如何做到这一点?

预先感谢。

0 投票
2 回答
710 浏览

wcf - 此 WCF 服务返回 TIFF 图像 - 如何设置它返回的图像的文件名?

此 WCF 服务返回 TIFF 图像。它检查它是否连接到我们的存储库 - 并从数据文件中获取字节。它检查文件是 PDF、tiff 还是图像,并返回适当的 mime 类型。我现在可以调用该服务,它会返回适当的文件——但图像名称为“documentID”.tif。如何设置它返回的图像的文件名?