This report is also available as an Acrobat file.
Introduction to the ShowMe Software
The ShowMe suite of software has been installed on the SUN system at Liverpool under Solaris 2.3. It allows users on SUN workstations to communicate via live video, live audio, shared whiteboard and shared applications. We used ShowMe mostly on five workstations on which the multimedia kits had been installed.
There is one manual for ShowMe and it includes sections on all the different conferencing tools. It is very easy to read and to follow.
The manual states:
"ShowMe is a suite of network conferencing tools designed to help you work effectively with other ShowMe users at other worksites."
ShowMe Audio is encoded using CCITT standard G.711 but ShowMe Video uses SUN's
proprietary CellB compression algorithm. A future version of ShowMe which supports H.320 has been mooted. See Appendix 3 on Compression Methods for further details.
The ShowMe software comes with a conference manager which allows users to set up a conference with other users of ShowMe software. This conference manager can initiate one or more of the tools, ShowMe Video, ShowMe Audio, ShowMe Whiteboard or ShowMe SharedApp. There is also an Address Book feature which is described briefly later. Although it is possible to have multiple participants in a conference, most of our investigations dealt with the case where there would usually be an initiator of a conference (help desk) and one
other participant (consultant dealing with the query).
Calling a Conference
When ShowMe is started, a conference manager window appears as shown in Figure 2.1. To begin a ShowMe conference, one or more of the video, audio or whiteboard icons can be picked to start the different components and then the addresses of users are submitted. Either the full name and address for each participant can be typed in the conference box, for example, firstname.lastname@example.org, or addresses can be selected from an address book list
which can be popped up if required, as in Figure 2.2 below.
In practice it is useful to store various address books in a public area so that users can copy these to their private area and adapt them for their own use.
Provided that they are running ShowMe in an X window on their workstations or PCs, an invitation panel appears on the screens of the people being invited to the conference notifying them that a conference has been requested. They can either accept or decline the invitation. If they accept, then, presuming all the tools have been selected, a whiteboard window, an audio window and one video window for each participant in the conference appear on the screen. Video windows only appear for those participants who have a camera and video board installed on their workstation.
The ShowMe video tool allows conference participants to simultaneously view each other.
Figure 2.3 ShowMe Video Windows and menus
The ShowMe video window has a status area and this allows the user to keep track of other participants - thus helping to reduce confusion. It is possible, by selecting menu items on the video window, to monitor how the conference is affecting the network. To reduce the load on the network, there are performance options such as the resolution and the motion speed (number of frames per second) that can be adjusted (see Figure 2.3) - these are important facilities in a video conferencing package since the video transmissions can require a substantial portion of the bandwidth available in a network. There are also colour controls in ShowMe video. If the number of colours is reduced, then the required bandwidth is reduced and also colour flash on the screen is prevented. If the images are viewed in grayscale instead of colour, the number of colours used is reduced further. Zoom controls exist to reduce or increase the size of the video windows. Another control available (which we did not use ourselves in this project) is to switch to a different input port so one could use a VCR or even another camera instead of the current camera.
ShowMe video has a 'snapshot' facility; this means that the camera can be used to either capture an image and then send that image to the other conference participants or take a picture of another conference participant which is showing in a video window. The pictures can be saved and printed.
More control options include mirroring of images, hiding images of others and muting outgoing video. Hiding images of others reduces the load on the local CPU which does not have to decompress the images. Muting outgoing video reduces the impact of the conference on the network and also provides privacy (you may not want the boss to see your visitors!).
The Showme Audio tool is designed to help users talk to one another using the microphones and speakers attached to workstations. It provides controls for adjusting the incoming volume on the speakers and the outgoing volume on the microphone. For privacy reasons, it is essential to be able to prevent other users from hearing outgoing speech and ShowMe audio has a 'mute' button which provides this facility. Another facility in ShowMe audio is the ability to switch to full or half duplex - this means that either everyone in the conference can be heard all the time (full duplex) or that only the person who is shouting the loudest can be heard (half duplex). Using half duplex reduces the load on the network and removes the problem of feedback.
Figure 2.4 ShowMe Audio menus
It is possible to switch to different output and input ports. This means one can connect a device to a port and play a recording instead of using a microphone and one can use earphones instead of relying on the speaker or speakerbox.
The impact of audio on the network is substantial and, as for the video component, ShowMe provides monitoring information in a window and some menu options to allow users to minimise this impact. Other information provided includes the status of other participants. We found this useful since it told us when someone had switched off their audio component, which could be done intentionally, but could also be done by accident. Good practice would dictate that conference participants inform the other users if they intended to close down various tools but of course this would not always happen.
All the participants can share a common drawing board. There are tools to enable drawing of lines, text, boxes, and circles, freehand drawing, erasure of part or all of the drawing, highlighting, importing of images etc. It operates as if the participants are facing a real whiteboard armed with pens and pictures available to illustrate ideas etc. See Figure 2.5 for an example whiteboard.
Figure 2.5 ShowMe Whiteboard
Another feature of this tool is the ability to snap regions or windows and make copies for everyone in the conference. The contents of the whiteboard can be saved in a JPEG or SUN Raster file and sent to a printer or to a PostScript file. This could be useful in keeping records of Helpdesk queries.
One of the particularly useful features of ShowMe whiteboard is the 'stamp' facility. The set of stamps included signals, "STOP", "GO", arrows and smiley faces. We found some of the stamps quite useful for quick communication when audio could not be used.
Figure 2.6 Whiteboard Stamps
This feature allows a conference participant to start up any application available on a system so that other participants can follow progress. The initiator can drive the application whilst the other participants watch on their own screens. There is a cursor control mechanism which allows other participants to take control of the application and, if desired, to keep control. Participants have different coloured cursors.
In ShowMe, to start up the shared application tool, another conference has to be initiated via a sub-menu of the conference manager. The initiator has to go through the complete process of specifying who should be in the conference and then calling the separate conference. This means that the screen quickly becomes cluttered with the extra windows this process creates. In addition, the address book facility has not been integrated into this part and so a separate
list of addresses has to be constructed and maintained.
Applications are chosen from a list of applications which would usually be set up by the system manager. It is possible for users to have their own private lists and also for them to type in a command to initiate an application which is not in the list. Adding extra applications to the list is fairly straightforward.
Figure 2.7 ShowMe Shared Application List
Included in this section are some hints from the ShowMe manual on improving the
performance of the ShowMe tools and how to reduce the demand on the network. This will give a flavour of what is involved in using the software in practice and will serve to underpin some of the comments made in Chapter 5.
Here are some suggestions that can be enacted by using the Video controls menu.
On the Performance Settings menu, there are options to
- engage picture in picture mode. This means viewing ones own image as a small image in the window showing the video of another participant and it eliminates a window
- hide ones own image and reduce the load on local cpu
- close other video windows if not required - other participants can still see any video being transmitted if still part of the conference but the demand on one's own workstation is lessened
- press the video mute button (camera with red cross) to mute outgoing video - this reduces load on the network but the other participants should be informed first
- use greyscale instead of colours to reduce colour flash. Also reduce number of colours used in the display - this helps to prevent colour flash.
- limit motion speed to a few frames per second to reduce demand on network
- decrease the picture resolution to low or medium - again to reduce demand on network
ShowMe Audio can result in 64Kb/sec for each audio stream in a conference. If the network traffic is high, this means the sound output could be choppy. Another problem is echo - to reduce this, the following suggestions should be tried:
The last three of these suggestions can be implemented from the Audio Controls menu.
- make sure the microphone and speaker are well separated
- turn down the volume on microphone and speaker
- use half-duplex mode which is only to be used when echo is very bad or if there are more than 2 or 3 participants. Protocols have to be set up to signal each time one participant has finished speaking and who is to speak next.
- when not speaking, use the mute button but tell the other participants of your intention beforehand
Problems with Shared Applications
The following problems can arise when using the Shared Applications tool:
Some of the above seem to indicate that the current X-windows environment is not designed to cope with the demands imposed by application-sharing
- there may be flicker or poor performance. This is caused by people moving their cursors which makes some applications refresh and redisplay their windows. This problem can be solved easily by either requesting people who are not currently in control of the application to move their cursors outside the shared application window or switching off cursors
- fonts may look strange - some X11 servers produce variable-spaced fonts with different sizes so the character placement is not correct in some windows.
- there may be a lot of colour flash - this is because the SharedApp tool tries to allocate applications colours on all the machines it is running on. If it is unable to allocate colours on any of these machines, it devises its own map. If the number of colours in the colour table for each workstation is reduced, this problem can be solved.
- some applications don't appear to work - some applications have to be started in a shelltool if the application requires shell input or output or if it is tty-based and not X-based. A shelltool is one of the entries in the list of applications that can be shared.
Virtual Environments Visualisation