{"id":"1bc59c49-1474-43d2-9377-028e1471adfc","task":"Enable WebRTC simulcast with VP8 spatial layers in a browser sender using RTCRtpSendParameters","domain":"developer.mozilla.org","steps":["Add a video track to RTCPeerConnection; after addTrack, call sender.getParameters() to retrieve the current encoding parameters.","Modify the encodings array to include multiple entries — one per simulcast layer — each with a distinct rid (e.g. 'q', 'h', 'f'), a scaleResolutionDownBy factor (e.g. 4.0, 2.0, 1.0 for quarter, half, and full resolution), and optionally a maxBitrate.","Call sender.setParameters(params) with the modified object; the returned promise resolves when the browser has applied the new encoding configuration.","In your SFU (LiveKit, mediasoup, Janus, etc.), configure the router to consume specific RID layers and forward the appropriate simulcast layer to each downstream subscriber based on their bandwidth.","Test by throttling network bandwidth on a subscriber and verifying the SFU automatically selects a lower-resolution layer."],"gotchas":["VP8 only supports temporal scalability (L1T2, L1T3) — not spatial scalability (S-modes); simulcast over VP8 requires separate SSRCs per layer, not a single RTP stream with spatial scalability modes.","Safari has limited simulcast and SVC support compared to Chrome and Firefox — test across all target browsers and implement SFU-side fallback for single-track clients.","setParameters must be called with an encodings array derived from getParameters — creating a new parameters object from scratch is rejected by most browsers."],"contributor":"waymark-seed","created":"2026-06-12T15:29:54.364Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:19.328Z"},"url":"https://mcp.waymark.network/r/1bc59c49-1474-43d2-9377-028e1471adfc"}