@@ -400,8 +400,8 @@ stream and are sent on a single stream whenever possible. A Group is delivered
400400using at least as many streams as there are Subgroups,
401401typically with a one-to-one mapping between Subgroups and streams.
402402
403- When a Track 's forwarding preference (see {{object-properties}}) is
404- " Datagram" , Objects are not sent in Subgroups and the
403+ When an Object 's forwarding preference (see {{object-properties}}) is
404+ " Datagram" , it is not sent in Subgroups and the
405405description in the remainder of this section does not apply.
406406
407407Streams offer in-order reliable delivery and the ability to cancel sending and
@@ -561,7 +561,7 @@ include:
5615619. The same Object is received more than once with different Payload or
562562 other immutable properties.
56356310. An Object is received with a different Forwarding Preference than previously
564- observed from the same Track .
564+ observed.
565565
566566The above list of conditions is not considered exhaustive.
567567
@@ -1209,8 +1209,7 @@ MOQT maintains priorities between different schedulable objects.
12091209A schedulable object in MOQT is either :
12101210
121112111. The first or next Object in a Subgroup that is in response to a subscription.
1212- 2. An Object in response to a subscription that belongs to a Track with
1213- delivery preference Datagram.
1212+ 2. An Object with forwarding preference Datagram.
121412133. An Object in response to a FETCH where that Object is the next
12151214 Object in the response.
12161215
@@ -1264,9 +1263,10 @@ the objects SHOULD be selected as follows:
12641263 decide the one that is scheduled to be sent first.
126512643. If two objects in response to the same request have the same subscriber
12661265 and publisher priority and belong to the same group of the same track, the
1267- one with **the lowest Subgroup ID** (for tracks with delivery preference
1268- Subgroup), or **the lowest Object ID** (for tracks with delivery preference
1269- Datagram) is scheduled to be sent first.
1266+ one with **the lowest Subgroup ID** (for objects with forwarding preference
1267+ Subgroup), or **the lowest Object ID** (for objects with forwarding preference
1268+ Datagram) is scheduled to be sent first. If the two objects have
1269+ different Forwarding Preferences the order is implementation dependent.
12701270
12711271The definition of "scheduled to be sent first" in the algorithm is implementation
12721272dependent and is constrained by the prioritization interface of the underlying
@@ -2588,7 +2588,7 @@ PUBLISH_DONE Message {
25882588opened for this subscription. This helps the subscriber know if it has received
25892589all of the data published in this subscription by comparing the number of
25902590streams received. The subscriber can immediately remove all subscription state
2591- once the same number of streams have been processed. If the track had
2591+ once the same number of streams have been processed. If the track had only Objects with
25922592Forwarding Preference = Datagram, the publisher MUST set Stream Count to 0. If
25932593the publisher is unable to set Stream Count to the exact number of streams
25942594opened for the subscription, it MUST set Stream Count to 2^62 - 1. Subscribers
@@ -3076,9 +3076,8 @@ the datagram. See {{object-datagram}}.
30763076An endpoint that receives an unknown stream or datagram type MUST close the
30773077session.
30783078
3079- Every Track has a single 'Object Forwarding Preference' and the Original
3080- Publisher MUST NOT mix different forwarding preferences within a single track
3081- (see {{malformed-tracks}}).
3079+ Every Object has a 'Object Forwarding Preference' and the Original Publisher
3080+ MAY mix different forwarding preference within a single track.
30823081
30833082# # Track Alias
30843083
@@ -3113,13 +3112,10 @@ A canonical MoQ Object has the following information:
31133112the Object ({{priorities}}).
31143113
31153114* Object Forwarding Preference: An enumeration indicating how a publisher sends
3116- an object. The preferences are Subgroup and Datagram. Note that the Original
3117- Publisher determines the Forwarding Preference for the entire Track, and is a
3118- Track property that is implicitly signaled by the delivery of any Object using
3119- either Subgroups or Datagrams. Once the property is established for one Object
3120- of a Track, the same value MUST be used for all Objects of the Track.
3121- In a subscription, an Object MUST be sent according to its `Object Forwarding
3122- Preference`.
3115+ an object. The preferences are Subgroup and Datagram. `Object Forwarding
3116+ Preference` is a property of an individual Object and can vary among
3117+ Objects in the same Track. In a subscription, an Object MUST be sent
3118+ according to its `Object Forwarding Preference`.
31233119
31243120* Subgroup ID: The identifier of the Object's Subgroup (see {{model-subgroup}})
31253121 within the Group. This field is omitted if the `Object Forwarding Preference`
0 commit comments