moqtap_codec/draft18/mod.rs
1//! MoQT wire codec for draft-18.
2//!
3//! Key changes from draft-17:
4//! - `Required Request ID Delta` field removed from every request message
5//! - SUBSCRIBE_NAMESPACE renumbered to 0x50 and `subscribe_options` removed;
6//! FORWARD parameter moves to the new SUBSCRIBE_TRACKS (0x51) message
7//! - PUBLISH_OK collapsed into REQUEST_OK (0x07); REQUEST_OK gains a trailing
8//! Track Properties block
9//! - GOAWAY gains an optional `request_id` (present only on the control stream);
10//! may also be sent on individual request streams
11//! - REQUEST_ERROR adds REDIRECT (0x34) with a Redirect structure and
12//! UNSUPPORTED_EXTENSION (0x33)
13//! - DELIVERY_TIMEOUT renamed to OBJECT_DELIVERY_TIMEOUT (still type 0x02);
14//! new SUBGROUP_DELIVERY_TIMEOUT (0x06) and FILL_TIMEOUT (0x0A) parameters
15//! - New TRACK_NAMESPACE_PREFIX parameter (0x34) for REQUEST_UPDATE
16//! - PUBLISH_DONE status codes 0x5/0x6 swapped: 0x5 = TOO_FAR_BEHIND,
17//! 0x6 = EXPIRED
18//! - SUBGROUP_HEADER gains FIRST_OBJECT bit (0x40); type ranges expand to
19//! 0x10..0x1F, 0x30..0x3F, 0x50..0x5F, 0x70..0x7F
20//! - FETCH stream objects use delta-encoded Group ID and Object ID
21
22#[allow(missing_docs)]
23/// Data stream headers (subgroup, datagram, fetch, object).
24pub mod data_stream;
25#[allow(missing_docs)]
26/// Control message types with encode/decode.
27pub mod message;
28#[allow(missing_docs)]
29/// Object status values for draft-18.
30pub mod types;