WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
244002
[GStreamer][WebRTC] Move network access to NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=244002
Summary
[GStreamer][WebRTC] Move network access to NetworkProcess
Philippe Normand
Reported
2022-08-16 11:45:52 PDT
SSIA
Attachments
Add attachment
proposed patch, testcase, etc.
Philippe Normand
Comment 1
2022-08-30 07:03:56 PDT
There are 2 possible approaches: a. Somehow move the transport GStreamer elements to the network process, using the newly gstwebrtc ICE split that will ship in GStreamer 1.22. That will require GStreamer initialization in the network process + a custom pipeline there, unless I misunderstood the intent. This approach is still not clear to me. b. Abstract sockets handling in libnice, perhaps using a factory pattern. That would allow the Agent to request sockets creations from the WebProcess, we could then build a socket wrapper similar to the existing infrastructure in-place already for the libwebrtc backend. This is lower-level, but imho nicer...
Philippe Normand
Comment 2
2024-06-12 04:16:37 PDT
Another option, which looks "nicer", would consist of using librice (
https://github.com/ystreet/librice
) which would eventually be supported by GstWebRTC. Then we could make a WebKit-specific network backend for librice.
Philippe Normand
Comment 3
2025-08-04 09:10:25 PDT
For now I'm submitting a libnice backend. Later with librice we can have another backend...
Philippe Normand
Comment 4
2025-08-04 10:04:09 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/48903
Philippe Normand
Comment 5
2025-08-23 04:59:39 PDT
(In reply to Philippe Normand from
comment #3
)
> For now I'm submitting a libnice backend. Later with librice we can have > another backend...
The libnice approach doesn't work out, it's prone to deadlocks, sync IPC calls and some internal MediaStream code (related with tracks observation stopping and closing down the PeerConnection) compete to run on the main thread... This was a nice experiment but I'm afraid not the way forward. We've learned some new things though that hopefully will apply to the librice backend yet to be written.
Philippe Normand
Comment 6
2025-09-08 10:37:14 PDT
I have a working librice-based backend in
https://github.com/philn/WebKit/tree/wip/webrtc-rice
Likely some leaks to fix and iterate a bit, but it's looking like the way forward :)
Philippe Normand
Comment 7
2025-09-15 05:02:04 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/50740
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug