2

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!

ngzhongcai
  • 1,793
  • 3
  • 23
  • 31

1 Answers1

4

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:

  1. On your EC2 server, navigate to the Live Publishing Point and start it. This will put the publishing point in a state that is ready to accept a stream.
  2. In Expression Encoder, press Connect after entering the publishing point URL. You should see a successful connection at this point as long as port 80 is open.
  3. Press Start and encoding should begin. (Best to start with only 1 or 2 bitrates when testing your stream; keep the bandwidth low.)

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.

Brandon
  • 13,956
  • 16
  • 72
  • 114
  • Hi RouteNPingMe, thanks for the advise. I am able to render an on-demand stream from the EC2 instance. Not able to stream the BigBuckBunny.isml file from laptop over to EC2. Not able to stream BigBuckBunny.isml file from local publishing point to EC2 publishing point. IIS publishing point on EC2 just doesn't register any incoming stream. In addition to port 80, I have also opened port 8172, per http://learn.iis.net/page.aspx/820/amazon-ec2-microsoft-web-platform-images---media-server/ – ngzhongcai Aug 09 '11 at 06:52
  • Yeah, tried the alternate setup you recommended. I'm now trying random things, ie, like turning off ASP.NET role services, as recommended in the IIS Smooth Streaming Deployment guide. – ngzhongcai Aug 11 '11 at 14:38
  • Getting new error message "Cannot broadcast streams with the current bandwidth. Please reduce the number of streams or reduce the bitrates or size of the streams". Not sure if related to me turning off ASP.NET role services – ngzhongcai Aug 11 '11 at 14:46
  • Log from server: 202.65.245.6, -, 8/11/2011, 15:23:46, W3SVC1, IP-0A8A0BA6, 10.138.11.166, 0, 246, 126, 200, 0, POST, /test.isml, -, 202.65.245.6, -, 8/11/2011, 15:23:46, W3SVC1, IP-0A8A0BA6, 10.138.11.166, 0, 225, 1467, 404, 1168, GET, /test.isml, manifest, – ngzhongcai Aug 11 '11 at 14:46
  • http://social.expression.microsoft.com/Forums/en-US/encoder/thread/d8748ef6-7e03-4977-8f47-806288e87188/#888234db-21bc-4cc1-b35e-1613a2055a61 – ngzhongcai Aug 13 '11 at 09:29
  • If Windows Firewall is turned on at all on your instance, turn it off completely, and use only the Amazon firewall. Any change? – Brandon Aug 14 '11 at 03:48