Re: [Cellar] AV1 mapping Matroska

Steve Lhomme <> Mon, 09 July 2018 08:17 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 77BAC130F1B for <>; Mon, 9 Jul 2018 01:17:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, T_DKIMWL_WL_MED=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id WubsHSAUgvbD for <>; Mon, 9 Jul 2018 01:17:41 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:400e:c00::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id C3DFA130E27 for <>; Mon, 9 Jul 2018 01:17:41 -0700 (PDT)
Received: by with SMTP id x13-v6so3198144pfh.5 for <>; Mon, 09 Jul 2018 01:17:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-transfer-encoding; bh=sWs5L73ybUg4rwbSWMECBI6oHK/Zol3zQ5cXtHL3fMk=; b=EwHq5S+VYyBr+xOUQuGZaB86M+kQi2Y2oJoT5czwm1LCMX3D9Lau0nPQwcMeQnZLCJ usBn7votqdEQJluzMuKYuZCocJngtSbPMxQ5uFtjsjel436kAPcsd4cTC8aKu4/5C9lq JiDN5lukVQVJX9wuoMXVBfMRIuF+aMzNUBoHr0p5BYJ0cmoSkmQOk6zCpiP1S1iyrGuX cQtsHfxmwTMhDJEo8LG/Y4p6Ly9eMUjGnd2HEOd5qM+N/A9OLL4+L0Jj13enCW4MB58b /PpFEDvlYxo8mepznv6y+oZFrXdv6Rm2IKj+yZpoEOBwDAoLLBs0Dqg2rk6QJXHTrM+4 o7VA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:content-transfer-encoding; bh=sWs5L73ybUg4rwbSWMECBI6oHK/Zol3zQ5cXtHL3fMk=; b=R1KQ25/9b9wHSmwDYk9ie00LYiG4+gAT+Fs9MV0ORdzuEqriEFsrMgziVIKo9IrGOK alxSucHOZGuMAOh8MB7XwPaK6KXlH/dwa7xQhOjIFQDOfPIvZssOwRzL+eOgKGIwa0VS oaaQNv/bwdQ2nQXa0affCvu6bwqTEYhDfdE0c0XsEYpsZ1ofvCt67vQR+5jPqDlpD4sO 4cdCH7mF6gFsSJ98ShaOxM49pOtRfCDmcoF4hciJhjTM1OWDZ9YgQHxKNvHIDOwkASG0 /9sISOAbWmsHpJQjJ/u6ZHe/4BRs/rz3ia8UnY0Y8XrangaO/71qAdnkDBDcx9julNc/ SqAQ==
X-Gm-Message-State: APt69E2tAtyW0ojm8AX39uVspXGFcmvmLoFl84yAvNqN7KDLFTGLqjkX lPFQCzavSnAytJtHEdLBff6WQiEEWF0e6y/8VH5VeQ==
X-Google-Smtp-Source: AAOMgpf37zi5pgnz5ZuRXA9nYnOC5yW0FwZ78LGGJPPaW6lKU8xQoAkDUlI+//FNK5E0kuT7RYyRFptbgoajZi+Q2+8=
X-Received: by 2002:a62:384:: with SMTP id 126-v6mr2985557pfd.11.1531124260940; Mon, 09 Jul 2018 01:17:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a17:90a:17af:0:0:0:0 with HTTP; Mon, 9 Jul 2018 01:17:40 -0700 (PDT)
In-Reply-To: <20180702190701.GR4839@michaelspb>
References: <> <> <> <> <> <20180702103455.GQ4839@michaelspb> <> <> <20180702190701.GR4839@michaelspb>
From: Steve Lhomme <>
Date: Mon, 9 Jul 2018 10:17:40 +0200
Message-ID: <>
To: Codec Encoding for LossLess Archiving and Realtime transmission <>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <>
Subject: Re: [Cellar] AV1 mapping Matroska
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: Codec Encoding for LossLess Archiving and Realtime transmission <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 09 Jul 2018 08:17:45 -0000

2018-07-02 21:07 GMT+02:00 Michael Niedermayer <>cc>:
> On Mon, Jul 02, 2018 at 01:14:02PM +0200, Jerome Martinez wrote:
>> On 02/07/2018 12:51, Steve Lhomme wrote:
>> >2018-07-02 12:34 GMT+02:00 Michael Niedermayer <>cc>:
>> >>Hi
>> >>
>> >>On Mon, Jul 02, 2018 at 09:47:45AM +0200, Moritz Bunkus wrote:
>> >>>Hey,
>> >>>
>> >>>>Looking at the term "coded video sequence" (CVS) in other codecs (H.264
>> >>>>and H.265) it seems it's a common term. And for those codec one Segment
>> >>>>correspond to one CVS, with the parameters of that CVS stored in the
>> >>>>CodecPrivate (SPS + PPS for H.264 for example). So we should probably go
>> >>>>in that simple way.
>> >>>I have quite a lot of h.264 samples here, mainly M2TS from DVB, where
>> >>>SPS/PPS change mid-stream, often multiple times. For such files the first
>> >>>occurrences of SPS/PPS make up the AvcC in CodecPrivate, but all key frames
>> >>>are still prefixed with the currently active SPS/PPS — because that's the
>> >>>only way to signal that stuff has actually changed.
>> >>IMHO All SPS/PPS should be in the "global header" (CodecPrivate) which the
>> >>global header applies to, not just the first.
>> Not possible with e.g. real time streaming (you don't know in advance the
>> next SPS/PPS)
> In cases where the SPS/PPS can change and it is not known when the global
> header needs to be produced (that is for example real time streaming).
> it follows that there should be no global header or it should not contain
> any SPS/PPS. But only things which are known for the whole stream.

In Matroska this can be achieved by starting a new Segment when the
codec parameters change. That has an impact on all tracks at the same
time so it may not be good/friendly in all cases. We could describe
this scenario in the specs when a `PrevUID` should be used to specify
the new Segment is a continuation of the previous segment. Actually
even the NextUID could be generated for each Segment and written when
it starts. Technically it would be a correct segment hard-linking but
in the context of live streaming (unknown duration per segment).

> I would argue this is kind of the definition of a global header.
> It applies globally to the whole stream.
> Storing only one out of several PPS/SPS in the header
> (which was mentioned above) feels  rather incorrect to me. And any
> software which makes decissions based on SPS data like resolution and
> aspect ratio could benefit from knowing if it needs to scan the whole
> stream for SPS changes or if it can trust the first or global header
> [...]
> --
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> If you drop bombs on a foreign country and kill a hundred thousand
> innocent people, expect your government to call the consequence
> "unprovoked inhuman terrorist attacks" and use it to justify dropping
> more bombs and killing more people. The technology changed, the idea is old.
> _______________________________________________
> Cellar mailing list

Steve Lhomme
Matroska association Chairman