From cef1456ac8a882b326f744b33877974ce6a1b11c Mon Sep 17 00:00:00 2001 From: Dominique Hazael-Massieux Date: Wed, 27 Mar 2024 14:51:25 +0100 Subject: [PATCH 1/4] Make RTP Header Extension for Absolute Capture Time an explicit ref see also #201 --- index.html | 21 ++++----------------- webrtc-extensions.js | 8 +++++++- 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/index.html b/index.html index b2a400f..6639a58 100644 --- a/index.html +++ b/index.html @@ -54,26 +54,13 @@

Introduction

Terminology

The following terms are defined in - RTP Header Extension for Absolute Capture Time: + RTP Header Extension for Absolute Capture Time:

-

The process of chaining an operation to an operations chain is defined in [[WEBRTC]] Section 4.4.1.2.

-

- The {{EventHandler}} interface, representing a callback used for event handlers, is defined in [[!HTML]]. -

-

- The concepts [= queue a task =] and [= networking task source =] are defined in [[!HTML]]. -

-

- The concept [= fire an event =] is defined in [[!DOM]]. -

-

- The terms [= event =], [= event handlers =] and [= event handler event types =] are defined in [[!HTML]]. -

The process of forming a candidate pair is defined in [[RFC8445]] Section 6.1.2.2. diff --git a/webrtc-extensions.js b/webrtc-extensions.js index b755faa..bc991a0 100644 --- a/webrtc-extensions.js +++ b/webrtc-extensions.js @@ -43,6 +43,12 @@ var respecConfig = { }, "CRYPTEX": { "aliasOf": "RFC9335" - } + }, + "RTP-EXT-CAPTURE-TIME": { + "title": "RTP Header Extension for Absolute Capture Time", + "publisher": "WebRTC Project", + href: "https://webrtc.googlesource.com/src/+/refs/heads/main/docs/native-code/rtp-hdrext/abs-capture-time", + "status": "Experimental RTP Header Extension" + } } } From b0aaf498b03a78756a75d2031e983c3acc041a5a Mon Sep 17 00:00:00 2001 From: Dominique Hazael-Massieux Date: Wed, 27 Mar 2024 14:51:43 +0100 Subject: [PATCH 2/4] Fix links to WebRTC and use autolinks where possible --- index.html | 45 +++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/index.html b/index.html index 6639a58..2489a6a 100644 --- a/index.html +++ b/index.html @@ -1466,35 +1466,35 @@

The {{RTCDataChannel}} transfer steps, given value and dataHolder, are:

  1. If value.`[[IsTransferable]]` is false, throw a "DataCloneError" DOMException.

  2. -
  3. Set dataHolder.`[[ReadyState]]` to value.`[[ReadyState]]`.

  4. -
  5. Set dataHolder.`[[DataChannelLabel]]` to value.`[[DataChannelLabel]]`.

  6. -
  7. Set dataHolder.`[[Ordered]]` to value.`[[Ordered]]`.

  8. -
  9. Set dataHolder.`[[MaxPacketLifeTime]]` to value..`[[MaxPacketLifeTime]]`

  10. -
  11. Set dataHolder.`[[MaxRetransmits]]` to value.`[[MaxRetransmits]]`.

  12. -
  13. Set dataHolder.`[[DataChannelProtocol]]` to value.`[[DataChannelProtocol]]`.

  14. -
  15. Set dataHolder.`[[Negotiated]]` to value.`[[Negotiated]]`.

  16. -
  17. Set dataHolder.`[[DataChannelId]]` to value.`[[DataChannelId]]`.

  18. -
  19. Set dataHolder.`[[underlyingDataTransport]]` to value underlying data transport.

  20. +
  21. Set dataHolder.`[[ReadyState]]` to value.`[[ReadyState]]`.

  22. +
  23. Set dataHolder.`[[DataChannelLabel]]` to value.`[[DataChannelLabel]]`.

  24. +
  25. Set dataHolder.`[[Ordered]]` to value.`[[Ordered]]`.

  26. +
  27. Set dataHolder.`[[MaxPacketLifeTime]]` to value..`[[MaxPacketLifeTime]]`

  28. +
  29. Set dataHolder.`[[MaxRetransmits]]` to value.`[[MaxRetransmits]]`.

  30. +
  31. Set dataHolder.`[[DataChannelProtocol]]` to value.`[[DataChannelProtocol]]`.

  32. +
  33. Set dataHolder.`[[Negotiated]]` to value.`[[Negotiated]]`.

  34. +
  35. Set dataHolder.`[[DataChannelId]]` to value.`[[DataChannelId]]`.

  36. +
  37. Set dataHolder.`[[underlyingDataTransport]]` to value underlying data transport.

  38. Set value.`[[IsTransferable]]` to false.

  39. Set value.`[[ReadyState]]` to "closed".

-

The {{RTCDataChannel}} transfer-receiving steps, given dataHolder and channel, are:

+

The {{RTCDataChannel}} [=transfer-receiving steps=], given dataHolder and channel, are:

    -
  1. Initialize channel.`[[ReadyState]]` to dataHolder.`[[ReadyState]]`.

  2. -
  3. Initialize channel.`[[DataChannelLabel]]` to dataHolder.`[[\DataChannelLabel]]`.

  4. -
  5. Initialize channel.`[[Ordered]]` to dataHolder.`[[Ordered]]`.

  6. -
  7. Initialize channel.`[[MaxPacketLifeTime]]` to dataHolder.`[[MaxPacketLifeTime]]`.

  8. -
  9. Initialize channel.`[[MaxRetransmits]]` to dataHolder.`[[MaxRetransmits]]`.

  10. -
  11. Initialize channel.`[[DataChannelProtocol]]` to dataHolder.`[[DataChannelProtocol]]`.

  12. -
  13. Initialize channel.`[[Negotiated]]` to dataHolder.`[[Negotiated]]`.

  14. -
  15. Initialize channel.`[[DataChannelId]]` to dataHolder.`[[DataChannelId]]`.

  16. -
  17. Initialize channel underlying data transport to dataHolder.`[[underlyingDataTransport]]`.

  18. +
  19. Initialize channel.`[[ReadyState]]` to dataHolder.`[[ReadyState]]`.

  20. +
  21. Initialize channel.`[[DataChannelLabel]]` to dataHolder.`[[\DataChannelLabel]]`.

  22. +
  23. Initialize channel.`[[Ordered]]` to dataHolder.`[[Ordered]]`.

  24. +
  25. Initialize channel.`[[MaxPacketLifeTime]]` to dataHolder.`[[MaxPacketLifeTime]]`.

  26. +
  27. Initialize channel.`[[MaxRetransmits]]` to dataHolder.`[[MaxRetransmits]]`.

  28. +
  29. Initialize channel.`[[DataChannelProtocol]]` to dataHolder.`[[DataChannelProtocol]]`.

  30. +
  31. Initialize channel.`[[Negotiated]]` to dataHolder.`[[Negotiated]]`.

  32. +
  33. Initialize channel.`[[DataChannelId]]` to dataHolder.`[[DataChannelId]]`.

  34. +
  35. Initialize channel underlying data transport to dataHolder.`[[underlyingDataTransport]]`.

-

The above steps do not need to transfer `[[BufferedAmount]]` as its value will always be equal to 0. +

The above steps do not need to transfer `[[BufferedAmount]]` as its value will always be equal to 0. The reason is an {{RTCDataChannel}} can be transferred only if its send() algorithm was not called prior the transfer.

-

If the underlying data transport is closed at the time of the transfer-receiving steps, - the {{RTCDataChannel}} object will be closed by running the announcing a data channel as closed algorithm immediately after the transfer-receiving steps.

+

If the underlying data transport is closed at the time of the [=transfer-receiving steps=], + the {{RTCDataChannel}} object will be closed by running the announcing a data channel as closed algorithm immediately after the [=transfer-receiving steps=].

@@ -1807,6 +1807,7 @@

Text.

+

Acknowledgements

From c438b29049cd37f54d6398a08be019ef0d59ebf3 Mon Sep 17 00:00:00 2001 From: Dominique Hazael-Massieux Date: Wed, 27 Mar 2024 14:57:08 +0100 Subject: [PATCH 3/4] Fix and simplify respec config --- webrtc-extensions.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/webrtc-extensions.js b/webrtc-extensions.js index bc991a0..7cc3dc4 100644 --- a/webrtc-extensions.js +++ b/webrtc-extensions.js @@ -1,16 +1,12 @@ var respecConfig = { - lint: { "no-unused-dfns": false }, "group": "webrtc", github: { repoURL: "https://github.com/w3c/webrtc-extensions/", branch: "main" }, + latestVersion: null, "xref": ["html", "webidl", "webrtc", "hr-time", "mediacapture-streams", "webrtc-stats", "infra", "dom"], - "shortName": "webrtc-extensions", "specStatus": "ED", - "subjectPrefix": "[webrtc-extensions]", - // if there a publicly available Editor's Draft, this is the link - edDraftURI: "https://w3c.github.io/webrtc-extensions/", editors: [ // { name: "Your Name", url: "http://example.org/", // company: "Your Company", companyURL: "http://example.com/" }, From eb7400f5c6d219caf65509de635207d8248f7e52 Mon Sep 17 00:00:00 2001 From: Dominique Hazael-Massieux Date: Wed, 27 Mar 2024 15:18:31 +0100 Subject: [PATCH 4/4] Remove autogenerated index for now Breaks respec mysteriously --- index.html | 1 - 1 file changed, 1 deletion(-) diff --git a/index.html b/index.html index 2489a6a..8267d27 100644 --- a/index.html +++ b/index.html @@ -1807,7 +1807,6 @@

Text.

-

Acknowledgements