Buffering problems


I am experiencing problems with buffering -- is something wrong with Centova Cast?



Prior to diagnosing a buffering issue, it's important to note the exact role that Centova Cast plays on your server. Centova Cast itself does not do any streaming or stream sourcing whatsoever. Centova Cast simply manages the configuration files and media used by your streaming software, and automates the process of starting/stopping your streaming software.

Once you've used Centova Cast to start your stream, the process of actually broadcasting your stream is handled entirely by third-party streaming software (specifically, ShoutCast/IceCast for the server portion, and sctrans/ices for the source portion).

Since Centova Cast is completely "out of the picture" during audio broadcasting, it can have absolutely no effect on buffering, stuttering, or other audio problems you may experience. The following section describes some possible causes for such problems.

Diagnosing a buffering problem

With a few notable exceptions, buffering problems are virtually always caused by issues with your server or network. Per the previous section, they will never be caused by Centova Cast itself because Centova Cast does not do any streaming itself.

The following steps should help you track down the cause of the most common buffering problems:

  1. If you are using ices as your streaming source (or any streaming source other than sc_trans), ensure all of your MP3s are encoded at the correct bit rate, or that you've enabled on-the-fly re-encoding.

    You can determine whether on-the-fly re-encoding is enabled by editing the stream settings (as admin), clicking the Mount Points tab, selecting a mount point, selecting the AutoDJ Settings subtab, and verifying that Re-encoding is set to Enabled. If it is set to Disabled, then ices will NOT re-encode your media. In this case, your media MUST be pre- encoded to the correct bit rate/sample rate, or you will encounter significant buffering and bandwidth overage issues.

    In this event, you can enable on-the-fly re-encoding by simply setting Re-encoding to Enabled and restarting the stream. More information is available in this article.

    Note that sctrans always re-encodes your media (which is why it always uses such significant CPU time) so this step is irrelevant for sctrans.

  2. Make sure that the CPU usage on the machine is low enough to allow the streaming server/source to keep up with the audio.

    If your server load or CPU usage percentage is high, your streaming servers may be starved for CPU time and thus the stream may stutter or buffer.

    This is even more important when using server-side sources (such as sctrans or ices) as these programs typically require a lot of CPU time, and will quickly encounter buffering and/or stuttering audio if ample CPU time is not available.

  3. Make sure that nothing else is using a large amount of bandwidth on the server or your network.

    Note that streaming audio requires a significant amount of bandwidth, and if your network cannot provide sufficient bandwidth, you will see serious problems with buffering and/or stuttering audio.

    If you are sure that ample bandwidth has been allocated to your server and nothing else on your server is consuming bandwidth, check with your hosting facility to ensure that there are no network issues on their end. In many cases (particularly with VPS hosting, but also with dedicated servers) if another machine connected to your switch is consuming a large amount of bandwidth, this may interfere with your streams.

  4. If you are using an off-site source (eg: SAM Broadcaster, Oddcast, etc.) instead of using a server-side source such as sctrans/ices, please ensure that the Internet connection from which the source is connecting has sufficient bandwidth, and that nothing else on the source machine is consuming a lot of bandwidth or CPU time.

    For example, if you're attempting to run SAM Broadcaster on your home DSL connectionn to transmit audio to your streaming server, you must ensure that your home DSL connection has enough bandwidth to transmit a constant audio stream to your server. If you are using other software on your home DSL connection (for example, file sharing or VoIP software) these may cause buffering or stuttering audio problems on your stream.

    Also ensure that your home computer is fast enough to reliably encode the audio stream, and that no other high-CPU-usage programs are running on your computer.

Buffering audio problems almost always fall into one of the above categories.

What do I do if none of the above seem to apply

First, please ensure that you examine each of the above items very carefully. If for example you find that your buffering problems only occur at a specific time of day, you may want to check whether a cron job is scheduled to run around the time of the problems. If you are using a hosting control panel (CPanel, Plesk, etc.) check whether a backup or log analysis process is running -- both tend to use a significant amount of CPU time and may be the cuplrits.

Unfortunately, in many cases the problem is in fact #3, and we've found that many hosting providers are regrettably unwilling to admit that they're having bandwidth/network issues. If you are experiencing sporadic buffering problems that spontaneously start and stop for apparently no reason, and you've ensured that none of the other issues above are causing your buffering problems, then you may want to look more closely at the possibility of a networking problem at your hosting facility.

If you suspect this to be the problem, you may wish to hire a qualified network administrator who can run tests on your server's network connection to verify whether or not your hosting provider's network is indeed the source of the problems.

If after pursuing all of the above you have reason to believe that Centova Cast is somehow related to your buffering or stuttering audio problems, please feel free to contact us and provide a detailed explanation of what steps you have performed to diagnose the situation, and the reason(s) for which you believe that Centova Cast is involved.