【问题标题】:webRTC How to force PLI packet sent from javascript web app client?webRTC 如何强制从 javascript Web 应用程序客户端发送 PLI 数据包?
【发布时间】:2021-01-24 20:44:25
【问题描述】:
I am streaming webRTC from a server to a web client successfully using code adapted from this jsfiddle: 

https://jsfiddle.net/z7ms3u5r/

我需要 javascript 客户端发送 Picture Loss Indicator (PLI) 数据包,以通知服务器形成关键帧(i-frame)。有没有办法强制 javascript webRTC 客户端向服务器发送 PLI?

【问题讨论】:

    标签: javascript video-streaming webrtc rtp rtcp


    【解决方案1】:

    很遗憾,您不能使用 WebRTC 媒体 API。

    如果您使用的是 Pion(该要点的来源),我将通过 DataChannel 发送 PLI。然后您可以轻松地在 Go 中制作+发送一个!

    【讨论】:

    • 我正在使用 Pion 作为 webRTC 服务器。我可以从 golang Pion 服务器发送 PLI,但是从服务器端发送时它对服务器流式传输没有影响。我不知道有任何模拟接收 PLI 的实现。
    • 您能否通过数据通道从客户端发送“PLI 替换”?您可以通过 DataChannels 发送所需的 w/e 消息。所以你可以在 Go 中有一个 DataChannel 处理程序,上面写着if dataChannelMsg == "PLIRequest" { generateKeyframe() }
    • 如果我可以从 pion 服务器手动 generateKeyframe() 来解决我的问题。问题是它不会生成关键帧,除非它从客户端接收到 PLI。我正在使用 GStreamer UDP 管道流式传输到 pion 服务器。
    猜你喜欢
    • 2011-05-04
    • 2012-10-19
    • 1970-01-01
    • 2014-11-07
    • 2018-12-08
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多