首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RTSP: RTP使用与RTSP相同的端口

RTSP: RTP使用与RTSP相同的端口
EN

Stack Overflow用户
提问于 2022-05-09 06:03:01
回答 2查看 243关注 0票数 0

这真的不是一个问题,但我想从社会上听到这个“奇怪”的现象,或者至少在我看来是这样。

我编写了一个RTSP应用程序,它可以流视频和音频(分别作为RTP有效负载96和97 )。

RTSP客户端进行连接和设置,并正确播放(视频可以在客户端看到)。我担心的是,RTP (视频和音频)是通过TCP (通过端口554)发送的。是的,我知道它的正确行为,但我很迷惑它使用与RTSP (端口554)相同的端口。我一直认为RTSP将有一个静态端口号,在RTSP连接建立之后,客户端将与服务器协商RTP/RTCP连接(这将导致创建额外的端口(在我的例子中为4)。然而,似乎所有的RTP/RTSP/RTCP流量都是通过同一个端口进行隧道化的(或者我误解了结果)。

下面是wireshark捕获的rtsp事务

代码语言:javascript
运行
复制
C->S (video payload)
SETUP rtsp://192.168.22.33:554/MOVIE/stream=0 RTSP/1.0
CSeq: 3
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
User-Agent: happytimesoft rtsp client

S->C (video payload ok)
RTSP/1.0 200 OK
CSeq: 3
Transport: RTP/AVP/TCP;unicast;interleaved=0-1;ssrc=7C0EAE5B;mode="PLAY"
Server: GStreamer RTSP server
Session: -8lIe87._f3qX4.h
Date: Wed, 24 Mar 2021 15:23:22 GMT

C->S (audio payload)
SETUP rtsp://192.168.22.33:554/MOVIE/stream=1 RTSP/1.0
CSeq: 4
Session: -8lIe87._f3qX4.h
Transport: RTP/AVP/TCP;unicast;interleaved=2-3
User-Agent: happytimesoft rtsp client

S->C (audio payload)
RTSP/1.0 200 OK
CSeq: 4
Transport: RTP/AVP/TCP;unicast;interleaved=2-3;ssrc=2E0ECCA6;mode="PLAY"
Server: GStreamer RTSP server
Session: -8lIe87._f3qX4.h
Date: Wed, 24 Mar 2021 15:23:22 GMT

C->S
PLAY rtsp://192.168.22.33:554/MOVIE/ RTSP/1.0
CSeq: 5
Session: -8lIe87._f3qX4.h
Range: npt=0.000-
User-Agent: happytimesoft rtsp client

之后,它在一个端口中处理两个有效载荷。

我的解释正确吗?是否存在通过一个端口发送所有通信的问题(尽管延迟)?或者是否有可能重新路由数据包?

谢谢

https://www.rfc-editor.org/rfc/rfc2326.txt

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-05-09 06:17:44

RTSP/RTP有多种发送方式。您的客户端显式请求RTSP交织- RTP数据在RTSP通道中被交织发送。这是防火墙受限环境的一个不错的退路。如果您不请求,这个RTP通道应该通过它们各自的UDP端口发送。

票数 1
EN

Stack Overflow用户

发布于 2022-09-16 15:39:46

它使用TCP (您的主要关注事项)的原因是它使用TCP是按照以下尝试顺序默认的:tcp+udp-mcast+udphttps://gstreamer.freedesktop.org/documentation/rtsp/rtspsrc.html#rtspsrc:protocols

您可以通过将rtspsrc参数protocols设置为GST_RTSP_LOWER_TRANS_UDP来强制UDP。或在gst-launch-1.0 -> protocols=1

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72167562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档