@blockcast/mmt-container 1.0.1 → 2.0.0

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 (100) hide show
  1. package/README.md +9 -7
  2. package/dist/browser-runtime.js +6931 -6685
  3. package/dist/browser-runtime.js.map +4 -4
  4. package/dist/carp-catalog.d.ts +7 -7
  5. package/dist/carp-catalog.d.ts.map +1 -1
  6. package/dist/carp-catalog.js +65 -230
  7. package/dist/carp-catalog.js.map +3 -3
  8. package/dist/catalog-fec-params.js.map +1 -1
  9. package/dist/catalog-network-source.js.map +1 -1
  10. package/dist/delivery-catalog.js.map +1 -1
  11. package/dist/delta-fallback-config.js.map +1 -1
  12. package/dist/fec-manager.d.ts +25 -1
  13. package/dist/fec-manager.d.ts.map +1 -1
  14. package/dist/fec-manager.js +208 -15
  15. package/dist/fec-manager.js.map +2 -2
  16. package/dist/fec-state.js.map +1 -1
  17. package/dist/fec-worker-setup.js.map +1 -1
  18. package/dist/held-layer-admission.d.ts +8 -0
  19. package/dist/held-layer-admission.d.ts.map +1 -1
  20. package/dist/held-layer-admission.js +22 -1
  21. package/dist/held-layer-admission.js.map +2 -2
  22. package/dist/iso-block-locator.js.map +1 -1
  23. package/dist/mfu-reassembler.js.map +1 -1
  24. package/dist/mmtp-container-parser.js.map +1 -1
  25. package/dist/mmtp-container-parser.no-modules.js +127 -322
  26. package/dist/mmtp-container-parser.no-modules.js.map +4 -4
  27. package/dist/mmtp-decode-pipeline.js.map +1 -1
  28. package/dist/mmtp-fec-session.d.ts.map +1 -1
  29. package/dist/mmtp-fec-session.js +61 -15
  30. package/dist/mmtp-fec-session.js.map +3 -3
  31. package/dist/mmtp-router.d.ts +11 -6
  32. package/dist/mmtp-router.d.ts.map +1 -1
  33. package/dist/mmtp-router.js +47 -10
  34. package/dist/mmtp-router.js.map +3 -3
  35. package/dist/multicast-auth-catalog.d.ts +8 -8
  36. package/dist/multicast-auth-catalog.d.ts.map +1 -1
  37. package/dist/multicast-auth-catalog.js +171 -75
  38. package/dist/multicast-auth-catalog.js.map +4 -4
  39. package/dist/multicast-input.d.ts +5 -5
  40. package/dist/multicast-input.d.ts.map +1 -1
  41. package/dist/multicast-input.js +126 -49
  42. package/dist/multicast-input.js.map +3 -3
  43. package/dist/multicast-manager.d.ts +11 -4
  44. package/dist/multicast-manager.d.ts.map +1 -1
  45. package/dist/multicast-manager.js +7922 -7700
  46. package/dist/multicast-manager.js.map +4 -4
  47. package/dist/multicast-transport.d.ts +8 -0
  48. package/dist/multicast-transport.d.ts.map +1 -1
  49. package/dist/multicast-transport.js +27 -3
  50. package/dist/multicast-transport.js.map +3 -3
  51. package/dist/multicast-unwrap.js +2 -2
  52. package/dist/multicast-unwrap.js.map +2 -2
  53. package/dist/no-modules.js +81 -278
  54. package/dist/no-modules.js.map +4 -4
  55. package/dist/repair-fetch.js.map +1 -1
  56. package/dist/signaling.js.map +1 -1
  57. package/dist/timestamp-codec.js.map +1 -1
  58. package/dist/wasm-mfu-reassembler.js.map +1 -1
  59. package/dist/wasm-mmtp-container-parser.js.map +1 -1
  60. package/package.json +5 -5
  61. package/schemas/catalog.schema.json +15 -7
  62. package/src/carp-catalog.ts +14 -13
  63. package/src/fec-manager.ts +89 -14
  64. package/src/held-layer-admission.ts +38 -1
  65. package/src/mmtp-fec-session.ts +20 -12
  66. package/src/mmtp-router.ts +65 -16
  67. package/src/multicast-auth-catalog.ts +43 -36
  68. package/src/multicast-input.ts +28 -8
  69. package/src/multicast-manager.ts +38 -34
  70. package/src/multicast-transport.ts +31 -3
  71. package/test-vectors/bc-provenance-v2.json +614 -175
  72. package/test-vectors/catalog/README.md +24 -8
  73. package/test-vectors/catalog/negative/multicast-auth-asm-missing-sender-address.json +0 -2
  74. package/test-vectors/catalog/negative/{multicast-auth-manifest-port-equals-port.json → multicast-auth-draft01-manifest-port.json} +1 -1
  75. package/test-vectors/catalog/negative/multicast-auth-duplicate-first-epoch.json +0 -1
  76. package/test-vectors/catalog/negative/multicast-auth-duplicate-kid.json +0 -1
  77. package/test-vectors/catalog/negative/multicast-auth-endpoint-auth-without-object-auth.json +0 -1
  78. package/test-vectors/catalog/negative/multicast-auth-endpoint-missing-bandwidth.json +0 -1
  79. package/test-vectors/catalog/negative/multicast-auth-manifest-timer-out-of-range.json +0 -1
  80. package/test-vectors/catalog/negative/multicast-auth-sender-address-on-ssm.json +0 -1
  81. package/test-vectors/catalog/negative/multicast-auth-shared-sg-port.json +73 -0
  82. package/test-vectors/catalog/negative/multicast-auth-version-1.json +0 -1
  83. package/test-vectors/catalog/negative/multicast-auth-version-3.json +0 -1
  84. package/test-vectors/catalog/negative/multicast-auth-version-missing.json +0 -1
  85. package/test-vectors/catalog/negative/multicast-endpoint-address-family-mismatch.json +55 -0
  86. package/test-vectors/catalog/negative/multicast-endpoint-address-host-name.json +55 -0
  87. package/test-vectors/catalog/negative/multicast-endpoint-address-leading-zero.json +55 -0
  88. package/test-vectors/catalog/negative/multicast-endpoint-address-ls32-leading-zero.json +55 -0
  89. package/test-vectors/catalog/negative/multicast-endpoint-address-mapped-family-mismatch.json +55 -0
  90. package/test-vectors/catalog/negative/multicast-endpoint-address-zone-id.json +55 -0
  91. package/test-vectors/catalog/positive/multicast-auth-asm-sender.json +0 -2
  92. package/test-vectors/catalog/{negative/multicast-auth-max-auth-delay-above-max.json → positive/multicast-auth-max-auth-delay-above-max-clamped.json} +0 -1
  93. package/test-vectors/catalog/{negative/multicast-auth-max-auth-delay-below-min.json → positive/multicast-auth-max-auth-delay-below-min-clamped.json} +0 -1
  94. package/test-vectors/catalog/positive/multicast-auth-max-auth-delay-string.json +55 -0
  95. package/test-vectors/catalog/positive/multicast-auth-rotation.json +0 -1
  96. package/test-vectors/catalog/positive/multicast-draft01-7-2-6-example.json +0 -1
  97. package/test-vectors/catalog/section-codes.json +8 -3
  98. package/test-vectors/catalog-multicast-auth-v1.json +0 -1
  99. package/test-vectors/catalog-validation.json +3 -3
  100. package/test-vectors/generate-bc-provenance-v2.mjs +94 -14
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "version": 2,
3
3
  "profile": "bc-provenance",
4
- "draft": "draft-ramadan-moq-multicast-01",
5
- "draftCommit": "abf183bfb83e616909453872c4d788db4b3acd19",
4
+ "draft": "draft-ramadan-moq-multicast-02",
5
+ "draftCommit": "5f4917291e2f0e58bdee9e4a813ff248537695e2",
6
6
  "hashAlg": 1,
7
7
  "key": {
8
8
  "seedHex": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
@@ -12,12 +12,11 @@
12
12
  {
13
13
  "id": "appendix-a",
14
14
  "source": "appendix-a",
15
- "note": "draft-ramadan-moq-multicast-01 Appendix A, byte for byte",
15
+ "note": "draft-ramadan-moq-multicast-02 Appendix A, byte for byte",
16
16
  "endpoint": {
17
17
  "S": "198.51.100.7",
18
18
  "G": "232.10.20.30",
19
19
  "port": 5004,
20
- "manifestPort": 5005,
21
20
  "streamId": 2864434397
22
21
  },
23
22
  "ctxInputs": {
@@ -32,13 +31,15 @@
32
31
  "codec": "avc1.640028",
33
32
  "timescale": 90000,
34
33
  "groupDurationTicks": 3000,
35
- "fec": {
36
- "algorithm": "raptorq",
37
- "sourceSymbols": 32,
38
- "repairSymbols": 16,
39
- "symbolSize": 1312,
40
- "interleaveDepthMs": 133
41
- }
34
+ "fec": [
35
+ {
36
+ "scheme": "raptorq",
37
+ "sourceSymbols": 32,
38
+ "repairSymbols": 16,
39
+ "symbolSize": 1312,
40
+ "interleaveDepthMs": 133
41
+ }
42
+ ]
42
43
  }
43
44
  },
44
45
  "header": {
@@ -64,10 +65,10 @@
64
65
  ],
65
66
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
66
67
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
67
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
68
- "signatureHex": "9d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808",
68
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
69
+ "signatureHex": "b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d",
69
70
  "recordLength": 196,
70
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
71
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
71
72
  },
72
73
  {
73
74
  "id": "twin",
@@ -77,7 +78,6 @@
77
78
  "S": "198.51.100.7",
78
79
  "G": "232.10.20.30",
79
80
  "port": 5004,
80
- "manifestPort": 5005,
81
81
  "streamId": 2864434397
82
82
  },
83
83
  "ctxInputs": {
@@ -92,13 +92,15 @@
92
92
  "codec": "avc1.640028",
93
93
  "timescale": 90000,
94
94
  "groupDurationTicks": 3000,
95
- "fec": {
96
- "algorithm": "raptorq",
97
- "sourceSymbols": 32,
98
- "repairSymbols": 16,
99
- "symbolSize": 1312,
100
- "interleaveDepthMs": 133
101
- }
95
+ "fec": [
96
+ {
97
+ "scheme": "raptorq",
98
+ "sourceSymbols": 32,
99
+ "repairSymbols": 16,
100
+ "symbolSize": 1312,
101
+ "interleaveDepthMs": 133
102
+ }
103
+ ]
102
104
  }
103
105
  },
104
106
  "header": {
@@ -124,10 +126,10 @@
124
126
  ],
125
127
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
126
128
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
127
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
128
- "signatureHex": "9d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808",
129
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
130
+ "signatureHex": "b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d",
129
131
  "recordLength": 196,
130
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
132
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
131
133
  },
132
134
  {
133
135
  "id": "mmtp-count-1",
@@ -137,7 +139,6 @@
137
139
  "S": "198.51.100.7",
138
140
  "G": "232.10.20.30",
139
141
  "port": 5004,
140
- "manifestPort": 5005,
141
142
  "streamId": 2864434397
142
143
  },
143
144
  "ctxInputs": {
@@ -152,13 +153,15 @@
152
153
  "codec": "avc1.640028",
153
154
  "timescale": 90000,
154
155
  "groupDurationTicks": 3000,
155
- "fec": {
156
- "algorithm": "raptorq",
157
- "sourceSymbols": 32,
158
- "repairSymbols": 16,
159
- "symbolSize": 1312,
160
- "interleaveDepthMs": 133
161
- }
156
+ "fec": [
157
+ {
158
+ "scheme": "raptorq",
159
+ "sourceSymbols": 32,
160
+ "repairSymbols": 16,
161
+ "symbolSize": 1312,
162
+ "interleaveDepthMs": 133
163
+ }
164
+ ]
162
165
  }
163
166
  },
164
167
  "header": {
@@ -181,10 +184,10 @@
181
184
  ],
182
185
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
183
186
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
184
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
185
- "signatureHex": "e57b69abe683b60957b71969447d7ccc81ff5dedaf02890128bc28cf57c17dcab3f11e68cb065dfdc6599b4cb2b2b2c966671776b15c2ce401cbf24ef0e6d60a",
187
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
188
+ "signatureHex": "3c3a9ffa54c0c0765d0616b78d798b0600d566b4efccbd4ee5cfba57bed497f870b1e4e5a28c4e79c39516b7e02db7b84663273aaf890871bb5be2fe0044c308",
186
189
  "recordLength": 164,
187
- "recordHex": "4d484d320000000100000011000000000000000100000000000007d0000101006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5ae57b69abe683b60957b71969447d7ccc81ff5dedaf02890128bc28cf57c17dcab3f11e68cb065dfdc6599b4cb2b2b2c966671776b15c2ce401cbf24ef0e6d60a"
190
+ "recordHex": "4d484d320000000100000011000000000000000100000000000007d0000101006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a3c3a9ffa54c0c0765d0616b78d798b0600d566b4efccbd4ee5cfba57bed497f870b1e4e5a28c4e79c39516b7e02db7b84663273aaf890871bb5be2fe0044c308"
188
191
  },
189
192
  {
190
193
  "id": "mmtp-count-37",
@@ -194,7 +197,6 @@
194
197
  "S": "198.51.100.7",
195
198
  "G": "232.10.20.30",
196
199
  "port": 5004,
197
- "manifestPort": 5005,
198
200
  "streamId": 2864434397
199
201
  },
200
202
  "ctxInputs": {
@@ -209,13 +211,15 @@
209
211
  "codec": "avc1.640028",
210
212
  "timescale": 90000,
211
213
  "groupDurationTicks": 3000,
212
- "fec": {
213
- "algorithm": "raptorq",
214
- "sourceSymbols": 32,
215
- "repairSymbols": 16,
216
- "symbolSize": 1312,
217
- "interleaveDepthMs": 133
218
- }
214
+ "fec": [
215
+ {
216
+ "scheme": "raptorq",
217
+ "sourceSymbols": 32,
218
+ "repairSymbols": 16,
219
+ "symbolSize": 1312,
220
+ "interleaveDepthMs": 133
221
+ }
222
+ ]
219
223
  }
220
224
  },
221
225
  "header": {
@@ -346,10 +350,10 @@
346
350
  ],
347
351
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
348
352
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
349
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
350
- "signatureHex": "a3be9f548cc8e15908be0e0bc83b06e72b1d80de0303c9a4356a9038ff3183facee44092071cfc3888e119cb57a140acbc89a3e7d25ff320e5a030bc26939c03",
353
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
354
+ "signatureHex": "e8dc216b1902de8a649413128a9da0e43cad1e79353d006fd972b19372bab97c086fdd70f1c1cc6be47450ba2e3cb83090a10d4359077c30b1d9ba81d9f0fb09",
351
355
  "recordLength": 1316,
352
- "recordHex": "4d484d32000000010000001100000000000000010000000000000bb8002501006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5aa3be9f548cc8e15908be0e0bc83b06e72b1d80de0303c9a4356a9038ff3183facee44092071cfc3888e119cb57a140acbc89a3e7d25ff320e5a030bc26939c03"
356
+ "recordHex": "4d484d32000000010000001100000000000000010000000000000bb8002501006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd650bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5ae8dc216b1902de8a649413128a9da0e43cad1e79353d006fd972b19372bab97c086fdd70f1c1cc6be47450ba2e3cb83090a10d4359077c30b1d9ba81d9f0fb09"
353
357
  },
354
358
  {
355
359
  "id": "moq-group-boundary",
@@ -359,7 +363,6 @@
359
363
  "S": "198.51.100.7",
360
364
  "G": "232.10.20.30",
361
365
  "port": 5004,
362
- "manifestPort": 5005,
363
366
  "streamId": 2864434397
364
367
  },
365
368
  "ctxInputs": {
@@ -374,13 +377,15 @@
374
377
  "codec": "avc1.640028",
375
378
  "timescale": 90000,
376
379
  "groupDurationTicks": 3000,
377
- "fec": {
378
- "algorithm": "raptorq",
379
- "sourceSymbols": 32,
380
- "repairSymbols": 16,
381
- "symbolSize": 1312,
382
- "interleaveDepthMs": 133
383
- }
380
+ "fec": [
381
+ {
382
+ "scheme": "raptorq",
383
+ "sourceSymbols": 32,
384
+ "repairSymbols": 16,
385
+ "symbolSize": 1312,
386
+ "interleaveDepthMs": 133
387
+ }
388
+ ]
384
389
  }
385
390
  },
386
391
  "header": {
@@ -409,10 +414,10 @@
409
414
  ],
410
415
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
411
416
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
412
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
413
- "signatureHex": "2c472200ec76f7df822c3fbcfc0f42f8deac4a0fe2f95ea51f2681d7d12151416e42ffc0a7ccbb01c5cb78a959d72f444fbc51b728aed91192bebe810737eb03",
417
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
418
+ "signatureHex": "34319542465d215ba1b2a86775e4938ba18e217e27c353a63b36cb1cd72bb5728a1744eeeb8ba475078cc6a873de8c76c1aa11a916b53bada56dde21653c9c03",
414
419
  "recordLength": 228,
415
- "recordHex": "4d484d32000000010000001100000000000000010000000000000fa0000301006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd6502c472200ec76f7df822c3fbcfc0f42f8deac4a0fe2f95ea51f2681d7d12151416e42ffc0a7ccbb01c5cb78a959d72f444fbc51b728aed91192bebe810737eb03",
420
+ "recordHex": "4d484d32000000010000001100000000000000010000000000000fa0000301006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214bacab78a8645965c635ee77cf489745406a1c4fe3ab4c3fb94ad580cd05ceb5a08d988d98c12ad1718ad1040e0f0631fab46e6d8d7728f8b4ba0f65fe5b5d0747d308ed99c9a0d4bdc0703b3f6e5cab59251b38a0cde70be9b256978f5bfd65034319542465d215ba1b2a86775e4938ba18e217e27c353a63b36cb1cd72bb5728a1744eeeb8ba475078cc6a873de8c76c1aa11a916b53bada56dde21653c9c03",
416
421
  "moqGroupIds": [
417
422
  41,
418
423
  41,
@@ -427,7 +432,6 @@
427
432
  "S": "198.51.100.7",
428
433
  "G": "232.10.20.30",
429
434
  "port": 5004,
430
- "manifestPort": 5005,
431
435
  "streamId": 2864434397
432
436
  },
433
437
  "ctxInputs": {
@@ -442,13 +446,15 @@
442
446
  "codec": "avc1.640028",
443
447
  "timescale": 90000,
444
448
  "groupDurationTicks": 3000,
445
- "fec": {
446
- "algorithm": "raptorq",
447
- "sourceSymbols": 32,
448
- "repairSymbols": 16,
449
- "symbolSize": 1312,
450
- "interleaveDepthMs": 133
451
- }
449
+ "fec": [
450
+ {
451
+ "scheme": "raptorq",
452
+ "sourceSymbols": 32,
453
+ "repairSymbols": 16,
454
+ "symbolSize": 1312,
455
+ "interleaveDepthMs": 133
456
+ }
457
+ ]
452
458
  }
453
459
  },
454
460
  "header": {
@@ -474,10 +480,10 @@
474
480
  ],
475
481
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
476
482
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
477
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
478
- "signatureHex": "cdb428e3d155488693fe1243cab4d1c60450a01cea9878a6caf463489ebf791fc0d16b6ba122a67cbd2fda66bddd81949ad3f9eecb8bdf8c9230223bc0e15700",
483
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
484
+ "signatureHex": "0ca5f5eb94443a1fa12d8c2112f947bdd5ebb016ef912ac7629c327e5de53961d872f2a417e55a8dbf17c7ecea59cc50a0a73058696cc823531a17d6e63e280f",
479
485
  "recordLength": 196,
480
- "recordHex": "4d484d320000000100000011000000000000000200000000000003e8000201016ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751cdb428e3d155488693fe1243cab4d1c60450a01cea9878a6caf463489ebf791fc0d16b6ba122a67cbd2fda66bddd81949ad3f9eecb8bdf8c9230223bc0e15700"
486
+ "recordHex": "4d484d320000000100000011000000000000000200000000000003e8000201016ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787510ca5f5eb94443a1fa12d8c2112f947bdd5ebb016ef912ac7629c327e5de53961d872f2a417e55a8dbf17c7ecea59cc50a0a73058696cc823531a17d6e63e280f"
481
487
  },
482
488
  {
483
489
  "id": "ipv6",
@@ -487,7 +493,6 @@
487
493
  "S": "2001:db8::7",
488
494
  "G": "ff3e::8000:1e",
489
495
  "port": 5004,
490
- "manifestPort": 5005,
491
496
  "streamId": 2864434397
492
497
  },
493
498
  "ctxInputs": {
@@ -502,13 +507,15 @@
502
507
  "codec": "avc1.640028",
503
508
  "timescale": 90000,
504
509
  "groupDurationTicks": 3000,
505
- "fec": {
506
- "algorithm": "raptorq",
507
- "sourceSymbols": 32,
508
- "repairSymbols": 16,
509
- "symbolSize": 1312,
510
- "interleaveDepthMs": 133
511
- }
510
+ "fec": [
511
+ {
512
+ "scheme": "raptorq",
513
+ "sourceSymbols": 32,
514
+ "repairSymbols": 16,
515
+ "symbolSize": 1312,
516
+ "interleaveDepthMs": 133
517
+ }
518
+ ]
512
519
  }
513
520
  },
514
521
  "header": {
@@ -534,20 +541,71 @@
534
541
  ],
535
542
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
536
543
  "ctxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
537
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccdd20010db8000000000000000000000007ff3e000000000000000000008000001e138d",
538
- "signatureHex": "f2ea191fd902179b3f514362119e09322a51563f74f500f6f11c38ada6612e4cc1d3aa33c7a4c146c47b19a38a8c60de8a8ab3d9e076fdb217789a5b947fd30f",
544
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccdd20010db8000000000000000000000007ff3e000000000000000000008000001e138c",
545
+ "signatureHex": "8e1e05ad3fce8516efe04dba24c4407018de33c8cf88abbfbb8568b8bc03f02e273e9a929b1a19aabaa1c2d9e0c3d6187bf754b6e20f0d5e9845d98e62dcaa06",
539
546
  "recordLength": 196,
540
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af1921415d3975a8fc59c118a0ab851b00e7e314b806ab20d3c2cb5fb4cf2a58c9d4afe885b469f901e4e2d48e146372555ba066dc73592fb8f43a855440383830a689af2ea191fd902179b3f514362119e09322a51563f74f500f6f11c38ada6612e4cc1d3aa33c7a4c146c47b19a38a8c60de8a8ab3d9e076fdb217789a5b947fd30f"
547
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af1921415d3975a8fc59c118a0ab851b00e7e314b806ab20d3c2cb5fb4cf2a58c9d4afe885b469f901e4e2d48e146372555ba066dc73592fb8f43a855440383830a689a8e1e05ad3fce8516efe04dba24c4407018de33c8cf88abbfbb8568b8bc03f02e273e9a929b1a19aabaa1c2d9e0c3d6187bf754b6e20f0d5e9845d98e62dcaa06"
541
548
  },
542
549
  {
543
550
  "id": "params-no-fec",
544
551
  "source": "beyond-draft",
545
- "note": "catalog entry with no fec object: lp16(\"none\") then four u32(0)",
552
+ "note": "catalog entry with no fec member: lp16(\"none\") then four u32(0)",
553
+ "endpoint": {
554
+ "S": "198.51.100.7",
555
+ "G": "232.10.20.30",
556
+ "port": 5004,
557
+ "streamId": 2864434397
558
+ },
559
+ "ctxInputs": {
560
+ "namespace": [
561
+ "example.arena"
562
+ ],
563
+ "packetIds": [
564
+ 1,
565
+ 2
566
+ ],
567
+ "params": {
568
+ "codec": "avc1.640028",
569
+ "timescale": 90000,
570
+ "groupDurationTicks": 3000
571
+ }
572
+ },
573
+ "header": {
574
+ "kid": 1,
575
+ "epoch": 17,
576
+ "mseq": 1,
577
+ "firstSeq": 1000,
578
+ "flags": 0,
579
+ "sent": 1792972800,
580
+ "hashAlg": 1
581
+ },
582
+ "datagramsHex": [
583
+ "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
584
+ "2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"
585
+ ],
586
+ "pseudoheadersHex": [
587
+ "c6336407e80a141e00110578138c138caabbccdd",
588
+ "c6336407e80a141e00110578138c138caabbccdd"
589
+ ],
590
+ "digestsHex": [
591
+ "7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec2069",
592
+ "6f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751"
593
+ ],
594
+ "paramsHashHex": "f59282c75f7f68a4868cb37f40d145b449f2040121561d64826494934bbc1f33",
595
+ "ctxHex": "b9b25c09c6ce7cf12c2ac8d95085f81b1ecd27ef554b808f3258c516bb788054",
596
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
597
+ "signatureHex": "c5574618ef1551b7eb2e805860f6410c65596beb5d2b86e932147ef80a0344e7e50ab826fd9a354a1d2ab0f988de4e758529b21ba2f344397bd5c23097c21808",
598
+ "recordLength": 196,
599
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800b9b25c09c6ce7cf12c2ac8d95085f81b1ecd27ef554b808f3258c516bb7880547ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751c5574618ef1551b7eb2e805860f6410c65596beb5d2b86e932147ef80a0344e7e50ab826fd9a354a1d2ab0f988de4e758529b21ba2f344397bd5c23097c21808"
600
+ },
601
+ {
602
+ "id": "params-empty-fec-array",
603
+ "source": "beyond-draft",
604
+ "note": "empty fec array: hashes as the no-FEC encoding, params_hash equals params-no-fec",
546
605
  "endpoint": {
547
606
  "S": "198.51.100.7",
548
607
  "G": "232.10.20.30",
549
608
  "port": 5004,
550
- "manifestPort": 5005,
551
609
  "streamId": 2864434397
552
610
  },
553
611
  "ctxInputs": {
@@ -562,7 +620,7 @@
562
620
  "codec": "avc1.640028",
563
621
  "timescale": 90000,
564
622
  "groupDurationTicks": 3000,
565
- "fec": null
623
+ "fec": []
566
624
  }
567
625
  },
568
626
  "header": {
@@ -588,20 +646,19 @@
588
646
  ],
589
647
  "paramsHashHex": "f59282c75f7f68a4868cb37f40d145b449f2040121561d64826494934bbc1f33",
590
648
  "ctxHex": "b9b25c09c6ce7cf12c2ac8d95085f81b1ecd27ef554b808f3258c516bb788054",
591
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
592
- "signatureHex": "679ccc151b0aa3026c704492e6fd8d1ca6eae451fa8428e32b35691feac50e9c0febd9977ded19700707b42f624254c63ae1e09eebe13f728b6b3cff3f0f1601",
649
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
650
+ "signatureHex": "c5574618ef1551b7eb2e805860f6410c65596beb5d2b86e932147ef80a0344e7e50ab826fd9a354a1d2ab0f988de4e758529b21ba2f344397bd5c23097c21808",
593
651
  "recordLength": 196,
594
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800b9b25c09c6ce7cf12c2ac8d95085f81b1ecd27ef554b808f3258c516bb7880547ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751679ccc151b0aa3026c704492e6fd8d1ca6eae451fa8428e32b35691feac50e9c0febd9977ded19700707b42f624254c63ae1e09eebe13f728b6b3cff3f0f1601"
652
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800b9b25c09c6ce7cf12c2ac8d95085f81b1ecd27ef554b808f3258c516bb7880547ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751c5574618ef1551b7eb2e805860f6410c65596beb5d2b86e932147ef80a0344e7e50ab826fd9a354a1d2ab0f988de4e758529b21ba2f344397bd5c23097c21808"
595
653
  },
596
654
  {
597
655
  "id": "params-no-interleave",
598
656
  "source": "beyond-draft",
599
- "note": "fec object without interleaveDepthMs: u32(0)",
657
+ "note": "fec instance without interleaveDepthMs: u32(0)",
600
658
  "endpoint": {
601
659
  "S": "198.51.100.7",
602
660
  "G": "232.10.20.30",
603
661
  "port": 5004,
604
- "manifestPort": 5005,
605
662
  "streamId": 2864434397
606
663
  },
607
664
  "ctxInputs": {
@@ -616,12 +673,14 @@
616
673
  "codec": "avc1.640028",
617
674
  "timescale": 90000,
618
675
  "groupDurationTicks": 3000,
619
- "fec": {
620
- "algorithm": "raptorq",
621
- "sourceSymbols": 32,
622
- "repairSymbols": 16,
623
- "symbolSize": 1312
624
- }
676
+ "fec": [
677
+ {
678
+ "scheme": "raptorq",
679
+ "sourceSymbols": 32,
680
+ "repairSymbols": 16,
681
+ "symbolSize": 1312
682
+ }
683
+ ]
625
684
  }
626
685
  },
627
686
  "header": {
@@ -647,10 +706,150 @@
647
706
  ],
648
707
  "paramsHashHex": "b2da7b0bdacc910d9cef877032d9e30f3b82d947301b1a22045963955a9fe2c9",
649
708
  "ctxHex": "5528e83aefe4455dcf106e23ef3305554ce1b229d1e7f96dcd63a18a4d85b595",
650
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
651
- "signatureHex": "63b12e41e809fdd6a4bdb73934bec8e73e964cad9b4bd451a4e90fe10c01adeed4eafce6770d6f3d4baf97a86f2731bd5cb9f9e3cea686e2768121be71f8270f",
709
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
710
+ "signatureHex": "40a8a8b9e2ee0f9047535f5e85ebaac17cfa4eccdaada167472a3d5486de9194dbcc4cf7d9c652dd19a082f0e3422fe50ba14e822ed31094aa5ac04a97e36c0a",
711
+ "recordLength": 196,
712
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade98005528e83aefe4455dcf106e23ef3305554ce1b229d1e7f96dcd63a18a4d85b5957ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875140a8a8b9e2ee0f9047535f5e85ebaac17cfa4eccdaada167472a3d5486de9194dbcc4cf7d9c652dd19a082f0e3422fe50ba14e822ed31094aa5ac04a97e36c0a"
713
+ },
714
+ {
715
+ "id": "params-two-instances",
716
+ "source": "beyond-draft",
717
+ "note": "base and keyframe overlay instance (mmt-02 7.4.1): two tuples in ascending instanceId",
718
+ "endpoint": {
719
+ "S": "198.51.100.7",
720
+ "G": "232.10.20.30",
721
+ "port": 5004,
722
+ "streamId": 2864434397
723
+ },
724
+ "ctxInputs": {
725
+ "namespace": [
726
+ "example.arena"
727
+ ],
728
+ "packetIds": [
729
+ 1,
730
+ 2
731
+ ],
732
+ "params": {
733
+ "codec": "avc1.640028",
734
+ "timescale": 90000,
735
+ "groupDurationTicks": 3000,
736
+ "fec": [
737
+ {
738
+ "instanceId": 0,
739
+ "scheme": "raptorq",
740
+ "sourceSymbols": 32,
741
+ "repairSymbols": 16,
742
+ "symbolSize": 1312,
743
+ "interleaveDepthMs": 133
744
+ },
745
+ {
746
+ "instanceId": 1,
747
+ "scheme": "raptorq",
748
+ "sourceSymbols": 256,
749
+ "repairSymbols": 32,
750
+ "symbolSize": 1312,
751
+ "interleaveDepthMs": 1000
752
+ }
753
+ ]
754
+ }
755
+ },
756
+ "header": {
757
+ "kid": 1,
758
+ "epoch": 17,
759
+ "mseq": 1,
760
+ "firstSeq": 1000,
761
+ "flags": 0,
762
+ "sent": 1792972800,
763
+ "hashAlg": 1
764
+ },
765
+ "datagramsHex": [
766
+ "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
767
+ "2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"
768
+ ],
769
+ "pseudoheadersHex": [
770
+ "c6336407e80a141e00110578138c138caabbccdd",
771
+ "c6336407e80a141e00110578138c138caabbccdd"
772
+ ],
773
+ "digestsHex": [
774
+ "7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec2069",
775
+ "6f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751"
776
+ ],
777
+ "paramsHashHex": "00e09b054303a285e608632ebc5c8859fee9558bdc2aaa02724920037853b90e",
778
+ "ctxHex": "a42f12a802d6d83da3dae74b96895941355604716d9619a98d78bce8fd254d6a",
779
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
780
+ "signatureHex": "82a837aab44f263cb81c50a0162138cb50b4a53a125a08d46ece1c6400e815e81f0adce401f5c909d7f0db1d712d93238aba801a888cf348422b76d067ba8309",
781
+ "recordLength": 196,
782
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800a42f12a802d6d83da3dae74b96895941355604716d9619a98d78bce8fd254d6a7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875182a837aab44f263cb81c50a0162138cb50b4a53a125a08d46ece1c6400e815e81f0adce401f5c909d7f0db1d712d93238aba801a888cf348422b76d067ba8309"
783
+ },
784
+ {
785
+ "id": "params-two-instances-listed-reversed",
786
+ "source": "beyond-draft",
787
+ "note": "the same instances listed instanceId 1 first: hashed in ascending instanceId, so params_hash equals params-two-instances; array order would not",
788
+ "endpoint": {
789
+ "S": "198.51.100.7",
790
+ "G": "232.10.20.30",
791
+ "port": 5004,
792
+ "streamId": 2864434397
793
+ },
794
+ "ctxInputs": {
795
+ "namespace": [
796
+ "example.arena"
797
+ ],
798
+ "packetIds": [
799
+ 1,
800
+ 2
801
+ ],
802
+ "params": {
803
+ "codec": "avc1.640028",
804
+ "timescale": 90000,
805
+ "groupDurationTicks": 3000,
806
+ "fec": [
807
+ {
808
+ "instanceId": 1,
809
+ "scheme": "raptorq",
810
+ "sourceSymbols": 256,
811
+ "repairSymbols": 32,
812
+ "symbolSize": 1312,
813
+ "interleaveDepthMs": 1000
814
+ },
815
+ {
816
+ "instanceId": 0,
817
+ "scheme": "raptorq",
818
+ "sourceSymbols": 32,
819
+ "repairSymbols": 16,
820
+ "symbolSize": 1312,
821
+ "interleaveDepthMs": 133
822
+ }
823
+ ]
824
+ }
825
+ },
826
+ "header": {
827
+ "kid": 1,
828
+ "epoch": 17,
829
+ "mseq": 1,
830
+ "firstSeq": 1000,
831
+ "flags": 0,
832
+ "sent": 1792972800,
833
+ "hashAlg": 1
834
+ },
835
+ "datagramsHex": [
836
+ "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
837
+ "2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"
838
+ ],
839
+ "pseudoheadersHex": [
840
+ "c6336407e80a141e00110578138c138caabbccdd",
841
+ "c6336407e80a141e00110578138c138caabbccdd"
842
+ ],
843
+ "digestsHex": [
844
+ "7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec2069",
845
+ "6f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751"
846
+ ],
847
+ "paramsHashHex": "00e09b054303a285e608632ebc5c8859fee9558bdc2aaa02724920037853b90e",
848
+ "ctxHex": "a42f12a802d6d83da3dae74b96895941355604716d9619a98d78bce8fd254d6a",
849
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
850
+ "signatureHex": "82a837aab44f263cb81c50a0162138cb50b4a53a125a08d46ece1c6400e815e81f0adce401f5c909d7f0db1d712d93238aba801a888cf348422b76d067ba8309",
652
851
  "recordLength": 196,
653
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade98005528e83aefe4455dcf106e23ef3305554ce1b229d1e7f96dcd63a18a4d85b5957ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875163b12e41e809fdd6a4bdb73934bec8e73e964cad9b4bd451a4e90fe10c01adeed4eafce6770d6f3d4baf97a86f2731bd5cb9f9e3cea686e2768121be71f8270f"
852
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800a42f12a802d6d83da3dae74b96895941355604716d9619a98d78bce8fd254d6a7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875182a837aab44f263cb81c50a0162138cb50b4a53a125a08d46ece1c6400e815e81f0adce401f5c909d7f0db1d712d93238aba801a888cf348422b76d067ba8309"
654
853
  },
655
854
  {
656
855
  "id": "catalog-less",
@@ -660,7 +859,6 @@
660
859
  "S": "198.51.100.7",
661
860
  "G": "232.10.20.30",
662
861
  "port": 5004,
663
- "manifestPort": 5005,
664
862
  "streamId": 2864434397
665
863
  },
666
864
  "ctxInputs": null,
@@ -687,10 +885,10 @@
687
885
  ],
688
886
  "paramsHashHex": null,
689
887
  "ctxHex": "0000000000000000000000000000000000000000000000000000000000000000",
690
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
691
- "signatureHex": "5778bca279b84aa26613b17b42e027a2b300409af54127942a133720e86148b4250fdfdb30499840f2ec6571d096a5152469361d6685c7cf6454e78be3bdf301",
888
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
889
+ "signatureHex": "de45180426d58acc10abbbeae671d10ffc1cf4f407cc6cb3e907193e8d9dd8a5d12ffb00c88ba70c4b427277a9c57c4bd92dddfbeda169c7bab0971365c5e202",
692
890
  "recordLength": 196,
693
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980000000000000000000000000000000000000000000000000000000000000000007ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787515778bca279b84aa26613b17b42e027a2b300409af54127942a133720e86148b4250fdfdb30499840f2ec6571d096a5152469361d6685c7cf6454e78be3bdf301"
891
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980000000000000000000000000000000000000000000000000000000000000000007ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751de45180426d58acc10abbbeae671d10ffc1cf4f407cc6cb3e907193e8d9dd8a5d12ffb00c88ba70c4b427277a9c57c4bd92dddfbeda169c7bab0971365c5e202"
694
892
  },
695
893
  {
696
894
  "id": "ctx-unsorted-packet-ids",
@@ -700,7 +898,6 @@
700
898
  "S": "198.51.100.7",
701
899
  "G": "232.10.20.30",
702
900
  "port": 5004,
703
- "manifestPort": 5005,
704
901
  "streamId": 2864434397
705
902
  },
706
903
  "ctxInputs": {
@@ -715,13 +912,15 @@
715
912
  "codec": "avc1.640028",
716
913
  "timescale": 90000,
717
914
  "groupDurationTicks": 3000,
718
- "fec": {
719
- "algorithm": "raptorq",
720
- "sourceSymbols": 32,
721
- "repairSymbols": 16,
722
- "symbolSize": 1312,
723
- "interleaveDepthMs": 133
724
- }
915
+ "fec": [
916
+ {
917
+ "scheme": "raptorq",
918
+ "sourceSymbols": 32,
919
+ "repairSymbols": 16,
920
+ "symbolSize": 1312,
921
+ "interleaveDepthMs": 133
922
+ }
923
+ ]
725
924
  }
726
925
  },
727
926
  "header": {
@@ -747,10 +946,10 @@
747
946
  ],
748
947
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
749
948
  "ctxHex": "80a284311c9b9148ccc555cfc1b9fddfb1270a2b8b2c348c54fbf18241443b84",
750
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
751
- "signatureHex": "13c7cb4a58952632a7f71146f436b753bccf8589d3c1a742ce184fee157aa4f73c9f8daa5923d4e16e0b03f510ff1eb497e8bc5c2e8547f8ab845eb0fb2ae108",
949
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
950
+ "signatureHex": "0acb2e90adaf361fc624fb28e10e571b2594f5b5a4780c2d84b708e92d8eb33238bfe54f094c74a4d18e99b3fa1f02840656c4b465e7cec267eb778993f8cb0b",
752
951
  "recordLength": 196,
753
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980080a284311c9b9148ccc555cfc1b9fddfb1270a2b8b2c348c54fbf18241443b847ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875113c7cb4a58952632a7f71146f436b753bccf8589d3c1a742ce184fee157aa4f73c9f8daa5923d4e16e0b03f510ff1eb497e8bc5c2e8547f8ab845eb0fb2ae108"
952
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980080a284311c9b9148ccc555cfc1b9fddfb1270a2b8b2c348c54fbf18241443b847ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787510acb2e90adaf361fc624fb28e10e571b2594f5b5a4780c2d84b708e92d8eb33238bfe54f094c74a4d18e99b3fa1f02840656c4b465e7cec267eb778993f8cb0b"
754
953
  },
755
954
  {
756
955
  "id": "ctx-two-field-namespace",
@@ -760,7 +959,6 @@
760
959
  "S": "198.51.100.7",
761
960
  "G": "232.10.20.30",
762
961
  "port": 5004,
763
- "manifestPort": 5005,
764
962
  "streamId": 2864434397
765
963
  },
766
964
  "ctxInputs": {
@@ -776,13 +974,15 @@
776
974
  "codec": "avc1.640028",
777
975
  "timescale": 90000,
778
976
  "groupDurationTicks": 3000,
779
- "fec": {
780
- "algorithm": "raptorq",
781
- "sourceSymbols": 32,
782
- "repairSymbols": 16,
783
- "symbolSize": 1312,
784
- "interleaveDepthMs": 133
785
- }
977
+ "fec": [
978
+ {
979
+ "scheme": "raptorq",
980
+ "sourceSymbols": 32,
981
+ "repairSymbols": 16,
982
+ "symbolSize": 1312,
983
+ "interleaveDepthMs": 133
984
+ }
985
+ ]
786
986
  }
787
987
  },
788
988
  "header": {
@@ -808,10 +1008,10 @@
808
1008
  ],
809
1009
  "paramsHashHex": "1f652ba84e4a44425da55ddffb24c0791a3851a1d1022b4b47b30881146edf7c",
810
1010
  "ctxHex": "29e3aa3282bafa200111bf7fb6a67dbf12efdd47720165a58f5e9e99170c3b23",
811
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
812
- "signatureHex": "65a2aa54501c53d89358172bdebb34ae34ab4478fa3b556d9ef983254ae549524df931de25b6d0c9662ef48991f6b77040c90d206efaebdeded0c5abeb09e508",
1011
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
1012
+ "signatureHex": "51b27f3152ac6e2b4b408126ba350966e452b1ae3c4063b9b7935cc72f4e2573544609181c5d3d06134f090f43a2745cc534dbea5f474d5f5084eaea4ccc650c",
813
1013
  "recordLength": 196,
814
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980029e3aa3282bafa200111bf7fb6a67dbf12efdd47720165a58f5e9e99170c3b237ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875165a2aa54501c53d89358172bdebb34ae34ab4478fa3b556d9ef983254ae549524df931de25b6d0c9662ef48991f6b77040c90d206efaebdeded0c5abeb09e508"
1014
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade980029e3aa3282bafa200111bf7fb6a67dbf12efdd47720165a58f5e9e99170c3b237ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed7875151b27f3152ac6e2b4b408126ba350966e452b1ae3c4063b9b7935cc72f4e2573544609181c5d3d06134f090f43a2745cc534dbea5f474d5f5084eaea4ccc650c"
815
1015
  },
816
1016
  {
817
1017
  "id": "params-no-timescale",
@@ -821,7 +1021,6 @@
821
1021
  "S": "198.51.100.7",
822
1022
  "G": "232.10.20.30",
823
1023
  "port": 5004,
824
- "manifestPort": 5005,
825
1024
  "streamId": 2864434397
826
1025
  },
827
1026
  "ctxInputs": {
@@ -834,13 +1033,15 @@
834
1033
  ],
835
1034
  "params": {
836
1035
  "codec": "avc1.640028",
837
- "fec": {
838
- "algorithm": "raptorq",
839
- "sourceSymbols": 32,
840
- "repairSymbols": 16,
841
- "symbolSize": 1312,
842
- "interleaveDepthMs": 133
843
- }
1036
+ "fec": [
1037
+ {
1038
+ "scheme": "raptorq",
1039
+ "sourceSymbols": 32,
1040
+ "repairSymbols": 16,
1041
+ "symbolSize": 1312,
1042
+ "interleaveDepthMs": 133
1043
+ }
1044
+ ]
844
1045
  }
845
1046
  },
846
1047
  "header": {
@@ -866,10 +1067,10 @@
866
1067
  ],
867
1068
  "paramsHashHex": "2fc23df98e04eb9b9249ac28ec700907260f32aaeda7826a2457dab06673e0e9",
868
1069
  "ctxHex": "2e9a283a1e1f3c179ab21db7de03a7da571260b3cfe4059994df9d6e7b30795d",
869
- "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138d",
870
- "signatureHex": "173aeb5c385853cf9f332865a2c6ac353b91e586b8aebb5e26b18e98502153a7f7ad1a3d1711bfe25285e2fa53432788ab6f4354ef07c5250f32e03fef44ce08",
1070
+ "signedMessagePrefixHex": "6d636173742d6d616e69666573742d763200aabbccddc6336407e80a141e138c",
1071
+ "signatureHex": "d0eec075b5e6d70fd028d95570360178bb45077e7dae837f9d034df7b60866ccbf73262bbab3585d8334338cb8e955a380fca0ea8390f4bde258400d2021cf00",
871
1072
  "recordLength": 196,
872
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade98002e9a283a1e1f3c179ab21db7de03a7da571260b3cfe4059994df9d6e7b30795d7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751173aeb5c385853cf9f332865a2c6ac353b91e586b8aebb5e26b18e98502153a7f7ad1a3d1711bfe25285e2fa53432788ab6f4354ef07c5250f32e03fef44ce08"
1073
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade98002e9a283a1e1f3c179ab21db7de03a7da571260b3cfe4059994df9d6e7b30795d7ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751d0eec075b5e6d70fd028d95570360178bb45077e7dae837f9d034df7b60866ccbf73262bbab3585d8334338cb8e955a380fca0ea8390f4bde258400d2021cf00"
873
1074
  }
874
1075
  ],
875
1076
  "recovered": {
@@ -880,7 +1081,6 @@
880
1081
  "S": "198.51.100.7",
881
1082
  "G": "232.10.20.30",
882
1083
  "port": 5004,
883
- "manifestPort": 5005,
884
1084
  "streamId": 2864434397
885
1085
  },
886
1086
  "recoveredPayloadHex": "00112233445566778899aabbccddeeff",
@@ -901,7 +1101,6 @@
901
1101
  "S": "198.51.100.7",
902
1102
  "G": "232.10.20.30",
903
1103
  "port": 5004,
904
- "manifestPort": 5005,
905
1104
  "streamId": 2864434397
906
1105
  },
907
1106
  "receiver": {
@@ -921,7 +1120,7 @@
921
1120
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
922
1121
  "budgetTokens": 64
923
1122
  },
924
- "recordHex": "4d484d310000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751cf2ae5daaa440ffc31f19126c3b4138adf0287bf4ab53c8b1a210787e65837fe81c999bfe8f6f232b23b033d49770b55b4c103636686e4c1ab6698d84b980401"
1123
+ "recordHex": "4d484d310000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751dee456881db82a7c73b1c259cff8fbdb27846cdf31a73334c977c8b65b73efbbecf18332fda6407bd477707ad0b3e28bcea44499740a898c1fb8e145b796a205"
925
1124
  },
926
1125
  {
927
1126
  "id": "length-short",
@@ -932,7 +1131,6 @@
932
1131
  "S": "198.51.100.7",
933
1132
  "G": "232.10.20.30",
934
1133
  "port": 5004,
935
- "manifestPort": 5005,
936
1134
  "streamId": 2864434397
937
1135
  },
938
1136
  "receiver": {
@@ -952,7 +1150,7 @@
952
1150
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
953
1151
  "budgetTokens": 64
954
1152
  },
955
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000001006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af1921488ee2dcc0f10cebe35016e8600b9950b8f279b865d74f551ea2f8c945ecc538f917750ff886748cf3b2ba021cb5bd6e9a3ff4268b24934124cc1b21db6b14e0a"
1153
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000001006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214918d6f0444d816c21bbba1e71ae3cdf79a893e6467b0c6444eca24002b57c11483c7e82834b75421dd866bad7783eacb569f75004eb3840acb982a2b00689c0b"
956
1154
  },
957
1155
  {
958
1156
  "id": "length-long",
@@ -963,7 +1161,6 @@
963
1161
  "S": "198.51.100.7",
964
1162
  "G": "232.10.20.30",
965
1163
  "port": 5004,
966
- "manifestPort": 5005,
967
1164
  "streamId": 2864434397
968
1165
  },
969
1166
  "receiver": {
@@ -983,7 +1180,7 @@
983
1180
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
984
1181
  "budgetTokens": 64
985
1182
  },
986
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8002601006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751209f13d91d053434a2e90007b7d2aacd9c7b84ab85e4a8c237e08522f7ccd7f408af7a82c7891f87dae8cc58fe8c7ea703ef0940a6f7e1acfda8b2a991b7b60a"
1183
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8002601006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20697ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787511f469d9a2ebdd2bdb3cccd4488ed059d149c55c25c37c864279e2da6b79a53e3f613136abef169835bd35801230b6aa5bbca7b77502bfeb2a8f4b3e88ee75f02"
987
1184
  },
988
1185
  {
989
1186
  "id": "length-misaligned",
@@ -994,7 +1191,6 @@
994
1191
  "S": "198.51.100.7",
995
1192
  "G": "232.10.20.30",
996
1193
  "port": 5004,
997
- "manifestPort": 5005,
998
1194
  "streamId": 2864434397
999
1195
  },
1000
1196
  "receiver": {
@@ -1014,7 +1210,7 @@
1014
1210
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1015
1211
  "budgetTokens": 64
1016
1212
  },
1017
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d8"
1213
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f830623"
1018
1214
  },
1019
1215
  {
1020
1216
  "id": "count",
@@ -1025,7 +1221,6 @@
1025
1221
  "S": "198.51.100.7",
1026
1222
  "G": "232.10.20.30",
1027
1223
  "port": 5004,
1028
- "manifestPort": 5005,
1029
1224
  "streamId": 2864434397
1030
1225
  },
1031
1226
  "receiver": {
@@ -1045,7 +1240,7 @@
1045
1240
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1046
1241
  "budgetTokens": 64
1047
1242
  },
1048
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000301006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751553bea95355cb3d84b6372a74e32b430fae3debc18814fb12163183d1a8a47d8c344736b5acd2ee63c4d752df31b5b9607a4fc39cbf0c7ad11dd83e703e8e404"
1243
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000301006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787512a843a88cf3f29bc7b20f91af88b111a3adeedb147bb51a051d725157be92e86b58f2ee6f9ed569f0ea30c5542fd56f5056682eae644ccf234b05fe841645400"
1049
1244
  },
1050
1245
  {
1051
1246
  "id": "hash-alg-not-suite-id",
@@ -1056,7 +1251,6 @@
1056
1251
  "S": "198.51.100.7",
1057
1252
  "G": "232.10.20.30",
1058
1253
  "port": 5004,
1059
- "manifestPort": 5005,
1060
1254
  "streamId": 2864434397
1061
1255
  },
1062
1256
  "receiver": {
@@ -1076,7 +1270,7 @@
1076
1270
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1077
1271
  "budgetTokens": 64
1078
1272
  },
1079
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000240006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b1d413bca7b65514fe5bf4dc6b20e6dd8e4c6be494c17acfcc509f6a620c9f88fdafc8d02060febba5ed2ee5bfa43678f41111340b7957932fc44eca96f1b905"
1273
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000240006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787515c9c5f3e968df0de705aea94474bc96dc88dfb0a20baefa38e46bfbfeaae2149992f0945fdbe74e677b54fcde321d604ac3a143bcd0d2560b6dd33fbd818aa04"
1080
1274
  },
1081
1275
  {
1082
1276
  "id": "hash-alg-truncated-suite",
@@ -1087,7 +1281,6 @@
1087
1281
  "S": "198.51.100.7",
1088
1282
  "G": "232.10.20.30",
1089
1283
  "port": 5004,
1090
- "manifestPort": 5005,
1091
1284
  "streamId": 2864434397
1092
1285
  },
1093
1286
  "receiver": {
@@ -1107,7 +1300,7 @@
1107
1300
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1108
1301
  "budgetTokens": 64
1109
1302
  },
1110
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000202006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787511336db5372ecd0f399212dc151afecfc37a0ca276c410afe8d9996bca9e0604b2ec2e9289e5a76e78a8e2cb9b849d0ce832bf31b910780e0c6701a726fe45e08"
1303
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000202006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787517174355d555a8b555e99c0bb56a2c45e6476ea0fb8f66faaef069f7983a048b674f4cd6bad33129599031541eac1fff3dc539a98a3c1b864548e6fde493f5103"
1111
1304
  },
1112
1305
  {
1113
1306
  "id": "kid-unknown",
@@ -1118,7 +1311,6 @@
1118
1311
  "S": "198.51.100.7",
1119
1312
  "G": "232.10.20.30",
1120
1313
  "port": 5004,
1121
- "manifestPort": 5005,
1122
1314
  "streamId": 2864434397
1123
1315
  },
1124
1316
  "receiver": {
@@ -1138,7 +1330,7 @@
1138
1330
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1139
1331
  "budgetTokens": 64
1140
1332
  },
1141
- "recordHex": "4d484d320000000900000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787511c26a36bd0a6a2a39a876b1cc41e7de9a30ba385969cc11ad6627d1fcdc8f3742cade48ab3f6f8635a68ea8a17f706bf3e9a2d699824ced9b40773631a522906"
1333
+ "recordHex": "4d484d320000000900000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787515232a8f86d3734a5f7c119ecbb977cba0787bc5c6bb0754ddd08cc13ee0587cc8cc172f0acc1c1e23aaa807202ed4f02fe1dba30a128deedb6f52515cd401c02"
1142
1334
  },
1143
1335
  {
1144
1336
  "id": "epoch-outside-kid-range",
@@ -1149,7 +1341,6 @@
1149
1341
  "S": "198.51.100.7",
1150
1342
  "G": "232.10.20.30",
1151
1343
  "port": 5004,
1152
- "manifestPort": 5005,
1153
1344
  "streamId": 2864434397
1154
1345
  },
1155
1346
  "receiver": {
@@ -1174,7 +1365,7 @@
1174
1365
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1175
1366
  "budgetTokens": 64
1176
1367
  },
1177
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1368
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1178
1369
  },
1179
1370
  {
1180
1371
  "id": "epoch-below-min-epoch",
@@ -1185,7 +1376,6 @@
1185
1376
  "S": "198.51.100.7",
1186
1377
  "G": "232.10.20.30",
1187
1378
  "port": 5004,
1188
- "manifestPort": 5005,
1189
1379
  "streamId": 2864434397
1190
1380
  },
1191
1381
  "receiver": {
@@ -1205,7 +1395,7 @@
1205
1395
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1206
1396
  "budgetTokens": 64
1207
1397
  },
1208
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1398
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1209
1399
  },
1210
1400
  {
1211
1401
  "id": "mseq-floor",
@@ -1216,7 +1406,6 @@
1216
1406
  "S": "198.51.100.7",
1217
1407
  "G": "232.10.20.30",
1218
1408
  "port": 5004,
1219
- "manifestPort": 5005,
1220
1409
  "streamId": 2864434397
1221
1410
  },
1222
1411
  "receiver": {
@@ -1241,7 +1430,7 @@
1241
1430
  "mseq": 100
1242
1431
  }
1243
1432
  },
1244
- "recordHex": "4d484d320000000100000011000000000000002400000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751d95fc9f36aa2d1c7a8e38a9e3c7e8cf78c7ece6333fabb9b947d549b6e2ef474589ef76b849bca410b350b3916e61824643f99af9f43cf1300e282cc66654a01"
1433
+ "recordHex": "4d484d320000000100000011000000000000002400000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787510331ae58c65cc2f4661d1462e147690f9e6711062e5c0e56f17c1cb45c2e979be73fd70e160f5f7f78991587493864af21695d89463e13bb0749695009e23c0f"
1245
1434
  },
1246
1435
  {
1247
1436
  "id": "sent-behind",
@@ -1252,7 +1441,6 @@
1252
1441
  "S": "198.51.100.7",
1253
1442
  "G": "232.10.20.30",
1254
1443
  "port": 5004,
1255
- "manifestPort": 5005,
1256
1444
  "streamId": 2864434397
1257
1445
  },
1258
1446
  "receiver": {
@@ -1272,7 +1460,7 @@
1272
1460
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1273
1461
  "budgetTokens": 64
1274
1462
  },
1275
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1463
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1276
1464
  },
1277
1465
  {
1278
1466
  "id": "sent-ahead",
@@ -1283,7 +1471,6 @@
1283
1471
  "S": "198.51.100.7",
1284
1472
  "G": "232.10.20.30",
1285
1473
  "port": 5004,
1286
- "manifestPort": 5005,
1287
1474
  "streamId": 2864434397
1288
1475
  },
1289
1476
  "receiver": {
@@ -1303,7 +1490,7 @@
1303
1490
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1304
1491
  "budgetTokens": 64
1305
1492
  },
1306
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1493
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1307
1494
  },
1308
1495
  {
1309
1496
  "id": "ctx-mismatch",
@@ -1314,7 +1501,6 @@
1314
1501
  "S": "198.51.100.7",
1315
1502
  "G": "232.10.20.30",
1316
1503
  "port": 5004,
1317
- "manifestPort": 5005,
1318
1504
  "streamId": 2864434397
1319
1505
  },
1320
1506
  "receiver": {
@@ -1334,7 +1520,7 @@
1334
1520
  "catalogCtxHex": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
1335
1521
  "budgetTokens": 64
1336
1522
  },
1337
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1523
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1338
1524
  },
1339
1525
  {
1340
1526
  "id": "budget-empty",
@@ -1345,7 +1531,6 @@
1345
1531
  "S": "198.51.100.7",
1346
1532
  "G": "232.10.20.30",
1347
1533
  "port": 5004,
1348
- "manifestPort": 5005,
1349
1534
  "streamId": 2864434397
1350
1535
  },
1351
1536
  "receiver": {
@@ -1365,7 +1550,7 @@
1365
1550
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1366
1551
  "budgetTokens": 0
1367
1552
  },
1368
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1553
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1369
1554
  },
1370
1555
  {
1371
1556
  "id": "signature",
@@ -1376,7 +1561,6 @@
1376
1561
  "S": "198.51.100.7",
1377
1562
  "G": "232.10.20.30",
1378
1563
  "port": 5004,
1379
- "manifestPort": 5005,
1380
1564
  "streamId": 2864434397
1381
1565
  },
1382
1566
  "receiver": {
@@ -1396,7 +1580,37 @@
1396
1580
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1397
1581
  "budgetTokens": 64
1398
1582
  },
1399
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d809"
1583
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230c"
1584
+ },
1585
+ {
1586
+ "id": "appendix-a-01-record",
1587
+ "step": "7.2.7 step 1",
1588
+ "reason": "signature",
1589
+ "isolated": true,
1590
+ "endpoint": {
1591
+ "S": "198.51.100.7",
1592
+ "G": "232.10.20.30",
1593
+ "port": 5004,
1594
+ "streamId": 2864434397
1595
+ },
1596
+ "receiver": {
1597
+ "keys": [
1598
+ {
1599
+ "kid": 1,
1600
+ "publicKeyHex": "03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8",
1601
+ "firstEpoch": 1
1602
+ }
1603
+ ],
1604
+ "minEpoch": 17,
1605
+ "acceptedHashAlgs": [
1606
+ 1
1607
+ ],
1608
+ "nowUnixMs": 1792972800000,
1609
+ "maxAuthDelayMs": 200,
1610
+ "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1611
+ "budgetTokens": 64
1612
+ },
1613
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1400
1614
  }
1401
1615
  ],
1402
1616
  "boundaries": [
@@ -1406,7 +1620,6 @@
1406
1620
  "S": "198.51.100.7",
1407
1621
  "G": "232.10.20.30",
1408
1622
  "port": 5004,
1409
- "manifestPort": 5005,
1410
1623
  "streamId": 2864434397
1411
1624
  },
1412
1625
  "receiver": {
@@ -1426,7 +1639,7 @@
1426
1639
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1427
1640
  "budgetTokens": 64
1428
1641
  },
1429
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1642
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1430
1643
  },
1431
1644
  {
1432
1645
  "id": "sent-ahead-exact",
@@ -1434,7 +1647,6 @@
1434
1647
  "S": "198.51.100.7",
1435
1648
  "G": "232.10.20.30",
1436
1649
  "port": 5004,
1437
- "manifestPort": 5005,
1438
1650
  "streamId": 2864434397
1439
1651
  },
1440
1652
  "receiver": {
@@ -1454,7 +1666,7 @@
1454
1666
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1455
1667
  "budgetTokens": 64
1456
1668
  },
1457
- "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519d5154a8e6beb7c472a09fa1e1d3d426b6042519343728835ed5c9416e615aad7ad335c0f0403aa8985e6b6979e5918d3d28e787ca29d55447930777c380d808"
1669
+ "recordHex": "4d484d320000000100000011000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b7bffcf63fc764c87438b55e521dccaf5e59177ae245aafe47fc1e15b77867958e07f6ef2fa45c1162735ab5e2c1a942fe75cb6f8879f49d0b14a41f8306230d"
1458
1670
  },
1459
1671
  {
1460
1672
  "id": "mseq-floor-exact",
@@ -1462,7 +1674,6 @@
1462
1674
  "S": "198.51.100.7",
1463
1675
  "G": "232.10.20.30",
1464
1676
  "port": 5004,
1465
- "manifestPort": 5005,
1466
1677
  "streamId": 2864434397
1467
1678
  },
1468
1679
  "receiver": {
@@ -1487,7 +1698,7 @@
1487
1698
  "mseq": 100
1488
1699
  }
1489
1700
  },
1490
- "recordHex": "4d484d320000000100000011000000000000002500000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751ece7fa53df652b837e326e9725065e0361bb08e3a7c5285f902953534db2f0e0e38c7311ca20e2cc566bb34344cf437fa59984cef05b52c7481fa98ab38e7e02"
1701
+ "recordHex": "4d484d320000000100000011000000000000002500000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751dfeddcf73aa307823668dc6566ef26d9c7d6535817c704670e00216ccd9fa00fed2d33728f01e2a5db52c8027a23c87dc5688a6fa702dcae6549ab52c6734705"
1491
1702
  },
1492
1703
  {
1493
1704
  "id": "epoch-kid-range-top",
@@ -1495,7 +1706,6 @@
1495
1706
  "S": "198.51.100.7",
1496
1707
  "G": "232.10.20.30",
1497
1708
  "port": 5004,
1498
- "manifestPort": 5005,
1499
1709
  "streamId": 2864434397
1500
1710
  },
1501
1711
  "receiver": {
@@ -1520,7 +1730,236 @@
1520
1730
  "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1521
1731
  "budgetTokens": 64
1522
1732
  },
1523
- "recordHex": "4d484d320000000100000010000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787516dd7785b67d1e180ad3890a92f0c0ad69d77aa111797e31acadfad903e7bff586c09385a7b983167a01dec27bfd7e8b2b0fb5855f2279d34a9836dae80f87e0b"
1733
+ "recordHex": "4d484d320000000100000010000000000000000100000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed78751b618b5b64aded9d72fa5005841c6a6689287c04a11a668a4bb6541256c32670801fcd96e9c95aaf61689f3a2d28c85e51c010eae14a1edf702349132690a170a"
1734
+ },
1735
+ {
1736
+ "id": "mseq-floor-below-window",
1737
+ "endpoint": {
1738
+ "S": "198.51.100.7",
1739
+ "G": "232.10.20.30",
1740
+ "port": 5004,
1741
+ "streamId": 2864434397
1742
+ },
1743
+ "receiver": {
1744
+ "keys": [
1745
+ {
1746
+ "kid": 1,
1747
+ "publicKeyHex": "03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8",
1748
+ "firstEpoch": 1
1749
+ }
1750
+ ],
1751
+ "minEpoch": 17,
1752
+ "acceptedHashAlgs": [
1753
+ 1
1754
+ ],
1755
+ "nowUnixMs": 1792972800000,
1756
+ "maxAuthDelayMs": 200,
1757
+ "catalogCtxHex": "fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af19214",
1758
+ "budgetTokens": 64,
1759
+ "highestMseq": {
1760
+ "kid": 1,
1761
+ "epoch": 17,
1762
+ "mseq": 10
1763
+ }
1764
+ },
1765
+ "recordHex": "4d484d320000000100000011000000000000000000000000000003e8000201006ade9800fe68177dd329ee6fdd668cb43ebdeb6d2e4c2ae351fd25050ab68dd98af192147ead4d8be7d24e08d7075bbac8fbe7779ab3b8f1c47d3f8be4d2a514f2ec20696f7d9007e81b73c9f54aff8c2f66bd6e8956bfa7e001789b986c328f9ed787519e3389a1a6d0c016a64cad7f09dd29ab6a17bde92a1220c6fbb6b466382307f0b0c3af1d04bb1c77e4208b4d51b7ee98f71a1f901806668b8b12b79653b0de09"
1766
+ }
1767
+ ],
1768
+ "paramsRejections": [
1769
+ {
1770
+ "id": "scheme-none",
1771
+ "note": "a fec instance whose scheme is \"none\" is rejected",
1772
+ "params": {
1773
+ "codec": "avc1.640028",
1774
+ "timescale": 90000,
1775
+ "groupDurationTicks": 3000,
1776
+ "fec": [
1777
+ {
1778
+ "scheme": "none",
1779
+ "sourceSymbols": 32,
1780
+ "repairSymbols": 16,
1781
+ "symbolSize": 1312,
1782
+ "interleaveDepthMs": 133
1783
+ }
1784
+ ]
1785
+ }
1786
+ }
1787
+ ],
1788
+ "catalogResolutions": [
1789
+ {
1790
+ "id": "repair-only-via-source",
1791
+ "note": "the repair track names its source track",
1792
+ "catalog": {
1793
+ "version": 1,
1794
+ "streamingFormat": "mmtp",
1795
+ "tracks": [
1796
+ {
1797
+ "name": "video",
1798
+ "packaging": "mmtp",
1799
+ "codec": "avc1.640028",
1800
+ "mmtpMode": "mfu",
1801
+ "timescale": 90000,
1802
+ "groupDurationTicks": 3000,
1803
+ "fec": [
1804
+ {
1805
+ "instanceId": 1,
1806
+ "scope": "keyframe",
1807
+ "scheme": "raptorq",
1808
+ "blockProfile": "iso-ssbg1-v1",
1809
+ "sourceSymbols": 256,
1810
+ "repairSymbols": 32,
1811
+ "symbolSize": 1312,
1812
+ "interleaveDepthMs": 1000,
1813
+ "repairTrack": "video/keyframe-repair"
1814
+ },
1815
+ {
1816
+ "instanceId": 0,
1817
+ "scheme": "raptorq",
1818
+ "blockProfile": "iso-ssbg1-v1",
1819
+ "sourceSymbols": 32,
1820
+ "repairSymbols": 16,
1821
+ "symbolSize": 1312,
1822
+ "interleaveDepthMs": 133,
1823
+ "reorderToleranceMs": 40,
1824
+ "repairTrack": "video/repair"
1825
+ }
1826
+ ]
1827
+ },
1828
+ {
1829
+ "name": "video/repair",
1830
+ "packaging": "fec-repair",
1831
+ "source": "video",
1832
+ "instanceId": 0,
1833
+ "priority": 240
1834
+ },
1835
+ {
1836
+ "name": "video/keyframe-repair",
1837
+ "packaging": "fec-repair",
1838
+ "source": "video",
1839
+ "instanceId": 1,
1840
+ "priority": 242
1841
+ }
1842
+ ]
1843
+ },
1844
+ "endpointTracks": [
1845
+ {
1846
+ "name": "video/keyframe-repair",
1847
+ "packetId": 9
1848
+ },
1849
+ {
1850
+ "name": "video/repair",
1851
+ "packetId": 12
1852
+ }
1853
+ ],
1854
+ "resolvedParams": {
1855
+ "codec": "avc1.640028",
1856
+ "timescale": 90000,
1857
+ "groupDurationTicks": 3000,
1858
+ "fec": [
1859
+ {
1860
+ "instanceId": 0,
1861
+ "scheme": "raptorq",
1862
+ "sourceSymbols": 32,
1863
+ "repairSymbols": 16,
1864
+ "symbolSize": 1312,
1865
+ "interleaveDepthMs": 133
1866
+ },
1867
+ {
1868
+ "instanceId": 1,
1869
+ "scheme": "raptorq",
1870
+ "sourceSymbols": 256,
1871
+ "repairSymbols": 32,
1872
+ "symbolSize": 1312,
1873
+ "interleaveDepthMs": 1000
1874
+ }
1875
+ ]
1876
+ },
1877
+ "paramsHashHex": "00e09b054303a285e608632ebc5c8859fee9558bdc2aaa02724920037853b90e"
1878
+ },
1879
+ {
1880
+ "id": "repair-only-via-instance-repair-track",
1881
+ "note": "the repair track carries no source; the instance 1 (keyframe overlay) repairTrack names it",
1882
+ "catalog": {
1883
+ "version": 1,
1884
+ "streamingFormat": "mmtp",
1885
+ "tracks": [
1886
+ {
1887
+ "name": "video",
1888
+ "packaging": "mmtp",
1889
+ "codec": "avc1.640028",
1890
+ "mmtpMode": "mfu",
1891
+ "timescale": 90000,
1892
+ "groupDurationTicks": 3000,
1893
+ "fec": [
1894
+ {
1895
+ "instanceId": 1,
1896
+ "scope": "keyframe",
1897
+ "scheme": "raptorq",
1898
+ "blockProfile": "iso-ssbg1-v1",
1899
+ "sourceSymbols": 256,
1900
+ "repairSymbols": 32,
1901
+ "symbolSize": 1312,
1902
+ "interleaveDepthMs": 1000,
1903
+ "repairTrack": "video/keyframe-repair"
1904
+ },
1905
+ {
1906
+ "instanceId": 0,
1907
+ "scheme": "raptorq",
1908
+ "blockProfile": "iso-ssbg1-v1",
1909
+ "sourceSymbols": 32,
1910
+ "repairSymbols": 16,
1911
+ "symbolSize": 1312,
1912
+ "interleaveDepthMs": 133,
1913
+ "reorderToleranceMs": 40,
1914
+ "repairTrack": "video/repair"
1915
+ }
1916
+ ]
1917
+ },
1918
+ {
1919
+ "name": "video/repair",
1920
+ "packaging": "fec-repair",
1921
+ "source": "video",
1922
+ "instanceId": 0,
1923
+ "priority": 240
1924
+ },
1925
+ {
1926
+ "name": "video/keyframe-repair",
1927
+ "packaging": "fec-repair",
1928
+ "instanceId": 1,
1929
+ "priority": 242
1930
+ }
1931
+ ]
1932
+ },
1933
+ "endpointTracks": [
1934
+ {
1935
+ "name": "video/keyframe-repair",
1936
+ "packetId": 9
1937
+ }
1938
+ ],
1939
+ "resolvedParams": {
1940
+ "codec": "avc1.640028",
1941
+ "timescale": 90000,
1942
+ "groupDurationTicks": 3000,
1943
+ "fec": [
1944
+ {
1945
+ "instanceId": 0,
1946
+ "scheme": "raptorq",
1947
+ "sourceSymbols": 32,
1948
+ "repairSymbols": 16,
1949
+ "symbolSize": 1312,
1950
+ "interleaveDepthMs": 133
1951
+ },
1952
+ {
1953
+ "instanceId": 1,
1954
+ "scheme": "raptorq",
1955
+ "sourceSymbols": 256,
1956
+ "repairSymbols": 32,
1957
+ "symbolSize": 1312,
1958
+ "interleaveDepthMs": 1000
1959
+ }
1960
+ ]
1961
+ },
1962
+ "paramsHashHex": "00e09b054303a285e608632ebc5c8859fee9558bdc2aaa02724920037853b90e"
1524
1963
  }
1525
1964
  ]
1526
1965
  }