@@ -221,7 +221,7 @@ partial interface RTCRtpReceiver {
221
221
222
222
</pre >
223
223
224
- ## Design considerations, alternatives considered ##
224
+ ## Design considerations ##
225
225
226
226
This design is built upon the Streams API. This is a natural interface
227
227
for stuff that can be considered a "sequence of objects", and has an ecosystem
@@ -246,13 +246,21 @@ There are some challenges with the Streams interface:
246
246
* How to integrate error signalling and recovery, given that most of the
247
247
time, breaking the pipeline is not an appropriate action.
248
248
249
- The alternatives involve callback-based or event-based interfaces; those
250
- would require developing new interfaces that allow the relevant WebRTC
251
- objects to be visible in the worker context in order to do processing off
252
- the main thread. This is complex.
249
+ These things may be solved by use of non-data "frames" (in the forward direction),
250
+ by reverse streams of non-data "frames" (in the reverse direction), or by defining
251
+ new interfaces based on events, promises or callbacks.
253
252
254
253
Experimentation with the prototype API seems to show that performance is
255
254
adequate for real-time processing; the streaming part is not contributing
256
255
very much to slowing down the pipelines.
257
256
257
+ ## Alternatives to Streams ##
258
+ The alternatives involve callback-based or event-based interfaces; those
259
+ would require developing new interfaces that allow the relevant WebRTC
260
+ objects to be visible in the worker context in order to do processing off
261
+ the main thread. This would seem to be a significantly bigger specification
262
+ and implementation effort.
263
+
264
+
265
+
258
266
0 commit comments