IIS 实时平滑流式传输到 AWS EC2
我正在尝试将笔记本电脑网络摄像头的实时视频流传输到 AWS EC2 Windows 实例。下面的链接详细介绍了我遵循的步骤: http://learn.iis.net/page.aspx/620/getting-started-with-iis-live-smooth-streaming/
按“START”几秒钟后ExpressionsEncoder4,我收到随机错误弹出窗口,例如“发生未知错误”、“发生网络错误导致编码停止”和“服务器无法理解该请求”。
有时,这些错误不会出现,我可以在预览屏幕上看到捕获的视频输出。
在任何时候,我都无法在 IIS 发布点上注册任何流。
有什么想法吗?感谢您的帮助!
I am trying to do live video streaming from my laptop webcam out to a AWS EC2 Windows instance. Below link details the steps I followed: http://learn.iis.net/page.aspx/620/getting-started-with-iis-live-smooth-streaming/
A few seconds after pressing the "START" on ExpressionsEncoder4, I get random error pop-outs like "An unknown error has occurred", "A network error has occurred causing the encode to stop" and "The request could not be understood by the server".
Once in a while, these errors doesn't appear and I am able to see the captured video output on the preview screen.
At any one time, I am unable to register any streams on the IIS Publishing Point.
Any ideas? Thanks for any help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这里有几个问题需要解决。让我们一一分析一下。
未知错误
大多数情况下,“发生未知错误”是由于对 DirectShow API 的调用因任何意外原因而失败(奇怪的捕获设备、CPU 无法跟上编码,以及基本上任何发生这种情况的事件)。可以中断 DirectShow 图形帧流)。尝试不同的捕获源,看看结果是否发生变化。另外,从您的设备到本地 Windows Media 文件进行长编码,以确保此处一切正常。
网络错误/服务器无法理解请求
根据我的经验,网络错误主要与带宽有关;然而,请求未理解可能意味着您在 HTTP 请求中进行了某些更改(中间的代理等)。
首先测试点播
首先测试来自 EC2 服务器的点播流。下载 Big Buck Bunny 或自行编码,并确保您可以在浏览器中访问http://example.com/BigBuckBunny.ism/Manifest。在客户端和服务器块性能上使用 Smooth Streaming Health Monitor 进行测试使用 IIS 平滑流式处理性能测试工具。这将验证 IIS 媒体服务是否正常工作。
启动顺序
确保您按以下顺序启动实时发布点流:
备用设置
如果一切都失败,请在本地主机上设置平滑流(Expression 将流推送到 IIS Media)本地主机上的服务),并配置本地主机发布点以将流推送到您的 EC2 实例。如果您需要一个更能容忍网络打嗝的解决方案来处理长期流,或者您的连接没有您想要的那么稳定,那么这也是一个很好的方法。
祝你好运,希望这些信息中的一些能缩小范围。
There are a few problems here to solve. Let's go through them one by one.
Unknown Errors
Most often, "an unknown error has occurred" comes from calls to DirectShow APIs that fail for any unexpected reason (weird capture device, CPU can't keep up with encode, and basically any event that can interrupt the DirectShow graph frame stream). Try a different capture source, and see if your results change. Also, do a long encode from your device to a local Windows Media file to make sure everything is okay here.
Network Errors / Request not Understood by Server
Network errors in my experience have been mostly related to bandwidth; however Request Not Understood could mean you have something changing something in your HTTP requests (a proxy in between, etc).
Test On-Demand First
Test an on-demand stream from your EC2 server first. Download Big Buck Bunny or encode something yourself and make sure you can access http://example.com/BigBuckBunny.ism/Manifest in your browser. Test it using Smooth Streaming Health Monitor on the client side and server chunk performance using IIS Smooth Streaming Performance Testing Tool. This will verify that IIS Media Services is working properly.
Startup Order
Make sure you are starting your live publishing point stream in the following order:
Alternate Setup
If all else fails, set up a Smooth Stream on your localhost (Expression pushes stream to IIS Media Services on localhost), and configure your localhost publishing point to push the stream to your EC2 instance. This is also a good method to use if you need a more network-hiccup-tolerant solution for long term streams or where your connection isn't as solid as you'd like.
Good luck and hopefully some of this info will narrow it down.