为什么源设备向远程UDP端口0发送RTCP数据包?

问题描述 投票:0回答:1

我正在尝试使用 Miracast 协议将 Windows 10 电脑屏幕投射到 Android TV,并支持 RTCP 扩展。

我遵循规范[MS-WFDPE]:Wi-Fi 显示协议扩展,请参阅第 2.8 章 RTCP

步骤:

  1. 如果 RTSP M3 请求消息包含“microsoft-rtcp-capability”参数,电视将回复
    microsoft_rtcp_capability: supported\r\n
    ,如下:
Real Time Streaming Protocol
    Response: RTSP/1.0 200 OK\r\n
        Status: 200
    Date: Sat, 18 Nov 2023 13:19:52 +0000\r\n
    CSeq: 2\r\n
    Content-type: text/parameters
    Content-length: 457
    \r\n
    Line-based text data: text/parameters (8 lines)
        wfd_video_formats: 38 01 01 08 0001ffff 00000000 00000fff 02 0000 0000 13 0780 0438\r\n
        wfd_audio_codecs: LPCM 00000003 02, AAC 00000003 00\r\n
        wfd_client_rtp_ports: RTP/AVP/UDP;unicast 1028 0 mode=play\r\n
        wfd_content_protection: none\r\n
        wfd_uibc_capability: input_category_list=HIDC;hidc_cap_list=Keyboard/USB, Mouse/USB, MultiTouch/USB, Gesture/USB, RemoteControl/USB;port=none\r\n
        wfd_display_edid: none\r\n
        wfd_connector_type: 05\r\n
        microsoft_rtcp_capability: supported\r\n
  1. TV 将在 SETUP 阶段填充
    client_port
    字段,包括 RTCP 端口,如下所示:
Real Time Streaming Protocol
    Request: SETUP rtsp://192.168.49.235/wfd1.0/streamid=0 RTSP/1.0\r\n
        Method: SETUP
        URL: rtsp://192.168.49.235/wfd1.0/streamid=0
    Date: Sat, 18 Nov 2023 13:19:53 +0000\r\n
    CSeq: 2\r\n
    Transport: RTP/AVP/UDP;unicast;client_port=1028-1029
    \r\n

来源回复:

Transport: RTP/AVP/UDP;unicast;client_port=1028-1029;server_port=64713-7492;ssrc=866c7a52;rtcp-fb-ssrc=866c7a53

此后,Windows 计算机将包含发送者报告的 RTCP 复合数据包发送到远程 UDP 端口

0
,但不是
1029
。 Android TV 上未收到 RTCP 数据包,且
1029
端口始终无法读取。

本地7492端口和远程1029端口之间应建立RTCP通信。但是,源设备(Windows计算机)使用远程0端口而不是1029,我想知道为什么。

如有任何帮助,我们将不胜感激!

windows rtsp rtcpeerconnection rtcp miracast
1个回答
0
投票

说明书上说:

但是,我电脑上的Windows 10版本是1909版本,而不是v1507或v1511。也许它也有一个错误或者没有得到很好的支持。

升级到最新的Windows 10 22H2版本后,该问题已修复。

© www.soinside.com 2019 - 2024. All rights reserved.