**Session Date/Time:** 15 Dec 2025 17:00 # [MOQ](../wg/moq.html) ## Summary The MOQ Working Group meeting included an interop report on the recent virtual hackathon, highlighting findings from testing Draft 14 and plans for future interops targeting Draft 16. A demo was presented on a proposed "switch" message for track switching, illustrating its benefits for smoother, gapless transitions by offloading logic to the relay. Finally, a review of PR 1401 for new filtering capabilities was presented, detailing the various filter types and their proposed integration, with a call for community review. ## Key Discussion Points * **Interop Report (Mike English):** * The virtual hackathon focused on deeper testing of Draft 14, which has widespread implementation. * A new interop test runner is under development, aiming to automate matrix testing of multiple implementations. * An "ordering issue" in `mock-rs` and a difference in "lingering subscribe" behavior (where a relay might wait for an unannounced track rather than sending an error) were identified. * The current interop spreadsheet key could be reformed to better reflect relay-centric testing. * **Future Interop:** The next target is Draft 16, anticipated in early January, for the February interim meeting in Boulder. Participants were warned that Draft 16 presents a significant implementation lift compared to previous drafts. * **Track Switching Demo (Ali, Denis, Zafra):** * A demo showcased a proposed "switch" message designed for efficient track switching, replacing multiple `subscribe_update` messages. * The "switch" message offloads the decision of the exact switch point (group boundary) to the relay, preventing playback stalls and duplicate objects, particularly in varying network conditions. * If the relay cannot fulfill the switch (e.g., target track is too far behind), it can send a `switch_error`. * Discussion ensued regarding the balance between client-side and server-side ABR (Adaptive Bitrate) decisions. The "switch" message is a client-initiated mechanism that leverages relay knowledge for smoother execution, rather than full server-side ABR. * A participant suggested simulating network delays to further highlight the benefits of the "switch" message in challenging conditions. * **Filters PR Review (Mo):** * Mo presented PR 1401, which introduces several new filter types: Group, Subject, Object, Priority, Extension, Location, and Track filters. * These filters are parameters in `SUBSCRIBE`, `FETCH`, and `REQUEST_UPDATE` messages. * The Location filter is a combined group/object ID filter, supporting special locations like "largest object" (for joining fetches) and "next group start." * The Track filter is unique, applying only to `SUBSCRIBE_NAMESPACE` and selecting a subset of tracks based on criteria, evaluated *after* other object-level filters to ensure meaningful results. * All new filter capabilities are *off by default* (default setup parameter value of zero) and must be explicitly negotiated by the relay. This allows relays to gradually adopt them without blocking Draft 16. * Mo requested broad community review of the PR, especially from implementers, to identify potential issues early. ## Decisions and Action Items * **Action Item:** A participant will file an issue to track the discussion around "lingering subscribe" behavior. * **Action Item:** Mo will send an email to the mailing list advertising PR 1401 (Filters) for community review. * **Decision:** ABR slides were deferred to a later meeting. * **Decision:** Further discussion on the "switch" message and alternative track switching approaches will take place at the January 12th interim or the Boulder interim meeting. ## Next Steps * Implementers are encouraged to review PR 1401 (Filters) and provide feedback. * The working group will target Draft 16 for interop testing at the February Boulder interim. * Agenda requests for the January 12th interim meeting are due by January 5th.