Re: [Hls-interest] Streaming Video Alliance Comments on HLS Content Steering Proposals

Phil Cluff <phil@mux.com> Fri, 16 April 2021 09:15 UTC

Return-Path: <pcluff@mux.com>
X-Original-To: hls-interest@ietfa.amsl.com
Delivered-To: hls-interest@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6159D3A1DA9 for <hls-interest@ietfa.amsl.com>; Fri, 16 Apr 2021 02:15:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=mux.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fNnj46Nk2fb4 for <hls-interest@ietfa.amsl.com>; Fri, 16 Apr 2021 02:15:26 -0700 (PDT)
Received: from mail-vk1-xa32.google.com (mail-vk1-xa32.google.com [IPv6:2607:f8b0:4864:20::a32]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 007A33A1DA6 for <hls-interest@ietf.org>; Fri, 16 Apr 2021 02:15:25 -0700 (PDT)
Received: by mail-vk1-xa32.google.com with SMTP id u200so3236938vku.3 for <hls-interest@ietf.org>; Fri, 16 Apr 2021 02:15:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mux.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Yc55LlWi001jJ/mk23yHfK5p+U7o7wh6I/78ku3sWj4=; b=JhAjkT8iol/4susWxeQKAynWYVr7Xh+tNcRzgLOe0pjtjBAzmt2uViupbSuH1JzowZ lisPVyl+RJ2H+wIzyWP0DMbhDTLBcrv4PbDj9E3YIEt+YzdUIoqQWQrFKnT6UroyZkiV /Qht/6xGQ8pywfNKiUAjDSxz4pUxn77cZH/1M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Yc55LlWi001jJ/mk23yHfK5p+U7o7wh6I/78ku3sWj4=; b=EfXlz84GLGkJgjCBpH6M03FbvLzzZqqyjjW6KYHADUpIZOG+QkUv6TEWQJP2Zegj7d ncs/gwMO12N3Bh3bRbTP4DNOHs7prBZ2ty8XDiKrOPdD6unWI631RBQ/roawBqs4YUN1 sjrlArJBqVztz7iI3MXh5Fa/tW2BZ1KjJSDz/gMK8nuBVO8qzPdWrEpm0MyxVL0kruEW 3mqZX8D1kRC0yB4JOwGRtgsksyRpWeAUoVVMiXrA+wpeCeMWdYwk/B0qlqc7nmdaiFyO x0Q0C2PzvX/QJUYqdbI0eY9pyKn3+XHZOzn214CmLDeNzUfhelZCTFSpzGxOwkqU/GlR AAZg==
X-Gm-Message-State: AOAM532TYM/46dwcwMP5De9v3Lcx1Dcxk5Go3ninZAvan8Lm1FefBu0n oW4fJBx/1WtTB7i1KaL1fV0UeMeMVcbU0EFNnpMcTVxB8rwkqA==
X-Google-Smtp-Source: ABdhPJzQWOCBiS6okjqZ4OKXWJXjbvRSz4vUJfCCjPXuZ4/8NlwibZepgMoXmnLw1hgFHGG5vlq62RKG5+C+ThoM3og=
X-Received: by 2002:a1f:2c58:: with SMTP id s85mr5764282vks.15.1618564523335; Fri, 16 Apr 2021 02:15:23 -0700 (PDT)
MIME-Version: 1.0
References: <CAA__M0h+cq9ZrBjid33hL-JFVQ8L40cG=tB3DOrXRPPwvCKpVg@mail.gmail.com> <840F37F8-D3EA-44F2-93C9-1D20682BBA0E@apple.com> <9659752D-8C78-4050-BDF5-22736F0F642D@akamai.com> <DA56AC1A-6B14-4774-B13E-7B3B37376A75@apple.com> <30557D2D-4669-4CD6-9D42-391453D5FB8A@akamai.com>
In-Reply-To: <30557D2D-4669-4CD6-9D42-391453D5FB8A@akamai.com>
From: Phil Cluff <phil@mux.com>
Date: Fri, 16 Apr 2021 10:14:57 +0100
Message-ID: <CAHuKqSD6gQc8N9yJixDGThMutPoTELuz=pkubEMcs1JfM-OpoQ@mail.gmail.com>
To: Roger Pantos <rpantos=40apple.com@dmarc.ietf.org>
Cc: "hls-interest@ietf.org" <hls-interest@ietf.org>, "Law, Will" <wilaw=40akamai.com@dmarc.ietf.org>
Content-Type: multipart/alternative; boundary="00000000000075b5f605c0136b7f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/hls-interest/_MzN3eJ5eRJjFtusi22rseRD35A>
Subject: Re: [Hls-interest] Streaming Video Alliance Comments on HLS Content Steering Proposals
X-BeenThere: hls-interest@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussions about HTTP Live Streaming \(HLS\)." <hls-interest.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hls-interest>, <mailto:hls-interest-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/hls-interest/>
List-Post: <mailto:hls-interest@ietf.org>
List-Help: <mailto:hls-interest-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hls-interest>, <mailto:hls-interest-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 16 Apr 2021 09:15:31 -0000

Thanks Roger and the Apple team for looking at this approach, it's really
appreciated! I also really appreciate that this finally formalises the
expected player behaviour for redundant streams.

I think there is something missing though, specifically, in the current
implementation I don't think it works for un-muxed audio and video, and
text tracks, since PATHWAY-ID can only be defined on #EXT-X-STREAM-INF,
#EXT-X-I-FRAME-STREAM-INF.

I think we also need to be able to define PATHWAY-ID on #EXT-X-MEDIA so
that we do things like this for redundant alternate audio or text tracks:

#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-0",NAME="en
(Main)",DEFAULT=YES,AUTOSELECT=YES,LANGUAGE="en",URI="
https://primary-cdn.com/audio-0.m3u8",PATHWAY-ID="1"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-0",NAME="en
(Main)",DEFAULT=YES,AUTOSELECT=YES,LANGUAGE="en",URI="
https://backup-cdn.com/audio-0.m3u8",PATHWAY-ID="2"

And the same for text tracks:

#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs-1",CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog",NAME="English",AUTOSELECT=YES,DEFAULT=YES,FORCED=NO,LANGUAGE="en",URI="
https://primary-cdn.com/subs-1.m3u8",PATHWAY-ID="1"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs-1",CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog",NAME="English",AUTOSELECT=YES,DEFAULT=YES,FORCED=NO,LANGUAGE="en",URI="
https://backup-cdn.com/subs-1.m3u8",PATHWAY-ID="2"

I think this might require some minor changes under 4.3.4.1.1. Rendition
Groups in the HLS spec to clarify that entries in a group are not
duplicates when their PATHWAY-ID does not match.

Let me know if I've missed something as always!

Thanks again!


On Fri, Apr 16, 2021 at 12:23 AM Law, Will <wilaw=
40akamai.com@dmarc.ietf.org> wrote:

> Well a big public thank you to Roger and the team at Apple for their open
> mindedness and willingness to take feedback around this, even to the degree
> that it represented a large rewrite of the feature. I think you have a
> genuinely simpler and thus more robust product as a result. We look forward
> to supporting you in taking it to production. It’s also encouraging for
> list members who put time & effort in to preparing feedback, to know that
> it is given due consideration. So thanks all around.
>
>
>
> In speaking with Kirk this afternoon, it would be really useful to have an
> additional optional reserved parameter of
>
>
>
> _HLS_lastSteerTime=<timestamp>
>
>
>
> in which the player passes to the steering server the last wall-clock time
> at which it executed a steering action.
>
>
>
> Why would this be useful? Primarily, it allows the decoupling of the check
> frequency from the steering execution frequency. Delivery problems can
> happen quickly  - within 30s in some cases. Having a 5 minute check-in
> interval means that a player can be banging its head against a poorly
> performing server for many minutes before it moves away. Users have proven
> inability to absorb such failures for more than 20s or so. We could address
> this problem by having the player call the steering server every 20s.
> However we don’t want the QoE churn that might come if the player switches
> at 20s intervals. It would be nice solution then if the player has the
> option of checking in frequently but the steering server could then
> intelligently steer some players who had been stable for a while,
> immediately, while for others it could wait for some churn-avoiding
> threshold before steering them. This new timestamp query arg would enable
> this optimized behavior and it would allow the steering server to remain
> stateless in its operation.
>
>
>
> Cheers
>
> Will
>
>
>
>
>
> *From: *Roger Pantos <rpantos=40apple.com@dmarc.ietf.org>
> *Date: *Thursday, April 15, 2021 at 3:29 PM
> *To: *"hls-interest@ietf.org" <hls-interest@ietf.org>
> *Subject: *Re: [Hls-interest] Streaming Video Alliance Comments on HLS
> Content Steering Proposals
>
>
>
> Okay folks, we’ve done a number of audits and we think that simple
> annotation of redundant streams will work well enough for content steering.
> I’ve updated the spec to reflect that, and bumped the spec version to
> 1.2b1.
>
>
>
> We left an opening in 1.2 that will allow us to introduce new Pathways
> through the steering manifest if there’s a demand for that in the future.
>
>
>
> As always, thanks to everyone for their thoughtful contributions!
>
>
> --
> Hls-interest mailing list
> Hls-interest@ietf.org
> https://www.ietf.org/mailman/listinfo/hls-interest
>


-- 
Phil Cluff | Product Lead | +44 7983 406 937 | phil@mux.com