WebRTC SDP协商: How to handle session transitions between Wi-Fi and 4G?

标签 webrtc video-streaming sdp

我正在使用 WebRTC 开发实时视频流项目。我们的设置有一个视频流发送器(移动机器人)和一个视频流接收器(机器人 Controller ),其间有一个用于 SDP 协商的信令服务器。机器人和机器人 Controller 通过Wi-Fi直接连接。当两台设备都使用 Wi-Fi 时,流媒体可以无缝运行,但在 Wi-Fi 和 4G 网络之间转换时面临挑战。

如何处理 SDP 协商,以便在不中断视频流的情况下顺利地将 session 从 Wi-Fi 过渡到 4G?我们是否应该利用任何最佳实践或特定的 WebRTC 功能来使这一过渡尽可能无缝?

我制作了一个美人鱼语法序列图,但我认为这是错误的,因此我对网络知之甚少。

sequenceDiagram
participant VSS as Video Stream Sender
participant SS as Signaling Server
participant VSR as Video Stream Receiver

Note over VSS,VSR: Wi-Fi RTP Streaming

VSS->>VSR: Wi-Fi Deterioration Detected
VSR->>VSS: Acknowledge Wi-Fi Deterioration

    Note over VSS,VSR: Start taking over session information
    Note over VSS: Connect to 4G line
    Note over VSR: Connect to 4G line
VSS->>SS: SIP INVITE? (send SDP for RTP streaming, when to receive or send webRTC information? Unclear whether to receive from server or to send from terminal to server)
    SS->>VSS: SIP 200 OK
    SS->>VSR: SIP INVITE
    VSR->>SS: SIP 200 OK

    Note over VSS: Generate SDP for Offer
VSS->>SS: Offer (4G)
SS->>VSR: Forward Offer
    Note over VSR: Register SDP for Offer
    Note over VSR: Create SDP for Answer
VSR->>SS: Answer (4G)
SS->>VSS: Forward Answer
    Note over VSS: Register SDP for Answer
    VSS->>VSR: Exchange SDP and ICE candidate
    Note over VSS,VSR: Session Information Transferred
Note over VSS,VS

sequence diagram

我正在寻找见解、建议和代码示例来帮助我有效应对这一挑战。为了继续这个项目,我需要学习哪些基础知识?谨致问候。

最佳答案

我自己解决了这个问题:通过使用SIP邀请进行WebRTC信令并传递SDP信息是可能的。

关于WebRTC SDP协商: How to handle session transitions between Wi-Fi and 4G?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77377992/

相关文章:

android - 从 Android 流式传输视频

ssl - 无法设置远程应答 sdp : Failed to push down transport description: Failed to set SSL role for the channel

javascript - 双方远程视频均不显示

javascript - 如何确定是否正在使用 TURN 服务器(WebRTC)?

android - WebRTC识别远程流视频停止

javascript - Web RTC 屏幕共享在 Chrome 中不起作用

opencv - 如何找出视频的帧率?

video-streaming - 是否可以在 p2p webrtc 流中捕获和存储每个房间的视频流?

android - 如何将 SIP 集成到 Android 中?

java-me - 通过 SIP 连接的 J2ME 音频流