@streaming-cdn/rtc-web 1.3.10 → 1.3.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +22 -1
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # RTC Web SDK 1.3.9
1
+ # RTC Web SDK 1.3.12
2
2
 
3
3
  The customer package contains compiled ESM/UMD JavaScript and TypeScript declarations. It intentionally excludes implementation source and source maps. Example source remains available under `examples/`.
4
4
 
@@ -147,6 +147,20 @@ side receives a terminal call state. Manual integrations must call
147
147
  `await media.leave(); media.destroy()` for `ended`, `cancelled`, `rejected`,
148
148
  `busy`, `failed`, and `missed`. Calling the same terminal action twice is safe.
149
149
 
150
+ ## Transports
151
+
152
+ `transport: "mesh"` (the default) opens one connection per pair, which suits
153
+ direct calls and small rooms. `transport: "sfu"` sends media once to the
154
+ platform SFU and receives each remote participant from it, which is what a
155
+ large room needs — media no longer grows with the participant count. The
156
+ credential, the events and the rest of the API are identical, so an
157
+ application switches transports without changing its UI or call flow. SDP for
158
+ the SFU travels over `/v1/rtc/sfu/*` authenticated by the same signaling
159
+ token; no separate credential exists. With a single uplink there is no
160
+ per-connection tier, so `peerquality` is not emitted on this transport and
161
+ `setQuality` applies to the uplink directly. The React Native adapter
162
+ currently ships the mesh transport.
163
+
150
164
  ## Quality and codecs
151
165
 
152
166
  Use `setQuality("low" | "medium" | "high" | "audio" | "auto")` at runtime.
@@ -154,6 +168,13 @@ Use `setQuality("low" | "medium" | "high" | "audio" | "auto")` at runtime.
154
168
  available outgoing bitrate plus encoder CPU/bandwidth limits to step down
155
169
  quickly and recover conservatively. It starts at `medium`; severe latency or
156
170
  loss falls directly to `low`, while promotion requires six healthy samples.
171
+
172
+ The requested quality is a ceiling, not an instruction. Calls are a peer mesh,
173
+ so every participant has its own connection with its own link: each connection
174
+ settles at or below the ceiling on its own evidence, and one participant on a
175
+ poor network no longer decides what everybody else receives. A new connection
176
+ starts one step below the ceiling and proves itself upward. Listen for
177
+ `peerquality` (`{ participantId, quality }`) when one connection's tier moves.
157
178
  Use `setPreferredVideoCodec("vp8" | "h264" | "auto")`; compatible fallback
158
179
  codecs remain in the offer. `packetLossPct` is the loss measured since the
159
180
  previous sample. `packetLossCumulativePct` is the value since the call began.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streaming-cdn/rtc-web",
3
- "version": "1.3.10",
3
+ "version": "1.3.12",
4
4
  "type": "module",
5
5
  "main": "dist/rtc-web.umd.js",
6
6
  "module": "dist/rtc-web.es.js",