哪种 Flash H.264 HTTP 流媒体方法最好?
我正在研究预先录制的 HTTP h.264 视频流。我在使用 RTMP 时遇到了太多防火墙问题。
人们是否正在接受新的 Adobe HTTP Dynamic Streaming 方法? http://www.adobe.com/products/httpdynamicstreaming/
任何使用 Akamai 获得积极体验的人高清? http://wwwns.akamai.com/hdnetwork/demo/flash/zeri /index.html
还是旧的 HTTP 伪流仍然是可行的方法? http ://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12534/video-delivery-http-pseudo-streaming
我发现令人震惊的是,没有任何在线编码我研究过的服务支持 F4F 和 FMF Adobe HTTP 动态流格式。
http://www.encoding.com http://heywatch.com/page/home http://zencoder.com http://www.pandastream.com
理想的实际上是一个支持 Apple 的 m3u8 HTTP Streaming 方法的 OSMF 插件,因为不需要特殊的服务器组件,并且它可以与 iphone 和 android 3 兼容。但是该插件似乎还不存在,而且我在项目中有太多的时间/预算限制,无法自己编写这样的插件。
I'm looking into streaming of prerecorded h.264 videos of HTTP. I'm running into too many firewall problems using RTMP.
Are people picking up on the new Adobe HTTP Dynamic Streaming approach?
http://www.adobe.com/products/httpdynamicstreaming/
Anybody with positive experiences using Akamai HD?
http://wwwns.akamai.com/hdnetwork/demo/flash/zeri/index.html
Or is the older HTTP Pseudo Streaming still the way to go?
http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12534/video-delivery-http-pseudo-streaming
I found it striking that none of the online encoding services I looked at support the F4F and FMF Adobe HTTP Dynamic Streaming formats.
http://www.encoding.com
http://heywatch.com/page/home
http://zencoder.com
http://www.pandastream.com
Ideal would actually be an OSMF plugin that supports Apple's m3u8 HTTP Streaming approach, because no special server components are required and it would be compatible with iphone and android 3. But that plugin doesn't appear to exist yet and I have too many time/budget constraints in the project to write such a plugin myself.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Adobe 的 HTTP 流媒体机制如果适合您的情况,就是最好的方法(您可以使用他们的流媒体服务器,另一个兼容的服务器,如 Wowza,或者可以使用他们的工具来分解视频并托管单独的部分)。当您遇到防火墙问题时,这比 RTMP 更好。它也比伪流更好,因为处理播放单独部分的客户端代码完全包含在 Flash 播放器中,并且更容易实现,并且可以提供更流畅的结果。此外,由于播放器将视频重新组合在一起,因此您不会像伪流媒体那样在搜索时丢弃下载的视频。
也就是说,伪流仍然是一个非常好的选择。它与 Adobe 的 HTTP 流媒体几乎相同,但在播放器外部实现,并且大多数情况下(但不一定)会在下载部分之外查找时丢弃下载的视频。
我不能肯定地说,但我怀疑您在 Adobe 特定产品之外不会看到对 Adobe HTTP 流媒体标准的大量支持的原因是,存在三种完全不同的 HTTP 流媒体“标准”,它们在完全不兼容的方式(Adobe、Apple 和 Microsoft)。如果这三者最终以某种方式就标准达成一致,那么应该更容易找到第三方工具支持。
Adobe's HTTP Streaming mechanism is the best approach if it works in your situation (either you can use their streaming server, another compatible one like Wowza, or can use their tools to break up the videos and host the separate parts). This is better than RTMP when you're having firewall issues. It's also better than Pseudo streaming since the client side code to handle playing separate parts is entirely contained in the Flash player and is easier for you to implement and can provide a smoother result. Additionally, since the player is putting the videos back together you're not throwing away downloaded video upon seek as is often the case with pseudo streaming.
That said, pseudo streaming is still a very good option. It's pretty much the same thing as Adobe's HTTP streaming but is implemented outside the player and most often (but not necessarily) will discard downloaded video upon seek outside the downloaded section.
I can't say for certain but I suspect the reason you won't see a lot of support for Adobe's HTTP streaming standard outside Adobe-specific products is that there are three totally distinct HTTP streaming "standards" that do the exact same thing in a totally incompatible way (Adobe, Apple, and Microsoft). If these three somehow eventually agree on a standard, 3rd party tool support should be easier to find.
F4F 和 F4M 并未真正编码。您可以将视频编码为 MP4,并使用命令行 Adobe F4F Packager(适用于 Windows 或 Linux)对其进行处理。这会生成您的 F4F 和 F4M 文件,MP4 文件不会再次转码,只是索引,并且如果您愿意的话,可能会分成多个片段。
F4F and F4M are not really encoded. You encode your videos into MP4 and process them using the command line Adobe F4F Packager (for Windows or Linux). This produces your F4F and F4M files, the MP4 file is not transcoded again just indexed and maybe split into segments if you want it to.