300 likes | 467 Views
An Extensible Videoconference Tool for a Collaborative Computing Network. Junjun He. Introduction. The videoconference tool is a real-time desktop videoconferencing tool that can be used in a collaborative environment
E N D
An Extensible Videoconference Tool for a Collaborative Computing Network Junjun He
Introduction • The videoconference tool is a real-time desktop videoconferencing tool that can be used in a collaborative environment • It uses a software codec to reduce the system requirement for the application • It has a very user friendly interface
Video Compression • Video compression is a good way to reduce both storage and bandwidth requirement • Videoconference tool can adopt multiple compression methods • The current implementation of videoconference tool uses H.263 as its default compression method
H.263 • H.263 is the recommendation of the ITU for video coding for low bit rate communication • H.263 supports 5 different resolutions: CIF, QCIF, sub_CIF, 4CIF, 16CIF
Video Transmission • The videoconference tool requires that the video be received in real-time • Real-time video can tolerate data loss, but not data delay • CCTL is the transfer protocol used by the videoconference tool
CCTL • Collaborative Computing Transport Layer is the communication protocol used by CCF • CCTL is a multicast protocol which can be configured to satisfy different requirement (QoS)
Components of Videophone Utility Sender Video Capturer Compressor Video Recorder Card Sender Video Transmitter File Reader File Sender Video Receiver Common Initialization Inviter File Reader Initialization Functions Stopper Video Recorder Listener Video Player Receiver Packet Receiver Video Recorder Message Recorder Decompressor Video Restorer Video Maker File Reader
Initialization Module • Initialization Functions • Initialize Window • Initialize Video Card • Initialize CCTL Session • Initialize Data Queues • Listener Receive invitation messages and join a CCTL session
Sender Module • Video Capturer Get images from a video card • Inter-frame Compressor Spatial compression • Intra-frame Compressor Temporal compression • Video Transmitter Transmit video among a session
Receiver Module • Packet Receiver Receive video from other session members • Decompressor Decompress the received video • Video Restorer Display decompressed video in a window
Common Module • File Reader Read compressed video file into a data queue • Video Recorder Write compressed video from a data queue to a file
Video Card Video capturer Compressor Video Transmitter Data queue Data queue Utility Module - Card Sender Launcher
Video Data File reader Data queue Utility Module - File Sender Launcher
Packet Receiver Decompressor Video Restorer Window Data queue Data queue Utility Module - Video Receiver Launcher
Data queue Video Recorder Video Data Utility Module - Message Recorder Launcher
Packet Receiver Decompressor Video Restorer Window Data queue Data queue Utility Module - Video Receiver Launcher
Utility Module - Video Maker Launcher Data queue Data queue Video Card Target File Video Capturer Compressor Video Recorder
Utility Module - Video Player Launcher Data queue Data queue Source File File Reader Decompressor Video Restorer Window
Utility Module - Inviter and Stopper • An inviter sends an invitation message to all session members and creates a sender utility to send out its own video in the session • A stopper stops the reception of the video from a session member
Member 1 Member 2 Member 3 In one CCTL channel TCP/IP Listener Packet Receiver Card Sender Video Receiver 1 Video Receiver 2 Video Receiver 3 One Typical Session Member
User Interface - System Icon • The left videophone button generates 5 menu options: • Invitation • File • Stop • Compression Parameters • Decompression Parameters • The right Message button turns on the message recorder feature
User Interface - Invitation • Guest Names displays all the selected participant’s name • Phone Book displays the names listed in the phone.book file • User can click name in phone.book to add it into guest names or type in the input field directly to add name to both guest names and phone book • Before invite, the user can choose to send out which kind of video
User Interface - Invitation Response • Receiver can decide to join the session or not • Receiver can choose to send what kind of video among the session or not to send video at all
User Interface - File Operation • Select a file for a video player launcher • Save the video into a file for a video recorder launcher
User Interface - Stop Operation • The Current Participants displays all existing session member’s name in local videophone • User can select any member’s name and delete it from local videophone
User Interface - Compression Parameters • Code Format specifies the size of the compression • Compression Method decides how to compress: • Discrete:intra-frame compression • Continuous:inter-framecompression
User Interface - Decompression Parameters • Output Format specifies what kind of output data the decompressor generates