- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
可以实现一项功能,允许用户在其他人上传到服务器时观看视频。 html 5 适合这个任务吗?但是闪光灯?有没有read to go的解决方案,不想重新发明轮子。该应用程序将托管在专用服务器上。
谢谢。
最佳答案
当然有可能,数据不是吗?
然而,实现起来将非常困难。
此外,我对 python 不太感兴趣,我不知道有什么适合您要求的库或服务,但我可以介绍视频流的基础知识。
我假设您在谈论上传的视频文件而不是流。因为,为此,显然有成千上万的解决方案......
在最简单的情况下,上传的视频已经准备好提供给您的客户,并且具有所谓的“快速启动原子”。它们是特定于容器格式的,有时会有一堆。最常见的是moov-atom。它包含大量数据并且非常复杂,但是在我们的用例中,简而言之,它包含使客户端能够使用从一开始就可用的数据立即开始播放视频的数据。
如果您有渐进式下载视频(youtube...),这意味着从网络服务器提供文件的位置,则需要这样做。您显然还没有下载完整的文件,播放器已经可以开始播放了。
如果 fastastart 原子不存在,那将是不可能的。
有时是,但例如播放器无法显示进度条,因为它不知道文件有多长。
有了它,就可以上传文件了。您将需要一个将数据直接写入缓冲区或文件的上传解决方案。 (文件会更容易......)。
这几乎总是如此,例如 PHP 在 tmp_dir 中创建一个文件。如果您想在上传视频时查找视频,也可以指定它。
好吧,现在您可以开始逐字节读取该文件并将该数据打印到与另一个客户端的连接。只要确保不要先于已经收到和写入的内容。您可能会使用内存中设置的元数据启动上传,该元数据保存当前接收到的字节位置和文件位置。
在上传开始后请求文件的任何人都可以接收整个文件,或者如果上传尚未完成,请从您的应用程序中获取。
当数据变短时,您将不得不限制数据传输或暂停它。这对客户端来说几乎是“慢速连接”。但是,您将不得不不时回显一些数据以防止连接关闭。但是,如果您的上传没有停止,为什么要停止?,那应该不是问题。
现在,如果您想将各种输入格式即时转码为您想要的输出格式,事情就会变得有趣起来。
AFAIK ffmpeg 具有简洁的 apis,可让您直接处理数据流。
手刹也是一个非常好的工具,但是您需要使用外部可执行文件走很长的路。
我不太了解您的要求,但是如果您的客户端已经调整,例如在 red 5 流服务器上,将数据输入流也应该可以正常工作。
关于ruby-on-rails - 在上传时观看视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10988252/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!