[dispatch] WHIP - WebRTC HTTP ingestion protocol
Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Wed, 30 September 2020 10:24 UTC
Return-Path: <sergio.garcia.murillo@gmail.com>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4069A3A0A90 for <dispatch@ietfa.amsl.com>; Wed, 30 Sep 2020 03:24:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 QarRkeHB_MJ5 for <dispatch@ietfa.amsl.com>; Wed, 30 Sep 2020 03:24:51 -0700 (PDT)
Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) (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 9D7C13A0061 for <dispatch@ietf.org>; Wed, 30 Sep 2020 03:24:51 -0700 (PDT)
Received: by mail-wr1-x431.google.com with SMTP id c18so1152991wrm.9 for <dispatch@ietf.org>; Wed, 30 Sep 2020 03:24:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:cc:from:subject:message-id:date:user-agent:mime-version :content-language; bh=Xu4QKrfiNvI8LBLjyKY6nRkwJ3fT3/Gx3esyZHAACDg=; b=fr3OhX6DYd3asr8piAyIIqkPB+5W4vWYADxdHHF3AyVT1mmCCh7xX6BAco69iBMYt3 8nWjtXRyC5zICf5poSunU5IK9WAUAhK8VnLWSTo0El5YwcJ6nwLtKQv5/EdFi0XCCCa/ ttvTPjoNvDOZRhBFErxyU4jnoHud1pSquZSa1FcL2Yr1gdDDZym2iqPEK3U9yNeMKBas +N0OiYpCPFzxlSvgPDbxAeNCTomDW3n0/glTZWn8ZzdS6iUeq7MXU1yTNWSpPeoFeDUk xRnoBsAl2g84EuQgnUjNbFBDIiHWwP8oV9lEdVlb2SeqMOhcNCiAV+1TeX0Rg+i/UWMC WEZw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:cc:from:subject:message-id:date:user-agent :mime-version:content-language; bh=Xu4QKrfiNvI8LBLjyKY6nRkwJ3fT3/Gx3esyZHAACDg=; b=bPHODU81MYRmCrDToVgg09ydUHVTGevHpXgqTRAlHAq4PzYdeXAi0zi0SXF4FKJgPH jDN4fAEG/CVzuxX03+4RjDsRb8IJF/4Sj//CA7fUZBUDQvvlyjkF0COLYsHbpRkOB1i5 ah8FvAP/NMOEmd9EkaljFmrPzGwOaMz3uG62j1SYNKydkNcYn3RrHCc84wzjAU0nvlFR d16egco3UIVdXGbeXW4m+E+o/ptE3UlfmgsKfzFie7KJBK1cxrBMPhCKU3d6tyU0mneI 8a7EENuG75FQ8rilIK1Idy5WXUYEL4qmJ0houUC7oB8D37E+Pdd4SL14a6cWg0yBrOKN iB/A==
X-Gm-Message-State: AOAM530r17CO1pRHSJhka3rGib+yV/C9yOtY0Zk14qssCRvoxjVDjhUs AWVLuN75QLef3eiou3SIFds=
X-Google-Smtp-Source: ABdhPJwbYY8DSqOSfq+BngUcSWZSYGTiI1Nk+07r4Ec1LLQJPRUMtr3gXH6OSntFguKQoMPz8MHn3Q==
X-Received: by 2002:a05:6000:11c5:: with SMTP id i5mr2377062wrx.18.1601461489817; Wed, 30 Sep 2020 03:24:49 -0700 (PDT)
Received: from [192.168.0.11] (79.108.125.160.dyn.user.ono.com. [79.108.125.160]) by smtp.googlemail.com with ESMTPSA id t10sm1954314wmi.1.2020.09.30.03.24.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Sep 2020 03:24:49 -0700 (PDT)
To: "dispatch@ietf.org" <dispatch@ietf.org>
Cc: Lorenzo Miniero <lorenzo@meetecho.com>, Alex Gouaillard <dralex@millicast.com>
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Message-ID: <085505e3-9899-f817-b6df-db8022d52e26@gmail.com>
Date: Wed, 30 Sep 2020 12:24:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------E1FCA4B13834FB61010AAD57"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/cfVLpE0aOy_zEWc5zMiZinOdbgc>
Subject: [dispatch] WHIP - WebRTC HTTP ingestion protocol
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>, <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>, <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 30 Sep 2020 10:24:53 -0000
Hi all! While WebRTC has been very successful in a wide range of scenarios, its adaption in the broadcasting/streaming industry is lagging behind. Currently there is no standard protocol (like SIP or RTSP) designed for ingesting media in a streaming service, and content providers still rely heavily on protocols like RTMP for it. These protocols are much older than WebRTC and lack by default some important security and resilience features provided by WebRTC with minimal delay. The media codecs used in older protocols do not always match those being used in WebRTC, mandating transcoding on the ingest node, introducing delay and degrading media quality. This transcoding step is always present in traditional streaming to support e.g. ABR, and comes at no cost. However webrtc implements client-side ABR, by means of simulcast and SVC codecs, which otherwise alleviate the need for server-side transcoding. Content protection and Privacy Enhancement can be achieve with End-to-End Encryption, which preclude any server-side media processing. We have been working on a proposal for a simple HTTP based protocol that will allow WebRTC endpoints to ingest content into streaming services and/or CDNs to fill this gap and facilitate deployment: * https://tools.ietf.org/html/draft-murillo-whip-00 * https://github.com/murillo128/webrtc-http-ingest-protocol/ We have already implemented it on Janus and Medooze media servers: * https://www.meetecho.com/blog/whip-janus/ * https://medium.com/@medooze/whip-webrtc-meets-the-broadcasting-world-86772eba8ae7 And added support into a WebRTC version of OBS studio: * https://github.com/CoSMoSoftware/OBS-studio-webrtc/releases/tag/m84v23.2-RC2 We also plan to have an interop session on the next IETF hackhaton, that will allow to check the interoperability between different WebRTC implementations. What would be the best way of moving this forward? Obviously, any feedback will be very welcome. Best regards Sergio
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Deen, Glenn (NBCUniversal)
- [dispatch] WHIP - WebRTC HTTP ingestion protocol Sergio Garcia Murillo
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Ben Campbell
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Deen, Glenn (NBCUniversal)
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Sergio Garcia Murillo
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Alexandre GOUAILLARD
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… T H Panton
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Harald Alvestrand
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Sergio Garcia Murillo
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Lorenzo Miniero
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Adam Roach
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Sergio Garcia Murillo
- Re: [dispatch] WHIP - WebRTC HTTP ingestion proto… Alexandre GOUAILLARD