Re: [rtcweb] JSEP question: How to set up simulcast for server-originated calls?

Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Mon, 05 November 2018 14:21 UTC

Return-Path: <sergio.garcia.murillo@gmail.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 32CC2128BCC for <rtcweb@ietfa.amsl.com>; Mon, 5 Nov 2018 06:21:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 4xNjScyCudyL for <rtcweb@ietfa.amsl.com>; Mon, 5 Nov 2018 06:21:02 -0800 (PST)
Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) (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 394DB12870E for <rtcweb@ietf.org>; Mon, 5 Nov 2018 06:21:02 -0800 (PST)
Received: by mail-wr1-x429.google.com with SMTP id k15-v6so6749928wre.12 for <rtcweb@ietf.org>; Mon, 05 Nov 2018 06:21:02 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language; bh=L7VEaAmcBK+S9PB3f80XvCfZ+acsqxceZ/IX2bNMvR8=; b=AevPncb/DpBVgW9I5U8GAXTYm183PK576miEBf7dkF/hWVX/M3YuEFxhBjxlMLAQ7+ b8Sui+B50GQDou3cUfSHPUYXz2qvMCTO6L/lBv4pbPYUxEteavpyu+AsEfUAazpBoNEF DvTj6gzsoWzBI1VxsdmMi2CNl5CN09a3IUQEvAbdi3nw83HyQWX/1HjQOIlaHkyy49pC zHigcqxJ+Dl4IqiqqXdko3mLofGdlNATwnS6izIT607UqRFehnPuOL+La7FqNjrYrwoF t9AUUwPc9NzCPNx7a5GyzLKMy/EJ9+s7vp+wEAXahjvLcI3cN2fPOADZnoIvhoOzWyS9 VzCw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=L7VEaAmcBK+S9PB3f80XvCfZ+acsqxceZ/IX2bNMvR8=; b=aRb09OS9m1PhvHME09+UFS3pJw2WAJjW8iFFnJRgUMn1SyrFq8UVcwiMhq7iW1ZXYB wd7sWbKR6bF0l8dQi4hz7T8ldknD5xHuWp0uH3bofr0m6Bm3k6HtKHdYG97ZNZTeUctY ykLEWjiA501EIKzoS4mN60kDX84Lr3L6P1j9Y2vsVJW3NGiKb7tTHAlSqqibv4t6xv6r 3WA9xpQRikEjGExPdR2SY8mG32Ms9A5MlMq0gIPKsYbP0qfeYFcQaO5nS9B5o5AWBVT9 HUk5rBXsblJO/2alL6LqonxnZxYr2q/Z2kxp2fnCogwzTiCmYO6gUKoKi42uSqsAGlki kHEg==
X-Gm-Message-State: AGRZ1gKimdfvR4qVPZTVCci9iayvDwzHj29jB+PnjLPYpLpWnbkYuGwP 9DuyWNb4kpSmQDa/HBl/7Wnv+SIR
X-Google-Smtp-Source: AJdET5fctly2wPxfz0cESL5E1ECWfcpPEzaf2oogZoBnl+nmN+t2Zo3w1J4gOyt/1rMZBOnjKxGjZA==
X-Received: by 2002:adf:a512:: with SMTP id i18-v6mr21197204wrb.220.1541427660472; Mon, 05 Nov 2018 06:21:00 -0800 (PST)
Received: from [192.168.0.111] (37.red-80-28-109.staticip.rima-tde.net. [80.28.109.37]) by smtp.googlemail.com with ESMTPSA id 65-v6sm10442936wmj.1.2018.11.05.06.20.59 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 05 Nov 2018 06:20:59 -0800 (PST)
To: Iñaki Baz Castillo <ibc@aliax.net>
Cc: Harald Alvestrand <harald@alvestrand.no>, rtcweb@ietf.org
References: <185c8d1d-3971-ad09-eee0-a26bed446a96@alvestrand.no> <CALiegfmbghnBtDt=wfCAbOWi5SDFTi2qPgDOuXHRazKSvvCKNQ@mail.gmail.com> <CA+ag07YD3oSuL=R=h-28waha4b7xf7haU+-oWuNbzO_sBY4MQw@mail.gmail.com> <e567832e-1918-d51c-6f00-a732547c0a8e@alvestrand.no> <CA+ag07byo1vReeo2uMKxmF1tnzW+4CJSMPLaJO79H0s9j0PO0g@mail.gmail.com> <31fb92c1-2934-c33f-a3cf-552f027eacda@alvestrand.no> <bb7f863b-510c-f460-c9b0-843d500784b8@gmail.com> <5db76ada-b896-7eba-b42e-85b2e239dc42@alvestrand.no> <db90e287-145b-5ffe-18c0-f38faed76c07@gmail.com> <CALiegf=7yJJEbGT9SrbcEBBo9cnBbPimDP_oaTzJL63hrnXGoQ@mail.gmail.com> <CA+ag07ZuGYBhr=djPP=nLXLX96Yp2O4H8rJT2z8RVvNTiky2qw@mail.gmail.com> <CALiegfmOsLgeO-jkj20qKa0=w-xwHJdKD12Py_Dvades8Jjnrw@mail.gmail.com>
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Message-ID: <fe3e1b27-ba9f-4403-6835-8e7faebb4362@gmail.com>
Date: Mon, 05 Nov 2018 15:24:20 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1
MIME-Version: 1.0
In-Reply-To: <CALiegfmOsLgeO-jkj20qKa0=w-xwHJdKD12Py_Dvades8Jjnrw@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------4B5EB36C994B21240CACF4A2"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/ZPnZPZYLH0mlOYg8Vet2aq8IWo8>
Subject: Re: [rtcweb] JSEP question: How to set up simulcast for server-originated calls?
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 05 Nov 2018 14:21:05 -0000

By the way, according to the simulcast draft that should not be a 
problem at all:

    An answerer that receives an offer with simulcast that lists a number
    of simulcast streams, MAY reduce the number of simulcast streams in
    the answer, but MUST NOT add simulcast streams.


On 05/11/2018 14:22, Iñaki Baz Castillo wrote:
> May be, but without knowing in advance the limit in different 
> devices/browsers, how many rids do you expect those SFUs will place in 
> the offer? It would be the "lowest common denominator" which would not 
> satisfy to anyone.
>
> El lun., 5 nov. 2018 14:17, Sergio Garcia Murillo 
> <sergio.garcia.murillo@gmail.com 
> <mailto:sergio.garcia.murillo@gmail.com>> escribió:
>
>     if remote offer has more rids than what the browser support then
>     the m line should be rejected.
>
>
>     El lun., 5 nov. 2018 14:14, Iñaki Baz Castillo <ibc@aliax.net
>     <mailto:ibc@aliax.net>> escribió:
>
>         As Harlad said before, sender.getParameters() should not
>         return more times than the number of encodings the browser
>         supports, so of the remote offer has more than those, we have
>         an API problem.
>
>         El lun., 5 nov. 2018 14:03, Sergio Garcia Murillo
>         <sergio.garcia.murillo@gmail.com
>         <mailto:sergio.garcia.murillo@gmail.com>> escribió:
>
>             On 05/11/2018 12:45, Harald Alvestrand wrote:
>             > I do fear that simulcast will continue to affect parts
>             of the spec that
>             > we don't expect it to. But we don't have the luxury of
>             specifying it
>             > halfway; either we rip it out altogether, or we specify
>             it in enough
>             > detail for interoperable implementation.
>
>             I agree to that. If we are able to find an "easy" (i.e.
>             not introducing
>             too many changes) I would not have any issues adding
>             support to that.
>
>             Something like:
>
>             - Browser adds a track via addTrack
>
>             - Browser call SRD with a recv simulcast m-line offer
>
>             - The transceiver is created with one send encoding per
>             rid offered by
>             the SFU with default values and all send encodings except
>             first one with
>             active=false (this would be the only required change)
>
>             ----- browser encodes/sends a single rtp stream, same as
>             if the remote
>             offer was a non simulcast stream--
>
>             -Browser calls sender.getParameters(), modifies the
>             desired send
>             encoding parameters ( scaleResolutionDownBy, maxFramerate,
>             maxBitrate,
>             etc) and enables them by setting active=true
>
>             Would this approach fulfill the requirements?
>
>             Best regards
>
>             Sergio
>
>