We're trying to track down a performance problem and isolate where it would be coming from. Here is the scenario:
- Wowza is a 4 core Windows box and has 8GB of RAM.
- We have followed all the steps in the performance tuning guide
- No firewalls involved for this test as it is all LAN to LAN on the same subnet
- Wowza Java heap size is set to 5000
- Wowza has the -server option enabled
- Java JDE version is 1.7.0_01
- We do not have garbage collection enabled
- The Wowza application I'm talking to is a simple default application with the type set to 'live' and no other changes beyond the standard config.
- Wowza server VHost.xml has the send and receive buffer size set to 16000 for low latency.
We have a MacPro running CamTwist and sending a video to Flash Media Live Encoder 3.2. We have also tested Wirecast on the same MacPro with the same video files. Both encoders show an output of 30fps with 0 dropped frames. We are connecting to Wowza using RTMP.
When I take VLC and ask it to play the live video through Wowza via RTSP, I get stuttering, really bad looking macroblocking (not encoded) and the buffer has to increase. Wowza's network connection shows only 9% in use, the server shows around 5.29GB of RAM in use and 30% CPU. We're all on the same Gig switch, all computers connected via Gigabit full duplex. If I open the VLC video on the same computer that is broadcasting I get the same stuttering.
If I play back the same video through Wowza via RTMP (jwplayer) it looks better without macroblocking but still has a few dropped frames. The buffer is also about 5 seconds longer than what I have in VLC.
To ensure that VLC isn't in a strange state I have reset the preferences to default and see the same issues.
In no scenario do I get fluid video playing back. So now I'm trying to figure out if we have a network issue, a Wowza issue or an encoder issue. The next thing I'll try is having the Wirecast box encode a UDP stream and I'll pick that up without the use of Wowza in VLC to see if it works any better. Wondering if anyone has seen this before? Could it be that I need better garbage collection? Is having 5GB of Java heap too much? Could my encoders be dropping frames and Wowza is hating that?