[Moq] Scope of MOQ and ULL Streaming

Nathan Burr <nathan.burr@paramount.com> Mon, 06 February 2023 17:05 UTC

Return-Path: <nathan.burr@paramount.com>
X-Original-To: moq@ietfa.amsl.com
Delivered-To: moq@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 456E3C1526F7 for <moq@ietfa.amsl.com>; Mon, 6 Feb 2023 09:05:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.893
X-Spam-Level:
X-Spam-Status: No, score=-6.893 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=paramount-com.20210112.gappssmtp.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BGnQZFd24cVb for <moq@ietfa.amsl.com>; Mon, 6 Feb 2023 09:05:20 -0800 (PST)
Received: from mail-vs1-xe2b.google.com (mail-vs1-xe2b.google.com [IPv6:2607:f8b0:4864:20::e2b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0F93EC1522AA for <moq@ietf.org>; Mon, 6 Feb 2023 09:05:20 -0800 (PST)
Received: by mail-vs1-xe2b.google.com with SMTP id s24so13343064vsi.12 for <moq@ietf.org>; Mon, 06 Feb 2023 09:05:19 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paramount-com.20210112.gappssmtp.com; s=20210112; h=to:subject:message-id:date:from:reply-to:mime-version:from:to:cc :subject:date:message-id:reply-to; bh=6narUDpOuBusIuyE1S9wzLUxZ8f5uz87CjcW7cFuavk=; b=t8GvsJjWRAZvhXQzanTI3gAEDDRaazMo/2B0ewRBkAI60td7Mz7SUmCa/k/DfL2i1k GLU5haItbrFe4/7GfKWCzj7DgnbZO03/xw71kDqOJ1LeSDFrhjmlDCT1ZgN3jMxwN7Qe KgK9ziaw4ZGevr3zO2hHpHPzV/3eQ0ag2MmhaVhLTs56CoLUXgKEEBIoez16eaOfHuS/ tbNUmV0LLe/cU3zaIoXDiWZ94+p/54d7XFG378IbP/eu6mrNnzt4eiTkbJ8VfcJd60pC 5Gz2KLeIiSXdqx8ycDT/vrNYFt7HwUOciKzZTohy58748OjgCXrl06DMKZc8v5D0H9dG uBDw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:reply-to:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6narUDpOuBusIuyE1S9wzLUxZ8f5uz87CjcW7cFuavk=; b=Bx8HNJjHz2TOS3j2NV0jmVz06xIQYgalC8UtpSNgbxHCyUQa0Q4P3aHTktLpCx5GYB 58w4CK8NfmTI/pXcvZYON5C73xvtfPnqnRmSk6ekssDS7sadT/LlT8HYfHU9iAa4vA41 F+shSTFWsQ6Mn0M8u9HviXUtcqdE8k4p9A+shtJKbQPQnkfeAg++jGPrO36FrBJ/O3XE 8Q+fW2cBAHlCcSifjasBT2Kb+I6ZfrfJec7MY+weyjsyTB8Qsc9fD5VRCjT7C4629p4m Kjt0Pva8o1BMHLbW2i+XnpAkz91/CtELv0yQDi46GeQGCLFqLwSMKEeXNM5Q/as9lGZ0 WLUw==
X-Gm-Message-State: AO0yUKW/V21bskXTTOaatqe3ZQQobFYbxh8tUqERBIat4R1275/wNjTl vKvn3odU/qRrcNF7lqCsGZSQnu+7b0DgrRxmrOJGolyokV5EFkzonRBRlR8+MymwpyCjJGJws7q ivYjAJzPL8i6719cRm/dQnA==
X-Google-Smtp-Source: AK7set99hhrLkOa5c0ZzgSy3gctMTonU07RBfDS3pbpjjVcGJHTrpexYyP3B+7CMQ0zAWUSwSsInm9fDzK6Zfp2NMtE=
X-Received: by 2002:a05:6102:304e:b0:3fc:58d:f90f with SMTP id w14-20020a056102304e00b003fc058df90fmr70957vsa.60.1675703118058; Mon, 06 Feb 2023 09:05:18 -0800 (PST)
MIME-Version: 1.0
Reply-To: nathan.burr@paramount.com
From: Nathan Burr <nathan.burr@paramount.com>
Date: Mon, 06 Feb 2023 12:05:09 -0500
Message-ID: <CANG3SPyuA=pThgpZCwUYT9KjGT0xogonruQpSiSiGwgcRATknw@mail.gmail.com>
To: moq@ietf.org
Content-Type: multipart/related; boundary="0000000000001a2ed105f40b093d"
X-Transit: 65c4-4609-8ad9-9434dbf4e387
Archived-At: <https://mailarchive.ietf.org/arch/msg/moq/FOlZTo_aVHqwKPXpJiQ1nIKMDSM>
Subject: [Moq] Scope of MOQ and ULL Streaming
X-BeenThere: moq@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Media over QUIC <moq.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/moq>, <mailto:moq-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/moq/>
List-Post: <mailto:moq@ietf.org>
List-Help: <mailto:moq-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/moq>, <mailto:moq-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Feb 2023 17:05:24 -0000

*Discussion #1:*

I've spent a bit of time trying to wrap my head around what MOQ is and I
feel like this needs to be discussed further. I've seen everything from VR,
Conferencing, ULL Broadcasting and gaming as possible use cases. I feel
like this is an important discussion because MOQ could be a base layer spec
that supports all of these. But that means possibly the need for more
specs. Such as VR ov MOQ or ULL Streaming over MOQ. Or it could be a Spec
that is more specific to just one thing. The original work around WARP
seemed to lean more towards ULL Streaming while RUSH leaned more towards VR
and gaming.

So where does MOQ fit into all of this? Maybe this has already been
discussed and I'm just missing context..

My expertise is around ABR Streaming. So I'll be providing more feedback on
that side of the conversation of where I would like things to go.

*Discussion #2:*

What is the target latency? Maybe that depends on the answer to Discussion
#1. For ULL Streaming I would think somewhere between 500ms - 2.5s.

*Discussions around ULL Streaming involving MOQ:*

[image: image.png]

In my opinion, MOQ should be a stateless forwarding machine. I would like
to do two basic types of requests.

   - Subscribe
      - I picture this is something similar to how MQTT works with topics.
      Subscribe to a topic or sub topics and use wildcards. Example:

      Big_Buck_Bunny/VideoTrack{N}/Representation{N}/
      Big_Buck_Bunny/AudioTrack{N}/Representation{N}/
      Big_Buck_Bunny/SubtitleTrack{N}/Representation{N}/
      - GET
   - I feel like this would still be important to discover information
      about the channel without having to subscribe. IMO each topic should have
      an associated metadata endpoint. that describes the channel, track,
      representation. This way a client can get stream details without needing
      information from a manifest.

Relaying is probably out of scope for MOQ. Looks like some are working on
that process. But I would imagine some sort of smart relaying where you
only relay what is being subscribed to down the subscription chain.

In order to support channel composition (inserting ads, blackout, slate,
scheduling, switching channels, PiP, contributor feed, commentary, etc.) I
feel like we will still need a manifest of some sort that contains
different metadata from different assets and channels. In this scenario
having the ability to share a session ID between the manifest and transport
would be important. This would probably fall under some of the other AuthZ
type of discussions.

Session ID would be needed to make sure to terminate any subscriptions
after their subscription has expired.

*Next Gen ULL Streaming Wish List:*

   - "Synchronization Tracks" for quick channel switching and recovery.
   https://media.idlab.ugent.be/keyframe-insertion-electronics
      - AV1 - Switch Frames
   - DRM - EME requires ISOBFF. Would be nice if EME supported raw ES. Some
   discussions around content protection and WebCodecs:
   https://github.com/w3c/webcodecs/issues/41
   Could make it so we transport CMAF over MOQ or make a polyfill around
   EME/MediaSource that muxes content into ISOBFF format. as long as the ES
   conforms to CENC spec.
   - No more polling. Updates to the manifest are streamed.


-Nate