Quality or Motion?

Posted on April 15th, 2009 in General

One can operate with the set of available video publishing settings to get desired result from flash application, namely:
fps - the rate at which the camera is capturing data, in frames per second.
bandwidth - An integer that specifies the maximum amount of bandwidth   the current outgoing video feed can use, in bytes.  If 0 is set, than video occupies the whole available channel, if not 0, that the amount allowed.

This is reasonable, if you need to leave part of the channel for something else.
quality   - An integer specifying the required level of picture quality,  as determined by the amount of compression being applied  to each video frame. Codec by all means is trying to supply maximum quality, but in the way not to decrease fps. If quality is set higher than zero, we forbid codec to compress frames with lower quality. This can lead to decreasing of fps, which means that video will be displayed with delay. For instance:  if quality=0, than the quality of the frame will be lower, but there will be no delays.  If quality = 80, the frame quality is higher, but there are delays.
audioRate - quality of the sound compression. Allowed values: 5,8,11,22,44 Hz
Here, what Adobe suggests:
To indicate that bandwidth use takes precedence, pass a value for bandwidth and 0 for frameQuality. Flash will transmit video at the highest quality possible within the specified bandwidth. If necessary, Flash will reduce picture quality to avoid exceeding the specified bandwidth. In general, as motion increases, quality decreases. To indicate that quality takes precedence, pass 0 for bandwidth and a numeric value for frameQuality. Flash will use as much bandwidth as required to maintain the specified quality. If necessary, Flash will reduce the frame rate to maintain picture quality. In general, as motion increases, bandwidth use also increases. To specify that both bandwidth and quality are equally important, pass numeric values for both parameters. Flash will transmit video that achieves the specified quality and that doesn’t exceed the specified bandwidth. If necessary, Flash will reduce the frame rate to maintain picture quality without exceeding the specified bandwidth. In practice, there is no reason to limit the bandwidth within narrow channels. The bandwidth is already limited. The quality also cannot be limited, ’cause the delays will appear. That is why we set bandwidth=0 and quality=0

Leave a Reply