@@ -1023,7 +1023,7 @@ SUBSCRIBE Message {
10231023 [EndGroup (i),
10241024 EndObject (i)],
10251025 Number of Parameters (i),
1026- Track Request Parameters (..) ...
1026+ Subscribe Parameters (..) ...
10271027}
10281028~~~
10291029{: # moq-transport-subscribe-format title="MOQT SUBSCRIBE Message"}
@@ -1061,8 +1061,7 @@ requested. Only present for "AbsoluteStart" and "AbsoluteRange" filter types.
10611061* EndObject: The end Object ID, plus 1. A value of 0 means the entire group is
10621062requested. Only present for the "AbsoluteRange" filter type.
10631063
1064- * Track Request Parameters: The parameters are defined in
1065- {{version-specific-params}}
1064+ * Subscribe Parameters: The parameters are defined in {{version-specific-params}}.
10661065
10671066On successful subscription, the publisher MUST reply with a SUBSCRIBE_OK,
10681067allowing the subscriber to determine the start group/object when not explicitly
@@ -1098,7 +1097,7 @@ SUBSCRIBE_UPDATE Message {
10981097 EndGroup (i),
10991098 EndObject (i),
11001099 Number of Parameters (i),
1101- Track Request Parameters (..) ...
1100+ Subscribe Parameters (..) ...
11021101}
11031102~~~
11041103{: # moq-transport-subscribe-update-format title="MOQT SUBSCRIBE_UPDATE Message"}
@@ -1117,8 +1116,7 @@ open-ended.
11171116* EndObject: The end Object ID, plus 1. A value of 0 means the entire group is
11181117requested.
11191118
1120- * Track Request Parameters: The parameters are defined in
1121- {{version-specific-params}}
1119+ * Subscribe Parameters: The parameters are defined in {{version-specific-params}}.
11221120
11231121# # UNSUBSCRIBE {#message-unsubscribe}
11241122
@@ -1510,145 +1508,6 @@ OBJECT_STREAM {
15101508~~~
15111509
15121510
1513- # # SUBSCRIBE {#message-subscribe-req}
1514-
1515- # ## Filter Types {#sub-filter}
1516-
1517- The subscriber specifies a filter on the subscription to allow
1518- the publisher to identify which objects need to be delivered.
1519-
1520- There are 4 types of filters :
1521-
1522- Latest Group (0x1) : Specifies an open-ended subscription with objects
1523- from the beginning of the current group.
1524-
1525- Latest Object (0x2) : Specifies an open-ended subscription beginning from
1526- the current object of the current group.
1527-
1528- AbsoluteStart (0x3) : Specifies an open-ended subscription beginning
1529- from the object identified in the StartGroup and StartObject fields.
1530-
1531- AbsoluteRange (0x4) : Specifies a closed subscription starting at StartObject
1532- in StartGroup and ending at EndObject in EndGroup. The start and end of the
1533- range are inclusive. EndGroup and EndObject MUST specify the same or a later
1534- object than StartGroup and StartObject.
1535-
1536- A filter type other than the above MUST be treated as error.
1537-
1538-
1539- # ## SUBSCRIBE Format
1540-
1541- A subscriber issues a SUBSCRIBE to a publisher to request objects from a track.
1542-
1543- The format of SUBSCRIBE is as follows :
1544-
1545- ~~~
1546- SUBSCRIBE Message {
1547- Subscribe ID (i),
1548- Track Alias (i),
1549- Track Namespace (b),
1550- Track Name (b),
1551- Filter Type (i),
1552- [StartGroup (i),
1553- StartObject (i)],
1554- [EndGroup (i),
1555- EndObject (i)],
1556- Number of Parameters (i),
1557- Subscribe Parameters (..) ...
1558- }
1559- ~~~
1560- {: # moq-transport-subscribe-format title="MOQT SUBSCRIBE Message"}
1561-
1562- * Subscribe ID: The subscription identifier that is unique within the session.
1563- ` Subscribe ID` is a monotonically increasing variable length integer which
1564- MUST not be reused within a session. `Subscribe ID` is used by subscribers and
1565- the publishers to identify a given subscription. Subscribers specify the
1566- ` Subscribe ID` and it is included in the corresponding SUBSCRIBE_OK or
1567- SUBSCRIBE_ERROR messages.
1568-
1569- * Track Alias: A session specific identifier for the track.
1570- Messages that reference a track, such as OBJECT ({{message-object}}),
1571- reference this Track Alias instead of the Track Name and Track Namespace to
1572- reduce overhead. If the Track Alias is already in use, the publisher MUST
1573- close the session with a Duplicate Track Alias error ({{session-termination}}).
1574-
1575- * Track Namespace: Identifies the namespace of the track as defined in
1576- ({{track-name}}).
1577-
1578- * Track Name: Identifies the track name as defined in ({{track-name}}).
1579-
1580- * Filter Type: Identifies the type of filter, which also indicates whether
1581- the StartGroup/StartObject and EndGroup/EndObject fields will be present.
1582- See ({{sub-filter}}).
1583-
1584- * StartGroup: The start Group ID. Only present for "AbsoluteStart" and
1585- " AbsoluteRange" filter types.
1586-
1587- * StartObject: The start Object ID, plus 1. A value of 0 means the entire group is
1588- requested. Only present for "AbsoluteStart" and "AbsoluteRange" filter types.
1589-
1590- * EndGroup: The end Group ID. Only present for the "AbsoluteRange" filter type.
1591-
1592- * EndObject: The end Object ID, plus 1. A value of 0 means the entire group is
1593- requested. Only present for the "AbsoluteRange" filter type.
1594-
1595- * Subscribe Parameters: The parameters are defined in {{version-specific-params}}.
1596-
1597- On successful subscription, the publisher MUST reply with a SUBSCRIBE_OK,
1598- allowing the subscriber to determine the start group/object when not explicitly
1599- specified and the publisher SHOULD start delivering objects.
1600-
1601- If a publisher cannot satisfy the requested start or end for the subscription it
1602- MAY send a SUBSCRIBE_ERROR with code 'Invalid Range'. A publisher MUST NOT send
1603- objects from outside the requested start and end.
1604-
1605- # # SUBSCRIBE_UPDATE {#message-subscribe-update-req}
1606-
1607- A subscriber issues a SUBSCRIBE_UPDATE to a publisher to request a change to
1608- a prior subscription. Subscriptions can only become more narrower, not wider,
1609- because an attempt to widen a subscription could fail. If Objects before the
1610- start or after the end of the current subscription are needed, a separate
1611- subscription can be made. The start Object MUST NOT decrease and when it increases,
1612- there is no guarantee that a publisher will not have already sent Objects before
1613- the new start Object. The end Object MUST NOT increase and when it decreases,
1614- there is no guarantee that a publisher will not have already sent Objects after
1615- the new end Object.
1616-
1617- Unlike a new subscription, SUBSCRIBE_UPDATE can not cause an Object to be
1618- delivered multiple times. Like SUBSCRIBE, EndGroup and EndObject MUST specify the
1619- same or a later object than StartGroup and StartObject.
1620-
1621- The format of SUBSCRIBE_UPDATE is as follows :
1622-
1623- ~~~
1624- SUBSCRIBE_UPDATE Message {
1625- Subscribe ID (i),
1626- StartGroup (i),
1627- StartObject (i),
1628- EndGroup (i),
1629- EndObject (i),
1630- Number of Parameters (i),
1631- Subscribe Parameters (..) ...
1632- }
1633- ~~~
1634- {: # moq-transport-subscribe-update-format title="MOQT SUBSCRIBE_UPDATE Message"}
1635-
1636- * Subscribe ID: The subscription identifier that is unique within the session.
1637- This MUST match an existing Subscribe ID.
1638-
1639- * StartGroup: The start Group ID.
1640-
1641- * StartObject: The start Object ID, plus 1. A value of 0 means the entire group
1642- is requested.
1643-
1644- * EndGroup: The end Group ID, plus 1. A value of 0 means the subscription is
1645- open-ended.
1646-
1647- * EndObject: The end Object ID, plus 1. A value of 0 means the entire group is
1648- requested.
1649-
1650- * Subscribe Parameters: The parameters are defined in {{version-specific-params}}.
1651-
16521511# # SUBSCRIBE_OK {#message-subscribe-ok}
16531512
16541513A publisher sends a SUBSCRIBE_OK control message for successful
0 commit comments