User Guide for

1         Introduction

Figure 1: Main VIC Window

VIC - unicast and multicast videoconferencing tool. VIC can be used either for point-to-point videoconferencing involving a direct link between two hosts or for multiparty conferencing with many participants via the Internet Mbone (see Box 1).





Unicast and Multicast

A unicast connection is like a telephone call which has one connection between two telephones for the duration of the call. You should use unicast if there are only two people in the conference and if one of you does not have access to multicasting. In order to set up a unicast connection, you must know the name of the computer that the person you want to have a conference with is going to use.

A multicast connection can, in principle, have an unlimited number of participants. You should use multicast if it is likely that there will be more than two participants in the conference. Tools like RAT, VIC, NTE, WB and SDR have been specially developed for multicasting.


Options allows you to choose the options of sending slides and using JPEG for H.261. The option for sending slides was intended to optimise bandwidth when displaying slides by pointing a camera at them and transmitting the images using VIC. In reality this option makes little difference. Use the JPEG for H.261 encoding if you have a Sun video card which has JPEG encoding in the hardware. This will significantly reduce CPU load in the encoding process.

Encoding Format

The encoding formats that are available are displayed in the middle panel. These can be changed at any time either before transmission or during a session. Those encoding formats that are not supported by your video capture board will be disabled.

Video Image Size

In the right hand panel, it is possible to control the size of the video image that you transmit. There are three generic sizes available: small, normal, and large. The actual size of the image will be dependant on the encoding format and signal type used. If a size is not supported by the underlying hardware, the corresponding button will be disabled.

Quality Slider

If the chosen encoding format supports quality adjustment, then the quality slider will be enabled with the corresponding quality value displayed next to the slider. Quality settings are very much dependant on the encoding format that is being used but in general higher quality settings are obtained by moving the slider to the right, i.e. the smaller the number, the higher the quality.

VIC Menu Window – Display Control Panel

Options gives you the option of muting new sources as they become available and using hardware to decode the signal (if you have the dedicated hardware). Muting new sources is useful if your computer has too little CPU power to cope with the number of video streams. Optimize Colormap will change the dithering algorithm to avoid using too many colours. This is useful for machines which only have 8 bit displays.

Options which are not available are disabled.

Box 4: VIC Menu Window – Contc


Tile allows you to specify the number of columns you wish to use for displaying the thumbnail information in the main VIC window. The default is single column. The number of columns can also be specified by typing a single digit into the main window.

External sends the image to an external monitor, if your hardware supports it.

Ordered, Quantize, Error Diff, Grey sets the colour dithering algorithm for 8 bit displays.

Gamma adjusts the gamma correction for 8 bit displays.

Session Control Panel

The Session panel controls information about the particular conference session that is currently in progress. The first line of the panel lists the IP address and port number of the conference and the multicast TTL setting.

The Name field displays the RTP identifier that you are using in the session. This is the same information that you typed into the User Information Window when you first started up VIC (see Figure 2). You can change this information at any time during the session by clicking in the field, making the necessary changes, and pressing the Enter key on the keyboard.

The Note field allows you to display a message next to your thumbnail image, under your name. You can enter a note at any time during the session by clicking in the field, typing in your text, and pressing the Enter Key on the keyboard. The note will replace the identification text next to your thumbnail image.

The Key field contains a session key for encryption. As VIC conferences are typically conducted over open networks, there is no way to prevent eavesdropping, particularly for multicast conferences. To add some measure of privacy, VIC allows the streams to be DES encrypted. Only sites sharing the same key will be able to view the session. Encryption is enabled by entering a previously agreed string in the key box. All participants entering the correct key will be able to participate in the conference. Encryption can be turned off by clearing the box.

Clicking on the Global Stats button opens a window like the statistics window described above, displaying the global session statistics.

Clicking on the Members button opens a window which contains a scrollable list of all the participants who are currently in the session. This list also includes those participants who are not actively sending video.

Box 4: VIC Menu Window – Contc


VIC Synopsis

vic [ -cs ] [ -A app ] [ -B kbit/s ] [ -C conference ] [ -D device ] [ -d display ] [ -f format ] [ -F fps ] [ -H ] [ -i file ] [ -I channel ] [ -m mtu ] [ -N sessionname ] [ -o file ] [ -p port ] [ -r dir ] [ -t TTL ] [ -U interval ] [ - u script ] [ dest[/port/confid/fmt/TTL] ]

Box 5: VIC Synopsis


VIC Command Line Options


Use the RTPv1 packet format and a default address that is compatible with the app argument, which may be NV for Xerox PARC's Network Video tool,  or  IVS  for  the INRIA Videoconference System. You should not need to use this option.


Set the maximum value of the bandwidth slider to a user-specified number of kbit/s (kilobits per second).  This value is limited to 256 kbit/s if the conference address is a multicast address and the TTL in use is greater than 64 (i.e., the traffic will leave your multicast region).


Use conference, as the title of this VIC window. If the -C flag is ommitted, the destination address and port are used as the window title.


Use device for video capture.   This option is used when more than one video capture device is installed in a host.  The argument may be one of:

            Videopix            Sun VideoPix card parallax
            xil                     Sun's XIL library

`mme'  and  `parallax'  are  not   yet   implemented. Without  -D option, a default device is assumed which can be overridden with the VIC device resource. There are other devices which have not been documented, such as WinTV.


Connect to the X server indicated by the display argument.


Use the video coding indicated by the format argument for transmission. Format may be one of the following:

Jpeg                 Motion JPEG
mpeg                MPEG
h261                 Intra H.261
nv                     Xerox PARC Network Video
nvm                  uncompressed (with nv's thresholding algorithm)
cellb                 Sun CellB

Not all encodings are compatible with all frame grabbers. For instance, JPEG compression hardware is needed in order to source a JPEG stream (e.g., a DEC J300 or Parallax XVideo board).


Set the maximum value of the frame rate slider to a user-specified number of fps (frames per second).


Don't use hardware decoding even if it is available (i.e., force decoding to be done in software).


Box 6: VIC Command Line Options



Use the small integer channel, which must be non-zero, as the channel identifier for group interprocess communication on the local host. This value should be consistent across each group of applications that belong to a single conference, and should be unique across conferences. SDR will allocate appropriate values. (VIC and RAT currently use this mechanism to coordinate voiceactivated video switching.)


Use the stored video sequence, from file, as the source of frames.  A simple VCR interface will replace the frame grabber controls in the user interface. The video is treated just as if it came from the camera.


Set the packet transmission size to mtu bytes, but limited to1024 bytes (per the application protocol). The default is 1024. You should not need to use this.


Use session, in lieu of your user name and local host, to identify you to other sites. If -N is ommitted, the X resource vic.sessionName is used.


Dump the video being sourced by the local camera to a file, for later playback using -i.  (This option cannot be used to record a conferencing remotely. Such functionality belongs in a separate program.)


Use port as the UDP port for communications. If no - p flag is given, the value of the X resource defaultPort sets the port.


Use RTIP, instead of IP, to deliver the video data stream. RTIP is a real-time connection-oriented communication protocol designed by the Tenet group at UC Berkeley. See  for  more information. The session control protocol still runs over IP, and only point-to-point communication is allowed.


RTIP is a simplex protocol requiring connection be set up in both directions. The dir argument indicates the direction, and must be one of send, recv or duplex. If recv, is specified, the application blocks at startup until the connection is established (e.g., vic with a  -r send option is initiated on another RTIP host, and directed at our client.)  If duplex is specified, two simplex channels, one in each direction are established.

You should not need to use this.


 Specifies that shared buffers are not to be used with the X server.


Multicasting is sending audio, video etc. on the Internet in way which ensures that anybody who is interested in receiving the information, can receive it, but only people who are interested will receive it. Think of it as being in between unicast (like most telephone calls - between two telephones only) and broadcast (TV - the signals are sent to you whether you want to watch or not).


Multicast address

Addresses used for multicast conferencing should be in the range -
Note: Multicast addresses must be agreed upon in advance of the multicast session, either through e-mail or phone or assigned using SDR.

Network congestion

A condition in an IP network where the amount of traffic injected into the network is too great for the routers to handle and some packets are discarded.


Network Text Editor.


National Television Standard Code. The television encoding used in the USA.


Network Video. A software package, in the public domain, which supports videoconferencing over Internet Packet Networks.


Phase Alternate Line. The television encoding used in Europe.


Audio encoding standard. Pulse Code Modulation, 64 kbit/s 8-bit m-law encoded 8 kHz.


A UDP (User Datagram Protocol) number unique to the broadcast session, and should be over 5000.
Note: The port number must be agreed upon in advance, either through e-mail or phone or assigned using SDR.


A set of standards that govern the transfer of information between computers over a network or via telecommunications systems. To reduce errors, the computers at both ends of a communications link must follow the same protocol.


Quarter Common Image Format with dimensions of 176x144 pixels.


Robust Audio Tool.


A condition where a tool is used to receive information, but cannot transmit.

Redundant audio encoding

Also known as redundancy. A technique to protect against packet loss where a second, low bandwidth version of the original encoding is piggy-backed onto the preceding packet so that, when single packets are lost, the redundant version is played back instead of silence.


Real-Time Protocol is an application level protocol that provides real-time support for multimedia communication.


            Real-Time Internetwork Protocol.


Super Common Image Format with dimensions of 704x576 pixels.


Multicast Session Directory.


            Simple Internet Protocol.


TTL stands for time to live, and determines how far multicast packages can travel over the Internet. The standard values are:
16 - Site
47 - UK

63 - Europe
127 - World


A unicast connection is a point to point connection between two specific machines.


Visual Audio Tool.


Video Conference tool. The tool included in the SHRIMP package for the transmission and reception of video streams.