**Session Date/Time:** 30 Mar 2023 04:00 # moq ## Summary The Media over QUIC (moq) working group met to discuss several draft proposals related to real-time media delivery, relay architectures, and transport protocols. Key topics included scenarios for unified ingest and distribution, layering and adaptation strategies for large fan-out scenarios, object model requirements, and the integration of transport-level prioritization. A presentation was also given on deadline-aware relay extensions. ## Key Discussion Points * **Scenarios Draft:** The scenarios draft aims to define requirements for interactive real-time use cases, including unified ingest and distribution, relay architectures, and authorization. Emphasis was placed on supporting diverse network conditions and client capabilities. * **Layering and Adaptation:** Discussion centered on the need for layering and adaptation strategies in large fan-out scenarios to enable scalable real-time media delivery. Expressing dependencies between layers and objects was highlighted as a key requirement. * **Object Model:** The working group discussed the object model and the properties that individual objects should have, including unique names, association with tracks and groups, and the ability to be cached and served individually by relays. Incremental delivery of objects (pipelining) was considered important. * **Transport Protocol Delta:** The focus was on building a unified media delivery protocol that can meet the requirements of both live streaming and interactive applications. A key debate revolved around tracks being tied to web transport sessions versus tracks that are independent data model. * **Prioritization and Bundling:** Discussion about prioritization focused on balancing flexibility for application-specific prioritization schemes with the ability to map to existing transport-level prioritization mechanisms. The concept of "bundles" as a prioritization domain was discussed, with differing views on whether it should be tied to transport sessions. * **Native QUIC vs. WebTransport:** A debate emerged regarding the need to support native QUIC in addition to WebTransport. Use cases for embedded devices and simplified implementations were cited as reasons for native QUIC support. Some raised concerns about increased complexity and discovery challenges. * **Deadline-Aware Relay Extensions:** A presentation introduced the concept of adding a "deadline" parameter to object headers to indicate the application's time sensitivity requirements. This could allow relays to make better decisions about scheduling and dropping overdue objects. ## Decisions and Action Items * The chairs will address the issue of users being unable to tag issues in the warp repository. * Authors to use the mailing list to discuss proposals or ideas. ## Next Steps * Authors to address use of mailing lists for proposals/ideas * Victor will work on including the bundle URL in a setup message, similar to WebTransport connect, to support native QUIC. * The group will explore sending catalog messages over a dedicated track with a separate draft for media-specific catalog formats. * Further discussion on the mailing list is needed to address concerns around bundling, prioritization, and the trade-offs between native QUIC and WebTransport. --- **Session Date/Time:** 31 Mar 2023 03:00 # moq ## Summary This meeting covered several key aspects of the moq protocol, including catalog vacation, architectural issues (track independence and version negotiation), framing adoption calls, use cases/requirements draft updates, and a demonstration of an open-source proof-of-concept implementation. The meeting included significant discussion on track independence and associated naming/grouping considerations. ## Key Discussion Points * **Catalog Vacation:** A proposal for catalogs for moq compliant streaming formats was presented. The discussion focused on decoupling the transport layer from the streaming format, the responsibilities of each layer, and how to address and serialize catalogs. Concerns were raised about how to pass changes to the web codec decoder config data when it happens in the middle of a stream. * **Architectural Issues:** * **Version Negotiation:** A simple handshake format similar to TLS was discussed for version negotiation. A suggestion was made to add a field for the streaming format to the handshake. There was concern about the potential latency introduced by an additional round trip. * **Track Independence:** A major debate ensued on whether tracks should be independent components of the data model or if groupings of tracks should be baked in. Several viewpoints were presented, covering naming conventions, prioritization domains, orchestration domains, authorization, and the potential for multiple levels of grouping. There was strong support for track independence and the separation of concerns regarding naming, prioritization and authorization. * **Framing Adoption Calls:** The chairs discussed the criteria for adopting drafts, emphasizing that drafts need not be complete but should represent a reasonable starting point for working group efforts. * **Use Cases/Requirements Draft Updates:** An update on the use cases and requirements draft was provided, including a timeline for adoption feedback and plans to merge content from the scenarios draft. The importance of generic requirements applicable to all media over QUIC drafts was highlighted. * **Open Source Demonstration:** A proof-of-concept implementation demonstrating ultra-low latency live streaming and live rewind was presented. It was built using web transport, web codecs and leveraged workers in the player. The implementation showed metrics about in flight request, dropping objects, and latency. The code was released as open source. ## Decisions and Action Items * **Version Negotiation:** The working group will proceed assuming the proposed version negotiation handshake will be used, and deal with any change requirements if they arise. * **Track Independence:** Tracks should be treated as independent components of the data model. Properties such as prioritization domain and orchestration domain should be handled separately from the track name. Colin to share a list of proposed properties with the note taker. * **Use Cases/Requirements Draft:** Ali volunteered to work on the terminology draft, potentially starting with a Google document and then moving to the IETF working group wiki. * **Interim Meeting:** The chairs will take the question of organizing an interim virtual meeting to the list. ## Next Steps * Chairs will start working on framing the Adoption call for the upcoming drafts. * Working group to provide feedback on adoption of the use cases/requirements draft by April 14th. * Spencer to merge content from the scenarios draft into the use cases/requirements draft. * Continue the discussion about prioritization schemes and relay behavior on the mailing list. * Explore the possibilities for the future use cases to leverage the new POC released from Jo.