Lin,SW1,Cheng,K L2,Wang, R3,Zhou, H4 and Chan, S H5
Department of Computer Science
The Hong Kong University of Science and Technology
ABSTRACT
Traditionally, lectures are held in classrooms where students are co-located in order to interact with the instructors. This model is not convenient or cost-effective for some students, e.g., those who are working, have access/mobility difficulties, live in remote areas, or experience some social isolation such as during the SARS period.
With the pervasive penetration of broadband Internet connections and wireless medium (Wi-Fi and 3G ), we have developed a platform so that lectures can be conducted interactively over the Internet. The project, termed 'CyberClassroom ,' offers an experience similar to the traditional classroom today but with the students distributed in the Internet. Students anywhere may raise questions to their instructors at any time using their PCs or laptops over the Internet and wireless medium. Video, audio, and whiteboard are also streamed to the end-users in real time. The system is scalable to hundreds of students and makes use of current off-the-shelf computing products and state-of-the-art networking techniques. It is cost-effective and effectively breaks the geographical limitations to attending lectures. Initial feedback from the students using the system is positive and encouraging.
Key words
Distance-learning, cyberclassroom, interactive, education, distributed,system, multimedia applications and communication networks
INTRODUCTION
With the tremendous growth in computing devices and computer usage, geographical distances between people have been significantly reduced. It is easy to name a few examples of Internet software that are currently in use: Net Meeting ,Internet telephony, ICQ, and so on.Using these,people in different pares of the world can communicate with each other more economically and efficiently than ever before.
Recently, the Hong Kong Government has been promoting and putting great effort into the idea of ' life-long learning '.However, working schedules and the pace of life in Hong Kong make it nearly impossible for people to learm at a fixed time in a fixed place. In the HKUST Computer Science Department,we have been developing a ' cyberclassroom ' platform for interactive distance-learning. This project aims at delivering live lectures to large groups of students. It allows students to participate in courses from any location at any time from any computer.
We show in the following figure the system we developed. It consists of students distributed in the network. The professor may deliver his/her lectures via the Internet with audiovisual streams and Power Point. He/She may also interact with the students through polling.
There are several unique features and technologies in the project:
l Network module: We have designed and implemented a delivery mechanism so as to accommodate hundreds to thousands of students without the need for powerful servers and clients. Our network protocol has been presented in major conferences and seminars and has received wide interest.
l Audio module: The audio has to be delivered to the students in good quality. We have used a highly compressed audio which does not take up much network bandwidth. The encoding standard we use is called G.723.
l Video module: We have implemented the most recent encoding technology H.264, for video compression. It guarantees good quality of video while greatly minimizing the use of network and system resources. As a result, bandwidth requirement for this software is greatly reduced.
l Web interface: The focus of this part is to support a web interface. With this feature, students can have lessons anywhere they can find a computer with access to the web. To further increase user-friendliness, the CyberClassroom project also provides installation files. Simple mouse clicks according to the guidelines make installation much more convenient. No compilation or linking, as required in last year's project, is necessary.
In the following, we explain the modules in detail.
NETWORK MODULE
Since the Cyberclassroom is a real-time application and the number of people attending a class is usually quite large, a stable and scalable network layer is important. The main function of the network is to distribute the lecture materials, namely, video and audio, to all students attending the lecture. This technique is called multicasting.
Traditionally, there are two ways of multicasting. Application Layer Multicast(ALM) and IP-multicast. In ALM, the multicast is done by a sequence of unicasts along a logical tree of nodes/users. It is used to solve the adaptability problem of IP-multicasting. Since the transmission of the data to a group of ALM hosts is done by unicast protocols such as TCP and UDP, it is supported by any router on the Internet. However, as all data transmissions are done by unicast, redundant transmission, which results in inefficient use of bandwidth, would be the major problem in using ALM. In contrast, by using the IP multicast technology, data only needs to be transmitted once and every host within the same group receive it. Compared with multiple unicast communication, IP multicast is more efficient as eliminating redundant transmission saves bandwidth. To utilize the power of both ALM technology and the IP-multicast technology,we therefore designed and implemented a new architecture named Island Multicasr(IM).
In Island Multicast, a group of classroom members namely a teacher and students, is divided into several smaller multicat-capable regions(or'islands'). All of these layer multicast(ALM) protocol, while within an island, IPmulticast is used. Island Multicast(IM) is a generic application-layer framework that works with any ALM protocol. For the Cyber Classroom project, we decide to use ALMI again for inter island communication.
Using this structure, a menber in the session can be a ' parent node ' of other members, which need to forward all packets from a neighbor node to all other neighbors. This peer-to-peer structure makes the system highly scalable in term of message multicasting. The major problem of this structure is that the data delivery depends to a large extent on the session ungracefully,then all of the downstream nodes will be disconnected from the main tree for a second. To solve this problem, we introduce some ' proxies ' to the system. The proxy should be highly reliable and set up by the IM network operator. It is simply a member which serves many other members. The more proxies there are in the system, the more stable andreliable the network is..
AUDIO MODULE
Microsoft DirectX, a recognized standard for multimedia application development on the Windows platform, is used in the Cyber Classroom desktop version for operations on audio: recoding, compression, decompression, transmission and playing. (Fig 1 and Fig 2.).
Audio is transmitted in real-time so streaming technology was used in audio transmission. When one person speaks, all users should be able to hear. The audio transmission is one-to-many. Real-time audio is time-sensitive and requires low delay. Meanwhile teal-time audio can tolerate some loss. Therefore, the most suitable way to broadcast audio is using transport layer protocol UDP.
As bandwidth is the most valuable resource on the Internet, minimizing bandwidth by audio compression is one of the main aims of this application. As this application is designed for hundreds of students using simultaneously, the required bandwidth is so large that the network cannot support it. Therefore, audio compression is essential. In this project we adapted G.723.1. G723.1 is a speech-compression algorithm standardized by ITU. G.723.1 has dul coding rates at 5.3 and 6.3 kbps. The vocoders process signals with 30 ms frames and low distortion. The input/output of this algorithm is 16 bit linear PCM samples. Middle bit rate G.723.1 vocoder delivers the highest compression ratio of any of current ITU standards without compromising speech quality. Furthermore, the coding delay of our vocoder is very low (less than 0.5 second).
VIDEO MODULE
There are many different kinds of video compression standard, such as H.261, H263, and MPEG4, developed by several international institutes. In this project, the new video compression standard H264 standard provides a much larger compression rate and greatly reduces the use of network resources.
The implementation work was based on software JM5.0 (the most updated version 7.6 ) of standard H264 implemented by ITU experts. To speed up the video compression,modification will be made based on the existing code of JM 5.0.
The process of speeding up the video codec started from investigating compitational bottlenecks by timer functions in<time.h>. From the figure below, Integer Pixel Inter-Prediction takes most of computational power.
To speed up the Integer Pixel Inter-Predictions. Inter-search mode other than 16×16 was disabled to ignore inefficient encoding processes in order to increase the encoding speed. Also, a new algorithm was applied for motion estimation.
In many fast search algorithms for motion estimation, the Predictive Motion Vector Field Adaptive Search Technique(PMVFAST)algorithm, now improved based on the former MVFAST Algorithm, achieves best performance in terms of PSNR and speed-up ratio by reducing most of search points, These have very small probabilities that the current block finally reference to MMX technology was also applied to speed up various time-consuming calculations such as Sum of Absolute Difference (SAD) and YUV to RGB conversion,etc,
The original H.264 encoder and decoder work with file input and file output. In this project, the H264 encoder and decoder work with file input and file output. In this project, the H,264 codec must be modified so that it can work with web cam and network by providing necessary interfaces. As the JM software was implemented in C, it became necessary to build static libraries in order to achieve capability between C and C++, as well as to maintain the speed of the codec . The use of static libraries also allows easier modification and upgrading.
The following graph shows the speed optimization result during 4 stages of improvement.
Stage 1 :Original
Stage 2 : Configuration Modification
Stage3 : PMVFAST
Stage 4: PMVFAST with MMX
Performance in terms of FPS for Video Codec (Tested in P4 2.4G Machine)
Beside the compression and decompression speed,video quality is also a great concern in the CyberClassroom project.The captured pictures below illustrate the testing of video quality:
The original foreman.qcif sequence(Left) and the decoded sequence (Right)
The original container.qcif sequence (Left) and the decoded sequence (Right)
As can be seen from the first figure , the face of the foreman blurs because of the quantization performed at the encoder. For the same reason, the waves on the surface of the lake became less apparent . However, the frames are still clear in their entirety and their quality is acceptable for this project given the high compression rate.
WEB INTERFACE
It may happen that students may have to attend live lectures through public computers or computers with operating systems other than MS Windows. To tackle those problems, a web interface was developed. The web interface consists of a homepage ,a BBS system and a section for video and audio displaying.
The homepage was developed by Dreamweaver MX and Flash MX. Users can find all the general information of this project and the documentations.
Homepage
The BBS system is widely used in the Internet to make online discussions. All users can communicate with each other by posting and answering to the post. By using the free BBS system source developed by the 6k Group ,we built our own BBS system using ASP.
BBS
Several different implementations were considered for the video and audio part. But as our software uses specific video and audio standards (H. 264, G.723) and are thus difficult to write matching decoders in Java , we chose Windows Media Series Windows Media Encoder 9.0 as the video and audio encoder and the media stream can be easily decoded by the Windows Media Player.
Webpage with video player
Audio only
For a long time historically, the communication problems between different regions and countries were of great concern,especially for those where geographical barriers and distances made the traditional face-to-face delivery of instructions impossible.Modern technology and the Internet have revolutionized long-distance communications and thus the concept of distance learning has been able to be realized.
The CyberClassroom project provides great flexibilities for beaching:anyone who has access to the Internet can take live lessons remotely. Professors can conduct lectures as if in traditional classrooms, with minor changes utilizing functionalities such as PRS, whiteboard ,video and audio transmission.
CONCLUSIONS
Advantages of a CyberClassroom over traditional course delivery include virtually unlimited class size, and greater flexibility in terms of time and place to study. Last year, the outbreak of SARS resulted in the suspension of classes. With the ‘CyberClassroom’,students can attend lectures at home safely and effectively, and teaching sched ules need not be disrupted.
The Internet today consists of multicast ‘islands’ interconnected by multicast-incapable routers. In order to enable global multicast efficiently,multicast features should be used within an island while the islands are inter connected by unicast connections. In our project,we made use of an application layer framework called Island Multicast (IM),
Which organizes multicast delivery into two levels: at the upper level inter-island overlay is established while, at the lower intra-island level,IP multicast is used. Together with IP multicast, the scalability increased. This allows a larger pool of potential students and hence CyberClassroom offers advantages of virtually unlimited class size and greater choice over traditional course delivery.
In audio part, a compression algorithm G723.1 is used to convert speech into IP packets. G.723.1 delivers the highest compression ratio of any of the current ITU standards without compromising speech quality and retains very high voice quality,in spite of the huge compression.In practice,it is nearly impossible to detect a difference in voice quality between voices over IP. We can achieve a good audio quality with small delay (smaller than 0.5 second).
The CyberClassroom project implements H.264 standard for video encoding and decoding. It provides better video quality while reducing the video bit rate significantly. This promises a smooth video stream under limited bandwidth resources.
As regards installation,the use of Microsoft Installer(MSI) helped the project to provide with a new feature , which is not difficult to implement but very helpful . It reduced the unnecessary errors caused in compiling the source and setting up the software , and at the same time made our produce more user-friendly . For the web interface , several techniques and software packages were used , such as Macromedia Dreamweaver , in order to develop the web pages ; ASP programming to build the BBS system and Windows Media Encoder 9 Series to encode and broadcast the multimedia streams.
REFERENCES
K.-W.CHeuk, S.-H. Chan and J.Lee;Island Multicast: The Combination of IP Multicast with Application-Level Multicast. IEEE International Conference on Communication, to appear.
Pendarakis, Dimitrios, Sherlia Shi, Dinesh Verma, Marcel Waldvogel: ALMI: An Application Level Multicast Infrastructure, 2001
Tourapis, Alexis M., Oscar C. Au, Ming L. Liou: Predictive Motion Vector Field Adaptive Search Technique ( PMVFAST) Enhancing Block Based Motion Estimation.