CU-SeeMe (General Information) Desktop Videoconferencing Software from Cornell University A videoconferencing program, CU-SeeMe, is available free from Cornell University under copyright of Cornell and its collaborators. CU-SeeMe provides a one-to-one connection, or by use of a reflector, a one-to-many, a several-to-several, or a several-to-many conference depending on user needs and hardware capabilities. It displays 4-bit grayscale video windows at 160x120 pixels or at double that diameter. The PC version does not (yet) include audio. So as far as we know, CU-SeeMe was the first and may still be the only software available for personal computers which supports real-time multiparty videoconferencing on the Internet. CU-SeeMe is intended to provide useful conferencing at minimal cost. Receiving requires only a personal computer with a screen capable of displaying 256 colors and a connection to the Internet. Sending requires the same plus a camera and video capture capability such as a VideoSpigot for Windows or Creative Labs Video Blaster board. At this time, CU-SeeMe runs in an early prototype under Windows and in a more mature version on the Macintosh using an IP network connection. With CU-SeeMe each participant can decide to be a sender, a receiver, or both. Warning: Although being improved with each version, CU-SeeMe is not mature production software--USE AT YOUR OWN RISK. And also, PLEASE TREAT THE INTERNET KINDLY--keep b/w limits set down under 100kbps, or less if you share limited bandwidth with others. Many folks connected to the Internet can use CU-SeeMe with default settings and cause no problem to anyone else; but unfortunately, not everyone. If you don't know whether using CU-SeeMe will mess up the network for someone else, check it out first, please. CU-SeeMe initially was written for the Macintosh by Tim Dorcey with design assistance and sponsorship by Richard Cogger of the Advanced Technology Group in the Network Resources division of Cornell University's Information Technologies (CIT). Important early contributions came from: Cornell University Medical Colleges (CUMC), Scott Brim, and John Lynn. Steve Edgar and Rich Kennerly have done the main work in developing the Windows version. Since October 1, 1993, the CU-SeeMe Project receives funding from the National Science Foundation. NYSERNet (New York State Educational Research Network) provides valuable support for CU-SeeMe spreading the word throughout the Internet community as well as creating one of the first public reflector sites for user testing. And a very significant collaborative effort at Cornell University Medical Colleges (CUMC) contributes to substantial expertise and code. This material is partially based on work sponsored by the National Science Foundation under Cooperative Agreement No. NCR-9318337. The Government has certain rights in this material. Any opinions, findings, and conclusions or recommendations expressed in this publication are those of the author and do not necessarily reflect the views of the National Science Foundation. Other documents, CU-SeeMe Project: Plans, Goals, & Rationale, and Information on Public Reflectors will also be available (soon) on our ftp server for those interested in more detail about how to get and use the program. Subscription to a cu-seeme-l maillist is also available for communication among CU-SeeMe users. Please send comments, suggestions and bug reports to r.cogger@cornell.edu. You can be a great help in making CU-SeeMe a good, stable application. Be Seeing You! ******************************************************** Copyright C1993, 1994, Cornell University Cornell hereby grants permission to use, copy, modify, and distribute the CU-SeeMe version 0.60 program for any purpose and without fee, provided that these copyright and permission notices appear on all copies and supporting documentation, the name of Cornell not be used in advertising or publicity pertaining to distribution of the program without specific prior permission, notice be given in supporting documentation that copying and distribution is by permission of Cornell. CORNELL MAKES NO REPRESENTATIONS OR WARRANTEES, EXPRESS OR IMPLIED. By way of example, but not limitation, CORNELL MAKES NO REPRESENTATIONS OR WARRANTEES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THIS SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY PATENTS, COPYRIGHTS, TRADEMARKS, OR OTHER RIGHTS. Cornell shall not be held liable for any liability with respect to any claim by the user or any other party arising from use of the program. ******************************************************** HOW TO OBTAIN CU-SeeME SOFTWARE Use ftp (File Transfer Protocol) to: Server: gated.cornell.edu UserID: anonymous Password: directory: /pub/video PC Windows versions have a 'W' in the version number which distinguishes them from Macintosh versions. Download the latest README file, if there is one later than the date at the top of this file you are reading. Then get the application and other files you need. ***************************************************************************** HOW TO TEST CU-SeeMe To connect for a CU-SeeMe video conference, you must have the IP address of another CU-SeeMe user or the address of a CU-SeeMe reflector. If calling another user, the user must have CU-SeeMe running in *WAITING* status on their desktop. Use Connect or Connect to > in the Connections menu. We suggest that you begin by using two PCs, one connecting to the other, for a first test of CU-SeeMe. You will need to use a reflector to have a multiparty conference on the Internet. The CU-SeeMe reflector program is a Unix program which we have tested so far only on Sun Sparc workstations. If you are not familiar with IP networks, reflectors and/or your particular network set-up, ask your system administrator for help in operating a CU-SeeMe reflector. Instructions on how to operate a reflector follow. ******************************************************** HOW TO SUBSCRIBE TO THE CU-SeeMe MAIL LIST For anyone interested in following developments in CU-SeeMe or its use, or in contacting other CU-SeeMe users, an automated maillist has been established. The list is provided for unrestricted discussion of the CU-SeeMe packet video software. Developers and project management all read the list. To date there has been little traffic, but we expect more as new versions are released over the next few months. We, and other users, would also like to hear about and discuss innovative uses of CU-SeeMe. Please write and tell us your story. To join the list, send a message with the following line as the entire message body to listserv@cornell.edu: subscribe cu-seeme-l (Substitute your actual name, please; it's amazing how many don't.) You should receive a confirming message with extensive instructions on use of the list. You can send mail to be distributed to the list to: cu-seeme-l@cornell.edu. Please be sure to send to this address ONLY when you want your message redistributed. ******************************************************** HOW TO OPERATE A CU-SeeMe REFLECTOR: 1. Obtain software -- a tar file may be obtained via anonymous ftp from gated.cornell.edu in directory /pub/video as reflect.v9.tar. Untar and install in the usual way on a Sun Sparc with a good Internet connection. 2. Issue the unix command: "reflect" and then open connections to the Sun from Mac's running CU-SeeMe0.42 or CU-SeeMe0.60. 3. On the version 9 reflector, if you issure "reflect -s" each Mac will receive a copy of its own video stream as well as any other streams. 4. The tar file for v9 includes the sources for the reflector so folks can try porting to other platforms. Anything with Berkeley networking should be OK, but we did find an incompatibility with the sockets implementation in AIX for the RS-6000. 5. We have carried up to 6 participants on a reflector. But give some thought to how reflectors are linked together and how many streams are flowing on which paths. Currently, CU-SeeMe limits open windows to 8, but trying to have 8 folks each send one stream and receive 7 thru the same reflector, assuming it has just one ethernet interface, would mean 8 streams in and 56 out. If each tries to get 100Kbps through at some point in time, you would be trying to get 6.4 Mbit/sec thru the ethernet. That would probablybe deep into the collision realm. With the -g and -r parameters, you can set up a reflector net which could give a fairly large conference; PLEASE PAY ATTENTION TO THE LOAD YOU PUT ON THE INTERNET. The reflector (version .09) accepts the following parameters: -s self-reflect mode -d debug mode -t tracefile specifiy the name of a tracefile -c ipaddress normal client -r ipaddress "respond" as a server to a BCC client -g ipaddress "go get" video from specified BCC server -m ttl ipaddress multicast to ipaddress with TTL set to ttl -s is debugging option that sends the clients video stream back to himself -d prints out debugging and packet trace information -t traces "events" to the specified log file. Right now the reflector always logs "events" to a log file, if the file name is not specified the file reflect.log is used -c is used to construct an admit list for the reflector. If you want to restrict access to the reflector, use a series of -c options. Only those users with the listed IP addresses will be permitted to use the reflector. If no -c options are specified, the reflector will accept any and all clients. -r tells the reflector to "respond" to a second reflector, at the specified IP address, providing a "blind carbon copy" of all video streams coming to this reflector. Note that nothing is accepted from this second reflector, it is a one way pipe, intended to impact the conference minimally. -g tells the reflector to "go get" video from the primary reflector at the specified IP address, thus providing a watch only service for Mac clients who connect to this reflector to observe the conference on the primary reflector. Ordinarily, such clients should open connections unchoosing the "I will send" option, to conserve bandwidth. Alternatively, a reflector could use this option with the -m option to function as a relay to the mbone. Caution: you might think that setting up complementary -g -r pairs on two reflectors would give you a general inter-reflector link, allowing you to distribute reflector load. In fact it will produce a loop and a lot of collisions. -m multicast all video streams to the specified IP multicast group address (it *must* be a multicast group address) with the specified TTL. This option is currently only useful in conjunction with nv 3.1 used to receive the video streams. If compiling the sources, use -DMULTI to enable this option. To use -m, you must run the reflector on a unix system with multicast kernal. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ f.jill charboneau Advanced Technologies and Planning Group Cornell Information Technologies cu-seeme information designer Cornell University Ithaca N.Y. 14853 jfc1@cornell.edu 607/255-5993 "Never mistake a clear view for a short distance." -Paul Saffo +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=