Open Bug 1437199 Opened 8 years ago Updated 3 years ago

Move RTP handling from MediaPipeline to Transportlayer

Categories

(Core :: WebRTC: Networking, enhancement, P3)

enhancement

Tracking

()

Tracking Status
firefox60 --- affected

People

(Reporter: drno, Unassigned)

References

Details

As seen in bug 1435025 the fact that we give encrypted RTP packets to all MediaPipelines creates problems. It also results in decrypting RTCP multiple times (once for each connected MediaPipeline). And once we move mtransport over into a separate networking process with Necko (assuming IPC will then happen between TransportLayer and MediaPipeline) it would not only hurt more, but also still leave crypto pieces (SRTP) in the content process. I think we should create something like TransportLayerRtp, which receives packets from TransportLayerIce and takes care of: - verifying that the packet is a valid RTP packet - decrypting the SRTP once - ... maybe other things - dispatching the decrypted packet to the right MediaPipeline (once for RTP, and to multiple pipelines for RTCP) The TransportLayerRtp would need to learn about the PT, SSRC and MID of each MediaPipeline to do the proper routing. A separate RTP parser (from the webrtc.org one we use right now) to operate in that new networking process might be helpful.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.