当前位置:懂科普 >

IT科技

> java rtp

java rtp

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java rtp是什么?让我们一起来了解一下吧!

java rtp是Java程序中的一个协议。rtp协议,也被叫作实时传输协议,它是一个网络传输协议。rtp协议的内容是关于在网络上传输音视频的标准数据包格式

java rtp

RTP协议包含了两个子协议,分别是RTP和RTCP。

1.数据传输协议RTP,功能是传输数据。该协议提供的信息有:时间戳(用于同步)、序列号(用于丢包和重排序检测)和负载格式(用于说明数据的编码格式)。

2.控制协议RTCP,它的作用是QoS反馈和同步媒体流。与RTP比较,RTCP占用的带宽很小,通常只有5%。

RTP协议结构如下:
1 2 3 8 9 16bit
V P X CSRC Count M Payload Type
Sequence number Timestamp
SSRC CSRC (variable 0 – 15 items 32bits each)
V ― 版本。
P ― 间隙(Padding)。
X ― 扩展位。
CSRC Count ― 包含 CSRC 标识符(在固定头后)的编号。
M ― 标记。
Payload Type ― 识别 RTP 有效载荷的格式,并通过应用程序决定其解释。
Sequence Number ― 每发送一个 RTP 数据包,序列号增加1。
Timestamp ― 反映 RTP 数据包中的第一个八位组的采样时间。

SSRC ― 同步源。

CSRC ― 贡献源标识符。

实战演练,具体步骤如下:

import org.jnetpcap.protocol.voip.Rtp; //导入依赖的package包/类 @Test public void testRTP() { boolean foundRtp = false;for (JPacket packet : TestUtils.getIterable(FILE)) {if (packet.hasHeader(Rtp.ID)) {foundRtp = true; out.println(packet.getState().toDebugString());out.printf("#%d - RTP%n", packet.getFrameNumber()); }}TestCase.assertTrue("RTP not found", foundRtp); }

标签: rtp java
  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/itkeji/jzqw0n.html