
AVChat 2 and AVConference are compatible with both FMS 2 & 3 and Red5 .
Configuring the video-audio quality in AVChat 2 and AVConference
Prerequisites:
- working AVChat 2 or AVConference installation
About the .xml files in the audio_video_quality_profiles folder
The files contain information about the video and audio settings used to encode the video/audio data received from the web cam/microphone. The xml files are basic XML, UTF-8 encoded, files. To edit them you can use Notepad or any other text editor.
Each of those files has the exact same XML structure. The XML structure is made out of a global container: <bandwidth>, which in turn contains one <item> node. The <item> contains 10 other nodes.
<item>
<nm>128 ISDN</nm>
<df>0</df>
<bytes>16000</bytes>
<q>0</q>
<fps>7</fps>
<kfps>28</kfps>
<w>200</w>
<h>150</h>
<snd>8</snd> <sndSilencelevel>5</sndSilencelevel>
</item>
To make and use your own video profile, copy adn paste one of the .xml files in the audio_video_quality_profiles folder, edit it with a text editor, rename it accordingly, upload it to your web server, and point the $bandwidthurl variable in the php/asp configuration file to it.
Below is an explanation of each node and how it affects video/audio quality.
Each node/value pair explained:
Video settings
<bytes> This is the maximum amount in bytes that the video (not audio) can use per second. If it is set to 0, the video stream from the user to the FCS will use as much bandwidth as it can.
<q> This is the quality of the video, from o to 100. If set to 0 it will use as much quality as possible, without exceeding the <bytes> value.
<fps> This defines the video frame rate. 10, 15, 30 fps, etc...
<kfps> Advanced feature. This tells AVChat that every kfps frames a full frame will be sent to the FCS. The rest of the frames contain just the changes from the previous frame.
<w> The width of the video in pixels
<h> The height of the video in pixels
Audio settings
<snd> The sound rate. Available values: 5,8,11,22,44. This directly affects the sound quality. The bigger the better. A sound rate of X will use 0,25*X Kbytes/second to send the audio. A sound rate of 11 will use
0,25*11 =2,75 Kbytes/s .
<sndSilencelevel> Takes values from 0 to 100. Flash Player will consider any sound that is lower than the value of this tag as "silence" and thus will not send any data to the FMS. Use 100 if you want to never send audio to the FMS server. Use 0 if you always want to send to the FMS server whatever the mic captures (even noise).
Misc settings
<nm> This is the name of the connection type
<df> If set to 1, this will be the connection type that will be used by default. The value of this tag is not relevant to AVChat 2 or AVConference.
More information:
You can specify the path to the .xml file to be used by the AVChat software inside the php/asp configuration file. This way you can keep several "bandwidth.xml" files and use one with higher quality video for "gold" users and one with lower quality video for "free" users.
There is an interesting article on the Macromedia web site regarding best practices for encoding live flash video. Click here to open it.
