Skip to main content

form_pairs

Function form_pairs 

Source
pub fn form_pairs(
    ids: &mut PairIds,
    role: Role,
    locals: &[LocalCandidate],
    remotes: &[RemoteCandidate],
) -> Vec<CandidatePair>
Expand description

§6.1.2.2: pair each local candidate with each remote candidate of the same component and the same address family, then §6.1.2.4’s pruning.

The component reduction is §6.1.2.2’s: “the number of components for that data stream is effectively reduced … to the minimum across both agents of the maximum component ID provided by each agent”. If sipx offers RTP alone because MediaPort did not get the control port, the peer’s RTCP candidates go unpaired, which is exactly the case that sentence describes.