Packetizer  Celebrating 20 Years

The CU-SeeMe Project

Brought to you by the CU-SeeMe Development Team of the Advanced Technologies and Planning group of the Network Resources division of Cornell Information Technologies.

Introduction to CU-SeeMe

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, and 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 16 grays and a connection to the Internet. Sending requires the same plus a camera and video capture capability such as a SuperMac VideoSpigot 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.

How Did it Happen?

When development of CU-SeeMe began in July 1992, the only real-time videoconferencing software for the Internet required expensive hardware which severely limited the number of potential senders and receivers. The philosophy of the Cornell project was to start immediately with available, affordable hardware and deploy and use it as rapidly as possible, gaining hands-on experience and stimulating creative thinking as to the possible beneficial uses. By opening Internet videoconferences to Macintosh users, the CU-SeeMe team hoped to accelerate the adoption and usefulness of desktop conferencing, including live video. Because CU-SeeMe uses simple but efficient video frame-differencing and compression algorithms, it opens networked videoconferencing capability to users of lower cost desktop computers, and enabling broader participation in desktop video technology. During 1993 this grassroots development strategy was realized as interest in CU-SeeMe grew rapidly with training and user support from the New York State Educational Research Network (NYSERNet). NYSERNet spread the word among Internet users by providing one of the first "public" reflectors encouraging users to try the technology and test their connections.

Working with Dick Cogger in the summer or 1992, Tim Dorcey wrote the original version of CU-SeeMe. His overview of the project, CU-SeeMe Desktop Videoconferencing Software was published in CONNEXIONS, March 1995.

Current versions of CU-SeeMe for the Macintosh include audio, thanks to Charlie Kline (University of IIlinois at Urbana Champagne), who developed Maven. A Windows version that includes audio was released in August '95.

More recent versions of CU-SeeMe for the Macintosh allow for the exchange of text and slides, thanks to development work led by Steve Erde at the Cornell University Medical Center. Many additional features were added by Andy Wyatt of the Cornell Development Team.

The Cornell University Development Team

Cornell University Medical Center

The CU-SeeMe Final Project Report

Summary

CU-SeeMe desktop videoconferencing software is a peer-to-peer and client/server technology that allows interactive multiparty video and voice communication over the Internet or any local TCP/IP-based network. Beginning as a collaboration with the Global Schoolhouse in 1993, the goal of this project was to provide very low cost face-to-face audio and video connectivity to the largest possible number of users and enable a social experiment of global proportions. Running on popular desktop platforms with full cross-platform connectivity and no proprietary hardware, CU- desktop videoconferencing technology established a new price-point in cost and a new paradigm of availability, quickly becoming the world's most popular videoconferencing platform. Today, millions of users worldwide in over 40 countries and on every continent including Antarctica use this software on a daily basis. CU-SeeMe is on desktops in gradeschools, in businesses, and in national laboratories often with connections between them. Furthermore, business partnerships have successfully transferred this technology to the commercial world generating royalty income to help sustain research post NSF support. This strategy has allowed the technology to grow apace with the accelerating advances in network computing while allowing researchers at Cornell to focus on the protocol, network infrastructure, and conference management issues where its rich experience of the Internet environment and wide userbase give a great advantage. The result today is a suite of conferencing and collaboration tools well suited to breakout into software modules for use in experiments with workstation telephony, distributed computing, and emerging network standards.

Project

When NSF support began, CU-SeeMe was a rudimentary Mac-based application that had been showcased in cooperation with the Global Schoolhouse project. Unlike other videoconferencing tools of the day, CU-SeeMe required no special equipment for video reception beyond a network connection and a gray-scale monitor. Based on Cornell's belief that the value of a communications tool is largely determined by the number of people who use it, this work aimed to increase the accessibility of videoconferencing by focusing on low end, widely available computing platforms and ultralowcost digital cameras. Later in the grant period, as the software matured and the user interfaces for the Mac and Windows versions approached parity, attention was focused on cleanup and documentation of source code and protocols used by CU-SeeMe desktop clients and reflectors. The bulk of this effort, representing nearly 5 years of software development work, was assembled and released via a web site under terms of the CU-SeeMe Consortium Agreement. The goal was to produce a meaningful summary and useful record of the project to date as well as a set of robust and easily adaptable software tools for building new collaboration technologies. It is our intent to keep this work available on the web as a resource for future research. In addition:

UNIX-based reflector software was developed that serves to replicate and re-distribute packet streams for multiparty conferences. Cornell's reflector approach to multiparty conferencing is still unique in videoconference technology. Over the grant period, enhanced conference controls such as password protection were added along with bandwidth steering and hierarchical encoding features to allow a graceful scaling of video information for lower bandwidth participants. The reflector software also provides limited VAT, NV interoperability.

A Master Licensee agreement was arranged with White Pine Software for commercial development. It was Cornell's strategy to leverage its programming efforts with a commercial developer to provide additional features which are expensive to develop, maintain, and support in a non-commercial context. This allowed Cornell to focus on the protocol, network infrastructure, and conference management issues where its rich experience of the Internet environment and wide userbase give a great advantage.

Considerable work was done to guarantee reliable transport of auxiliary data, including research into how bandwidth for such transport should be shared with other conference data and how data distribution can be limited to those who actually use it. Initial work was to define a plug-in architecture to allow 3rd parties to write binary modules to extend the capabilities of the program. Starting with a simple slide window and text messaging system, the Cornell group migrated to built-in chat with extensive filtering features and a full-featured slide window for capturing and sharing images. Today, the slidewindow on the Mac platform offers built-in archiving with additional image compression features.

Cornell completed its licensing structure for Cornell versions of the software. To date, more than 70 internal-use licenses have been granted.

During its funding period, CU-SeeMe played a role in a number of interesting events which exposed large numbers of people to the practical use of NSF funding dollars. Among these were President Bill Clinton's speech at Dartmouth College commencement, President Lee Teng-hui of Taiwan speech at Cornell, and a live NASA feed of shuttle missions to schools and science centers.

Development work continued to keep the freely distributed Cornell software fully compatible with the commercial product. We reorganized the program, making it less fragmented and more maintainable, and tackled issues of conference control, security, privacy, and appropriate use of public reflectors. Meanwhile, issues of scaling over a wide range of connections were addressed, particularly at the higher end of the spectrum. A cross-campus ATM network demonstration was conducted using a special high speed version of CU-SeeMe. A second demonstration used Cornell University Medical School's plug-in interface to share photographs of clinical interest while allowing multiple conference participants to annotate quality color images using white board and collaboration features. A new UDP interface was written to take full advantage of Apple's Open Transport networking architecture and a screen capture/slidewindow/chat filter package was added to the Macintosh client. A 32-bit version of CU-SeeMe written for Windows95/NT has proven extremely popular, accounting for more than 300,000 downloads since it's release in mid-1997.

Today, the various components of CU-SeeMe technology stand ready to be used as modular units for future network research. Such projects might include testing of protocols (Cells in Frames, ATM), the possible migration to a transport protocol for real-time applications (RTP-V2), and the use of CU-SeeMe in IP telephony. For instance, a recently developed telephone instrument was used to operate CU-SeeMe as part of a campuswide workstation telephony project. Other recent enhancements provide for larger screens, higher resolution video, CD-quality audio, and desktop sharing features based on the greater bandwidths available on the NGI and on the campuses of the consortium members.

Final versions of the Cornell software have been compiled, alpha tested, and are ready for a summary release as MacOS and Win95/NT Versions 1.0. A list of new features follows:

For Windows 95/NT:

For the Mac/OS:

Work at Rice University:

Under a subcontract to the project, Rice University installed a 50 user commercial reflector, on a new 166 Mhz Compaq NT server. The server was dedicated exclusively to the task of CU-SeeMe conferencing.

The reflector was fed by a client computer which was directly connected to the Rice Vidnet switcher allowing a conference manager to send presentations from any Vidnet event on campus out over CU-SeeMe. The Rice Vidnet connects presentation venues (auditoriums, lecture halls, etc.) and classrooms to an assortment of destinations. The NSF CU-SeeMe client computer is connected directly to the Vidnet network hub in the computing center.

Two satellite dishes were installed on the roof of the Rice library, one for occasional event downlinks and a second dish used for the SCOLA video service. NSF money was used for the first dish. Though procurement and installation of this dish cost substantially more than the budgeted amount, Rice University paid the difference.

The satellite dishes are linked back to the Rice Vidnet switcher via dedicated fiber optic links.

The CU-SeeMe client computer is in the same rack as the fiber-to-RF demodulator for the campus cable TV feed. The campus cable system has 72 channels which are provided by Phonoscope Cable. This close proximity to the cable head end allows the use of a cable TV tuner to feed very high quality video into the CU-SeeMe client when needed. For instance, NASA select is one of the channels on the Phonoscope cable system.

A web site has been started which will have information about CU-SeeMe broadcasts from Rice University. Take a look at http://www.rice.edu/rtv/. This site will be the starting point for users which want to see events from Rice utilizing CU-SeeMe.

The result is a new system which can be used by instructors, students, and the public to attend events which would otherwise be unavailable.

Work at Texas A&M University:

The subcontract with TAMU/TEES had two main efforts: (1) Low complexity speech coding under 16 kbits/s, and (2) Pyramidal video coding compatible with the existing CU-SeeMe video coder. The speech coding effort centered on a subband coding algorithm that operated at 10-13 kbits/s. This coder used quadrature mirror filters to break the input band into nonuniform subbands, thus allowing perceptually important bands to receive higher bit allocations than other bands and to isolate the distortions produced to their particular frequency band. This speech coder was tested and operated over a LAN connection using a Sun Sparc10, but the complexity of the FIR filters used precluded porting this coder to less than 100 MHz PCs. This coder should be implemented with IIR subband filters and then it can be easily implemented on today's PCs.

The pyramidal video coding work was very successful. A three level video coder with resolutions of 60X80, 120X160, and 240X320, was developed that was fully compatible with the standard 120X160 CU-SeeMe video stream, but that only increased the transmitted rate by a factor of 2 to transmit the higher resolution version. This coder was fully integrated in an Internet conferencing tool called CafeMocha. This first video coder was gray scale only, so subsequent work developed a 6 level video coder that had three levels of black-and-white video and 3 levels of color video.

Conclusion:

CU-SeeMe employs a conference control protocol that has proven to be quite robust and allows for the expression of detailed state regarding the relations of each conference participant to each other participant. In conjunction with the reflector software it allows for customized distribution of conference media, so that nothing is transmitted unless it is used. The protocol is limited in the size of the conference it can serve, but our investigations have shown that this can be extended.

CU-SeeMe video is encoded in an ad hoc format that was designed for a particular family of desktop machines that were widespread in mid 1992. What it lacks in mathematical elegance, it makes up for in quickness. As computing power increases, the CU-SeeMe software will eventually become obsolete. Nonetheless, it played an essential role in bringing videoconferencing capabilities to millions of users and making a suite of research tools which will continue to play a role in network research for some time.

At a recent electronic town meeting broadcast over CU-SeeMe, NSF Director Dr. Neal F. Lane listed five major goals of the institution:

  1. Maintain effective leadership across basic science and engineering research.
  2. Enhance connections between fundamental science and the national goals.
  3. Stimulate partnerships that promote investments in science, engineering, and technology for public use.
  4. Prepare science professionals for the 21st century.
  5. Raise the scientific and technical literacy of all Americans.

We are happy to conclude that the CU-SeeMe project touched somewhat on each these goals.