vrtpvrtpvrtpvrtp VRTP: Implementing a Monitor Application for the Real-Time Transport Protocol (RTP) using the Java Media Framework (JMF) Francisco Afonso Thesis Advisor: Don Brutzman September 1999
vrtpvrtpvrtpvrtp An RTP monitor is a useful tool for MBone applications and future vrtp applications JMF is a possible solution for the implementation of the RTP protocol in vrtp JMF is a free package, extension of Java language The RTP Monitor is the first step to understanding JMF for future transmission and reception of simulation data Thesis Motivation
vrtpvrtpvrtpvrtp Real-Time Transport Protocol (RTP) RTP is a protocol designed to support the transmission of time-based media, such as audio and video, over multicast-capable networks Using RTP a session between several participants can be established (many to many). Each participant sends feedback messages about the reception of each sender. (RTP Control Protocol - RTCP) RTP does not guarantee real-time delivery, since it usually runs over UDP RTP is used in MBone - Multicast Backbone (an experimental worldwide multicast network)
vrtpvrtpvrtpvrtp MBone Videoconference Example (using vic)
vrtpvrtpvrtpvrtp Definition: an RTP monitor is an application that receives packets sent by all participants, to estimate the quality of service for distribution monitoring, fault diagnosis and long-term statistics. (RFC 1889) RTP Monitor Application
vrtpvrtpvrtpvrtp JMF is a Java API developed by Sun Microsystems and other companies to allow the use of multimedia features by Java applications and applets Supports reception and transmission of audio and video streams using RTP Latest version: JMF 2.0 Beta Java Media Framework (JMF)
vrtpvrtpvrtpvrtp vrtp is being developed to provide client, server, multicast streaming & network-monitoring capabilities in support of internetworked 3D graphics and large-scale virtual environments Virtual Reality Transfer Protocol (vrtp)
vrtpvrtpvrtpvrtp vrtp Streaming Stack
vrtpvrtpvrtpvrtp RTP specification (RFC 1889) - 70 pages JMF API Programmer's Guide pages JMF Javadoc (RTP API only) pages - 29 classes, 22 interfaces, 4 exceptions JMF example source code A lot of Internet browsing about RTP JMF and IEFT - AVT mailing lists Thesis Work
vrtpvrtpvrtpvrtp Thesis product : rtpMonitor
vrtpvrtpvrtpvrtp Displays global and stream statistics Displays participants and feedback reports Records statistics on files ( last five minutes, previous five minutes, last hour, previous hour, different dates) Plays audio or video received in the session Saves session addresses and names as bookmarks Allows customization ( recording interval, presentation interval, participation in the session, … ) Launches external application for viewing output files rtpMonitor Features
vrtpvrtpvrtpvrtp rtpMonitor Session Bookmarks
vrtpvrtpvrtpvrtp rtpMonitor Preferences
vrtpvrtpvrtpvrtp rtpMonitor Output Files
vrtpvrtpvrtpvrtp JMF / RTPMonitor Media Presentation
vrtpvrtpvrtpvrtp Software reuse is good. Do not reinvent the wheel! Big companies make big pieces of software with lots of bugs. Try to help detect the bugs, specially if the software is free and you need it. Study Design Patterns. They have been used by good software designs. Subscribe mailing lists about your thesis topic. You can learn with other people problems and experiences. Internet standards are still evolving. You can help! Lessons Learned
vrtpvrtpvrtpvrtp In RTPMonitor: Present information about the participants Save statistics in XML format Analyze stored statistics and present them graphically Receive Session Description Protocol (SDP) announcements In vrtp: Send and receive simulation data with RTP and JMF Future Work
vrtpvrtpvrtpvrtp Future work: example XML output file
vrtpvrtpvrtpvrtp RTP: JMF: jmf/index.html jmf/index.html vrtp: XML: UML: Some Web References
vrtpvrtpvrtpvrtp Francisco Afonso - Don Brutzman - Contact Information