The trouble
The streaming support today consists of a client (the mp3 player) limiting the speed. Some clients such as Windows Media Player doesen't have full streaming capabilities and downloads any streaming in full flank speed. This mean that if you have a limited network capacity, all resources will be put into one or few sessions.
The solution
The new streaming support consists of a small controller just sending enough data in resolution of a second. It has also 'prebuffer' support and 'buffer' support such that client can play off music fast when seeking and starting a media, and doesen't need to rebuffer in case of a sudden lack of network capacity (download?)
This streaming support is disabled by default. You can enable it by
setting
- Code: Select all
$streamengine = 1;
Also, the streaming support can at the time only read mp3 files which is not variabled bit rated.
You also have a small array of configuration for the stream engine:
- Code: Select all
$streamsettings =
array(
'preload' => 175,
'buffer' => 100,
'sleep' => 0.999,
'bitrates' => array(96,128,160,192,256),
'defaultrate' => 256
);
preload => The amount of data in precent will be output during new streams or seeking in existing streams. Set this to zero if you don't want prebuffer.
buffer => Percent of data per sleep. Optimal value is 100% (exact datarate.).
sleep => If the streaming engine fails to give exact datarate, you may tune this.
bitrates => List of supported bitrates. (This list is given mainly because we have no detection of VBR.)
defaultrate => is the bitrate we will use if the array of bitrates does not match the tune in question. The default rate should of course be high enough to serve all streams.
NB! The code is under development and may not work properly for you, in which case you should let us know.
Åge
