Closed
Bug 849746
(e10s-webrtc)
Opened 12 years ago
Closed 5 years ago
[meta] make webrtc e10s ready
Categories
(Core :: WebRTC, defect)
Core
WebRTC
Tracking
()
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
e10s | + | --- |
People
(Reporter: slee, Unassigned)
References
(Depends on 1 open bug)
Details
(Keywords: meta, Whiteboard: [e10s])
Currently, WebRTC is not e10s ready.
For what I know,
1. Webrtc creates sockets in the content process which is not allowed.
2. The permission checks of camera api and audio capture
Comment 1•12 years ago
|
||
The first task here is to have a conversation about what we think the right architecture is
here. I'll be following up on this next week when I get back from IETF.
Comment 2•12 years ago
|
||
I think we should discuss how to do that, too.
We have some discussion in Taiwan locally, but no conclusion now.
The ideal implementation would be let chrome process take care of hardware (audio/video/codec) and socket. Then content side just instruct chrome process about what they want. However, that would be a huge architecture change I think. :S
By the way, Bug 845727 is for camera part. But I think the Camera API is only available on B2G currently.
Updated•12 years ago
|
Whiteboard: [WebRTC] → [WebRTC][blocking-webrtc-]
Comment 3•12 years ago
|
||
Is Bug 834093 a duplicate of this bug?
Comment 4•12 years ago
|
||
I spent a while talking to Jonas Sicking about this yesterday.
We really don't want to move everything into the chrome process because
that obviates the security benefits of process separation. However,
some of it does need to be in there, likely including proxies for
the camera and microphone. Jonas also suggested the ICE stack
because that will allow the chrome process to enforce the
ICE consent guarantees.
Comment 5•12 years ago
|
||
I agree, it is necessary to Manage how to allocate camera hw resource to app/web page. But I don't want to move camera hw handling code to chrome process.
To provide product level performance/quality, camera hw needs to be near to content process as possible. Some problem is at Bug 844248 and Bug 848627. For Firefox OS 1.1, we should not do big change about how to handle camera stream.
In Bug 803471, I moved camera hw hal and hw codec to android's media server process as a short term solution for FirefoxOS 1.1. It does not request a big change to how to handle camera and codec in gecko. And still can get good performance and normal content process can use camera/codec hw. Do this at camera hw is easier than hw codec. About hw codec, it become very difficult to do it.
For a longer term, "Implement a dedicated 'media service' process" is a way to go, I think. Bug 845209, Bug 785592 are related bug. By implement the service process, we can replace "android's media server process". And we can do a correct permission check in the serviec process.
Comment 6•12 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro] from comment #5)
>
> In Bug 803471, I moved camera hw hal and hw codec to android's media server
> process as a short term solution for FirefoxOS 1.1. It does not request a
> big change to how to handle camera and codec in gecko. And still can get
> good performance and normal content process can use camera/codec hw. Do this
> at camera hw is easier than hw codec. About hw codec, it become very
> difficult to do it.
>
> For a longer term, "Implement a dedicated 'media service' process" is a way
> to go, I think. Bug 845209, Bug 785592 are related bug. By implement the
> service process, we can replace "android's media server process". And we can
> do a correct permission check in the serviec process.
I put "Do this at camera hw is easier than hw codec...." in a wrong position. Following is correct one.
--------------------------------------
In Bug 803471, I moved camera hw hal and hw codec to android's media server process as a short term solution for FirefoxOS 1.1. It does not request a big change to how to handle camera and codec in gecko. And still can get good performance and normal content process can use camera/codec hw.
For a longer term, "Implement a dedicated 'media service' process" is a way to go, I think. Bug 845209, Bug 785592 are related bug. By implement the service process, we can replace "android's media server process". And we can do a correct permission check in the serviec process.Do this at camera hw is easier than hw codec. About hw codec, it become very difficult to do it.
Updated•12 years ago
|
Keywords: meta
Whiteboard: [WebRTC][blocking-webrtc-] → [WebRTC][blocking-webrtc-][b2g-webrtc-]
Updated•11 years ago
|
Blocks: b2g-webrtc
Updated•11 years ago
|
tracking-e10s:
--- → +
Updated•11 years ago
|
Blocks: old-e10s-m2
Updated•10 years ago
|
Priority: -- → P1
Comment 8•10 years ago
|
||
I recently did a review (bug 1036653) of new webrtc screen sharing code which generated a discussion about webrtc's current architecture which is not e10s/sandbox compatible.
The issues are that device capture / interfacing and desktop/window screen sharing happen entirely in the child process. Giving access to these devices in the child has security consequences, and additionally when we turn on sandboxing, none of this code will work on Windows since sandboxed processes run in a locked down, low integrity, virtual desktop.
The required work here apparently entails significant architectural changes. :/
Comment 9•10 years ago
|
||
I've asked GCP to track the changes needed for WebRTC under e10s and sandboxing.
Flags: needinfo?(blassey.bugs)
Updated•10 years ago
|
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Updated•10 years ago
|
Updated•9 years ago
|
backlog: --- → webRTC+
Rank: 15
Whiteboard: [WebRTC][blocking-webrtc-][b2g-webrtc-] → [e10s]
Comment 11•9 years ago
|
||
This is a meta, which typically don't prioritize. We prioritize the dependent bugs (except at the very beginning - prior to bug breakdown).
backlog: webRTC+ → ---
Rank: 15
Priority: P1 → --
Comment 12•5 years ago
|
||
I think it is now done!
Status: REOPENED → RESOLVED
Closed: 10 years ago → 5 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•