Live streaming is choppy, jerky - advice?

The use case we are developing is a one-to-many live streaming webcast from a user’s webcam using flash encoding through a Chrome browser.

We are currently in development, so at maxmium, there is one incoming live stream and 2 outgoing streams from our media server. The server is 4-core, Xeon, with 16gb of memory. I have an upload test speed of 8Mbps and download test of 80Mbps.

We are having issues with video quality on the receiving end, playing back through a Chrome browser. The video is choppy and jerky, basically it is skipping frames. For my use case, this choppiness will fail user acceptance. I was aspiring for the smooth, high quality playback of services like Twitch.tv.

I watched the following tutorial and noticed the presenter’s feed is also choppy. Is this normal and expected with Wowza? https://www.youtube.com/watch?v=SNcM3_zFqzM

My questions are:

  1. How can improve the quality of the viewer video? I can accept worse latency since it is a webcast use case. I want to get to that Twitch-level quality.

  2. What should I expect for the smoothest level of playback?

  3. Are “choppy” and “jerky” the right nomenclature for my describing my issue?

Can you provide detail about the incoming stream:

What is the video and audio codec?

Keyframe interval(GOP length)?

FPS?

What player are you testing playback in?

For RTMP playback, choppiness is usually a bitrate/bandwidth problem. It might be a bottle-neck between the encoder and Wowza, or between Wowza and the playback client you are testing.

You can use this tool at the playback client location to measure bandwith between Wowza and that client location.

And you can use this tool at the encoder location to measure client to Wowza bandwidth

You can eliminate the encoder-side, for testing purposes, by creating a server-side stream using this scheduler.

Regards,

Salvadore