亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? java rtp implementation.htm

?? RTP是voip和網(wǎng)絡(luò)視頻會(huì)議的關(guān)鍵模塊。該庫(kù)實(shí)現(xiàn)了RTP并提供了簡(jiǎn)明的接口。 內(nèi)付說(shuō)明文件。
?? HTM
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0079)http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html -->
<HTML><HEAD><TITLE>Java RTP Implementation</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<META content="MSHTML 6.00.2900.2963" name=GENERATOR>
<META content="RTP; java; RTCP" name=keywords>
<META content="Brief description of project." name=description>
<META content="C:\Program Files\Microsoft Office\Office\html.dot" 
name=Template></HEAD>
<BODY vLink=#800080 link=#0000ff bgColor=#ffffff>
<P></P>
<H1>java.net.RTP</H1>
<P>Waqar Ali<BR><I>Columbia University<BR>New York, NY 10027<BR>USA<BR></I><A 
href="mailto:aliw@usa.net"><I>aliw@usa.net</I></A></P>
<ADDRESS>&nbsp;</ADDRESS>
<P>Akhil Nigam<BR><I>Columbia University<BR>New York, NY 10027<BR>USA<BR></I><A 
href="mailto:anigam@lehman.com"><I>anigam@lehman.com</I></A></P><I>
<P>&nbsp;</P></I>
<H2>Abstract</H2>
<P>The Real-time Transport Protocol (RTP <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">[1]</A>) 
has become a widely implemented internet-standard protocol for transport of 
real-time data. It provides a mechanism for the participants to give feedback 
about the service using the RTP Control Protocol (RTCP <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">[1]</A>). 
This document presents the platform independent RTP implementation in Java. This 
implementation, which is available as a java.net.RTP package, can be easily 
incorporated into an application, which then has access to all of the transport 
level features RTP and RTCP provide. This package also provides out of band 
initialization classes, which implement a late-initialization protocol. These 
classes could be used to implement a late initialization server which is capable 
of synchronizing late-joining clients.</P>
<H2>Introduction</H2>
<P>This report describes the Java implementation of RTP protocol. It covers the 
following topics.</P>
<P>1) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#related_work">Related 
Work</A></P>
<P>2) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#Background">Background</A></P>
<P>3) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#architecture">Architecture</A></P>
<DIR>
<DIR>
<P>3.1) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#ObjectModel">Object 
Model</A><BR>3.2) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#EventModel">Event 
Model</A><BR>3.3) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#LateInitializationClientServer">Late 
Initialization Client/Server</A></P></DIR></DIR>
<P>4) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#ProgramDocumentation">Program 
Documentation</A></P>
<P>5) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#APIProgrammerDocumentation">Java 
RTP API documentation</A></P>
<P>6) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">References</A></P>
<P>7) <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/java_net_RTP.tar.gz">Downloads</A></P>
<P>&nbsp;</P>
<H2><A name=related_work>Related Work</A></H2>
<DIR>
<DIR><B>
<P></B><A href="http://www.iasi.rm.cnr.it/iasi/netlab/netlabWelcome.html">RTP 
Library:</A></P>
<P>C++ library which provides application independent implementation of the RTP 
protocol. This library is available for DEC OSF/1 v3.2 and Solaris 2.3 platforms 
only.</P><B>
<P></B><A 
href="http://java.sun.com/products/java-media/jmf/forDevelopers/jmffaq.html">Java 
Media Framework: </A></P>
<P>The Java Media Framework API (JMF) specifies a simple, unified architecture 
to synchronize and display time-based data, such as audio and video, within Java 
applications and applets. The JMF 1.0 API was developed by Sun Microsystems, 
Inc., Silicon Graphics Inc., and Intel Corporation.<A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">[2]</A></P><B>
<P></B><A href="http://204.127.236.149/elemedia/px3230s.htm">Elemedia H.323 
stack</A></P>
<P>The elemedia PX3230S H.323 Protocol Stack software module is a software 
implementation of the ITU-T H.323 standard. The RTP/RTCP module supports header 
validity checks, statistic logging, sender reports, reception reports, and a 
system time-to-media time utility. <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">[3]</A></P><B>
<P></B><A href="http://webcanal.inria.fr/">Webcanal</A></P>
<P>WebCanal contains a set of networking packages and applications mainly for 
information distribution using IP Multicast. WebCanal networking packages 
include a Java implementation of RTP (real time transport protocol), LRMP, 
SAP/SDP (session announcement protocol) and more. <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#references">[3]</A> 
</P></DIR></DIR>
<H2><A name=Background></H2>
<H2>Background</H2>
<DIR>
<DIR>
<P><A name=architecture></A>The project was motivated by the need to have a 
platform independent, multicast-capable RTP implementation, which could be used 
in collaborative applications like the Whiteboard. The whiteboard application 
has special initialization requirements where all the instances of the 
collaborating whiteboards have to display the identical content, i.e. they need 
to have a common state. This becomes a problem for late joiners which then have 
to be synchronized and brought to a common state like the other instances, hence 
there must exist either a dedicated server or such, which is capable of serving 
such clients and is responsible to provide late joiners with historic data. A 
generic functionality to build such a client and a server needs to be available 
for such an application. The package was designed and developed to be modular 
with a generic late-initialization client/server classes implementing a 
late-initialization protocol.</P></DIR></DIR>
<H2>Architecture</H2>
<DIR>
<DIR>
<P></A>This section describes the architecture of the software. When 
appropriate, the design decisions and alternatives are discussed.</P>
<H3><A name=ObjectModel>Object Model</H3>
<P>Overall architecture of the software was motivated by the need to have a 
modular, simple and platform-independent RTP implementation which could be 
easily integrated into any application requiring RTP as its transport protocol. 
By choosing Java as the development platform, the goal of having 
platform-independent implementation was immediately met. The object oriented 
features of Java and the language's simplicity made it possible to make the 
software simple and modular.</P>
<P>Session<B>:</P></B>
<P>The top most class the user of the package interacts with is Session. This 
class encapsulates the RTP and RTCP related setup, startup and shutdown 
procedures. Session also serves as the interface using which object's states and 
their interactions are controlled. 
<P>Source</A> objects. Source class encapsulates the source-related attributes, 
which are updated by the sender and receiver modules. The participants include 
active senders as well as listeners. Source table is implemented as a Java 
hash-table, which essentially is an associative array with search functionality 
built into it. The key in the hash-table is the SSRC of the source and the value 
is the Source object itself. Java Map and Vector classes (in java.util) were 
considered as implementation alternatives. Both of these are container classes 
just like the hash-table but due to the reasons discussed below, it was agreed 
upon to use the hash-table.</P>
<P>Map (java.util.Map) is only available in JDK 1.2 (which at the time of 
writing this document is in beta release). Selecting this as a source container 
would have limited the usability of the package to 1.2 or later versions of JDK. 
Hash-table, on the other hand, is available in all JDK releases as early as the 
version 1.02. </P>
<P>Vector (java.util.Vector) was not chosen because it does not provide the 
key-value associations and would have required manual search to find the desired 
source object. The hash-table, on the other hand, has the search functionality 
and association built-in making it trivial to retrieve the desired source object 
given its SSRC as the key.</P>
<P>An implementation aspect of the source table needs to be pointed out; it is 
that the sample implementation suggested rfc-1889 distinguishes between the 
senders and members by maintaining two separate tables. In this package, the 
source table provided by the session holds the members and there is no separate 
table for senders. A source attribute ActiveSender is used to distinguish the 
senders from listeners in the member table. Functions in Session are provided to 
get the senders or the members. 
<P>From the user's perspective, the Session interacts with the network and is 
responsible for sending and receiving RTP and RTCP packets. What constitutes the 
network interaction can be classified into two distinct processes:</P>
<DIR>
<P>(i) Synchronous processes:</P>
<DIR>
<DIR>
<P>Sending RTP packets</P></DIR></DIR>
<P>(i) Asynchronous processes:</P>
<DIR>
<DIR>
<P>Receiving RTCP packets<BR>Receiving RTP packets<BR>Sending RTCP 
packets<BR>&nbsp;</P></DIR></DIR></DIR></DIR>
<P>The <B>synchronous interaction</B> with the network is straightforward, this 
is driven by the application (the user of the package) and is invoked by calling 
the Session.SendRTPPacket() function. 
<P>The <B>asynchronous interaction</B>, on the other hand, requires the RTP and 
RTCP receivers to run on separate threads and wait for the packet arrival. 
Following the reception of a packet, several tasks are performed among which is 
posting of the packet arrival event. Using events, the application has the 
option to ignore a particular event family or subscribe to it. The event model 
and the object interaction that takes place when asynchronous events occur are 
described in the <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/report.html#EventModel">Event 
Model</A> section of this document. </P><B>
<P align=center><IMG height=425 src="Java RTP Implementation.files/Image24.gif" 
width=545></P>
<P align=center>Figure 1: Higher level functional modules</P>
<P>RTP Packet Sending and Receiving: 
<P>Figure 1 depicts the object model where Session uses the RTPThreadHandler 
object to send and receive RTP packets. RTPThreadHandler class is inherited from 
Thread and the function which receives the RTP packets, runs in an infinite 
loop. This loop is started directly by calling the or using Session.Start() 
method which starts all the receivers. RTPThreadHandler class also doubles as a 
sender by providing the SendPacket() function. 
<H3>RTCP Packet Sending and Receiving</H3>
<P>RTCP receiver RTCPReceiverThread is similar to RTPThreadHandler described 
above as it receives RTCP packets in an endless loop, but it is dissimilar as it 
does not provide any send functionality. 
<P>For sending RTCP packets, a separate threaded class RTCPSenderThread is 
provided. The functionality of sending and receiving RTCP packets is not folded 
into one class to keep the design modular and simple. RTCP sender and receiver 
both have complicated algorithms and to keep the changes in the send RTCP module 
from effecting the receiver module (or vice-versa), these functional modules are 
implemented as separate encapsulations. This was decided upon to keep the 
overall design in accordance with the design guideline of isolating the package 
modules from the changes made in other modules, while allowing for 
extensibility. </P>
<P>RTCPThreadHandler class is the parent class, which serves as an intstantiator 
of the sender and receiver thread classes. This class has the sole purpose of 
policing the RTCP sender and receiver threads. </P>
<P>Although sending of the RTCP packets is an asynchronous process, the sender 
thread does not run in an endless loop like the receiver -- the Session</A> has 
some control over it. For instance, after the RTCP sender thread is started, it 
does not send any RTCP packets unless the application (user of the <A 
href="http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/docs/java.net.RTP.Session.html">Session</A>) 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久九九久久九九| 成人永久免费视频| 免费在线看一区| 日韩av一区二区在线影视| 亚洲成人高清在线| 亚洲大片一区二区三区| 日韩在线观看一区二区| 日韩va欧美va亚洲va久久| 久久国产精品99久久久久久老狼| 日韩av中文字幕一区二区三区| 日韩成人免费电影| 精品一区二区三区在线观看国产| 久久99蜜桃精品| 国产另类ts人妖一区二区| 成人午夜免费视频| 91亚洲精品乱码久久久久久蜜桃| 91美女视频网站| 欧美午夜影院一区| 91精品国产一区二区三区| 日韩欧美成人激情| 中文字幕欧美区| 亚洲美女视频一区| 丝袜美腿亚洲一区二区图片| 久久99精品久久只有精品| 成人午夜短视频| 欧美亚洲高清一区| 欧美私人免费视频| 欧美一级视频精品观看| 久久久久国产精品麻豆| 亚洲欧美视频在线观看| 午夜精品123| 国产精品一区二区久久精品爱涩| 91网页版在线| 51精品国自产在线| 国产午夜精品美女毛片视频| 亚洲美女偷拍久久| 九色综合狠狠综合久久| 99精品国产视频| 91精品国产高清一区二区三区蜜臀 | 亚洲国产中文字幕| 精品一区二区三区免费播放| 成人国产精品免费网站| 在线91免费看| 久久久.com| 五月开心婷婷久久| 高潮精品一区videoshd| 欧美色中文字幕| 国产性做久久久久久| 亚洲综合一区在线| 国产精品一区二区久激情瑜伽 | 国产视频亚洲色图| 亚洲国产精品视频| 高清国产一区二区| 在线观看91av| 综合激情成人伊人| 精品写真视频在线观看 | 亚洲欧美另类小说| 激情五月婷婷综合网| 在线免费观看日韩欧美| 国产夜色精品一区二区av| 亚洲电影欧美电影有声小说| 国产黄色成人av| 欧美一激情一区二区三区| 亚洲欧美日韩系列| 国产成人综合在线| 日韩午夜激情av| 亚洲成人av资源| 91麻豆国产在线观看| 久久精品一区二区| 日本vs亚洲vs韩国一区三区二区 | 国产.欧美.日韩| 欧美一区二区三区性视频| 亚洲女人****多毛耸耸8| 国产在线播放一区三区四| 91超碰这里只有精品国产| 一区二区三区四区激情| 成人黄色大片在线观看| 久久久久综合网| 久久精品免费观看| 欧美精品v国产精品v日韩精品 | 亚洲欧美日韩一区二区三区在线观看| 国内精品国产三级国产a久久| 欧美日韩aaaaaa| 亚洲午夜免费视频| 91精品福利在线| 亚洲乱码国产乱码精品精98午夜| 国产一区二区三区四区在线观看| 91精品国产综合久久精品性色| 亚洲精品国产品国语在线app| www.66久久| 国产精品国产a级| 岛国一区二区在线观看| 国产日韩影视精品| 国产精品一区二区无线| 欧美va亚洲va香蕉在线| 久久国产精品一区二区| 日韩欧美视频一区| 美女免费视频一区二区| 日韩精品最新网址| 狂野欧美性猛交blacked| 欧美xxxxxxxx| 国产精品88av| 中文字幕第一页久久| 成人一级片在线观看| 国产精品精品国产色婷婷| 成人av网址在线观看| 亚洲欧洲精品成人久久奇米网| 成人免费高清视频在线观看| 中文字幕中文字幕中文字幕亚洲无线| av午夜精品一区二区三区| 亚洲青青青在线视频| 欧美午夜精品一区二区三区| 午夜在线成人av| 日韩一级视频免费观看在线| 蜜臀a∨国产成人精品| 精品剧情在线观看| 国产一区二区网址| 中文字幕+乱码+中文字幕一区| 成人福利在线看| 一级日本不卡的影视| 欧美男女性生活在线直播观看| 日本在线不卡视频一二三区| 欧美大片在线观看| 国产伦精一区二区三区| 中文字幕一区二区三区色视频| 色999日韩国产欧美一区二区| 五月婷婷激情综合| 精品国产乱码久久久久久浪潮| 国产不卡在线一区| 亚洲免费观看高清完整| 欧美日韩视频在线第一区 | 成人精品小蝌蚪| 亚洲一区二区三区四区在线免费观看| 在线成人免费视频| 国产一区二区三区四区五区入口| 中文字幕色av一区二区三区| 欧美偷拍一区二区| 国产一区二区视频在线| 一区二区三区四区在线| 日韩女同互慰一区二区| 91在线观看地址| 日本va欧美va精品发布| 国产精品欧美经典| 777奇米成人网| 成人av网在线| 日本三级亚洲精品| 国产精品网曝门| 欧美精品视频www在线观看| 国产电影精品久久禁18| 亚洲 欧美综合在线网络| 久久久青草青青国产亚洲免观| 在线观看亚洲a| 激情六月婷婷久久| 亚洲五码中文字幕| 久久久av毛片精品| 欧美系列亚洲系列| 成人午夜精品一区二区三区| 日本欧美加勒比视频| 国产精品国产自产拍高清av王其 | 国产偷国产偷亚洲高清人白洁 | 久久久精品综合| 88在线观看91蜜桃国自产| 99在线精品一区二区三区| 麻豆视频观看网址久久| 夜夜揉揉日日人人青青一国产精品| 亚洲精品一区二区三区蜜桃下载| 欧美性极品少妇| 99久久精品国产导航| 久久超碰97中文字幕| 亚洲国产美女搞黄色| 综合在线观看色| 久久久99久久| 欧美大片在线观看一区二区| 欧美日韩一区二区在线观看视频| 成人的网站免费观看| 国产剧情一区二区| 久久精品国产在热久久| 五月激情六月综合| 亚洲美女少妇撒尿| 国产精品久久久久久久久免费桃花 | 欧美三级电影在线观看| 91原创在线视频| 成人精品免费看| 狠狠色狠狠色综合日日91app| 婷婷中文字幕一区三区| 亚洲综合图片区| 亚洲精品视频自拍| 中文字幕综合网| 中文字幕乱码亚洲精品一区| 久久嫩草精品久久久精品| 精品日韩一区二区| 日韩欧美卡一卡二| 欧美一区二区美女| 欧美老女人在线| 欧美群妇大交群的观看方式| 欧美日韩综合色| 欧美日韩在线综合| 欧美日韩国产综合视频在线观看 | 中文字幕一区二区视频| 国产精品久久久久国产精品日日|