Re: [Cellar] Can there really be "many Blocks in a BlockGroup"?

Michael Bradshaw <mjbshaw@google.com> Tue, 18 February 2020 20:59 UTC

Return-Path: <mjbshaw@google.com>
X-Original-To: cellar@ietfa.amsl.com
Delivered-To: cellar@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EA27B12081A for <cellar@ietfa.amsl.com>; Tue, 18 Feb 2020 12:59:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.499
X-Spam-Level:
X-Spam-Status: No, score=-17.499 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 fkRlconQaOAL for <cellar@ietfa.amsl.com>; Tue, 18 Feb 2020 12:59:52 -0800 (PST)
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) (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 48FA5120819 for <cellar@ietf.org>; Tue, 18 Feb 2020 12:59:52 -0800 (PST)
Received: by mail-wr1-x430.google.com with SMTP id n10so23720016wrm.1 for <cellar@ietf.org>; Tue, 18 Feb 2020 12:59:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=PS9d5QEuSZXHym0gGf4MZLZo10vKkN10k7lL8uqNJDc=; b=Dw4d6GFGxC312pgRExHBhX59RFtt4TS9F45hZzXONVAranz11D9m1zueQ/2ySZM7Vs K2EQsBqRx/cHH2rLmejYWT+vO32Qk+rHUKKhS7hfcEnySZvE/BrKDr86iMxigY+LqKmw 3K2zinRhaM6WKjb2NKGKPAxiVG1nJj2ZU4Kpa7huTCA3wjU6rb+4fvd5WL+38yFsyteG XIuQxDQ1BdqnE7gv0MNP/ACVWZcZAFsgLUOcAnhfkziC1liNYE/+XpZsH2hjSJ5Se+6p DKDrAXHMxWayaiVVhTBz7VQjHUr0ReT78KjWO24xNRTwjwcOHsHm9BqRcB3dyREKK584 SufQ==
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=PS9d5QEuSZXHym0gGf4MZLZo10vKkN10k7lL8uqNJDc=; b=oOfXVZms5PCWzyNVjPQMLqV9qBjm4parCPXA1qhxkHkG7MSw1cpZV59G3RP5A+JQ3l ATpKF8CFIP6tMkuQeHPp6CGDfpcpmp7jFmjAtCXHZRBXRyyoTM1UNCiIkO6vv1pqPgqN RJ0Uf3X7eUnzBC0AOLY0jO5TfnQTb4NAsZpeEs3mH2HvEHuyPRh4SUklfYLAGTl9Tyl7 HiSTKhC0RxoQN/xDrLRHoXA9nrDBxnShADR5icR26QdaqatJDcQKrXUHqUbqLvI0XyMl IOCDBZ35Aj7yhtMwPEh4h+7na0Gg1dlVEKbOHazqdH8toNViILUQ8FIb+2d4xH4BWHay EJSg==
X-Gm-Message-State: APjAAAWv7eIldPIKAC17gJiVph7rrhWsDOgzw2yCqDkDPDwbbcly7dy4 lLvIAryKKiNJuJsI0pyeIXBBzXLnV+jbDt2gb/7HZQ==
X-Google-Smtp-Source: APXvYqwfle38ad/P1PiTIb94p1dexM7PhaKnSV2UzQgSYEpfwECH2PEfSHYC6uB1EoO9gBve+QIQZGV2JRX82vL3qcA=
X-Received: by 2002:adf:f1cb:: with SMTP id z11mr30070038wro.375.1582059590386; Tue, 18 Feb 2020 12:59:50 -0800 (PST)
MIME-Version: 1.0
References: <CAHUoET+QjYNe4-peA7k-xWQxy8oznNdj7TVfT_L-xUTC-5gMSw@mail.gmail.com> <a3f6f329-9334-8db8-0761-e296fb302652@gmail.com>
In-Reply-To: <a3f6f329-9334-8db8-0761-e296fb302652@gmail.com>
From: Michael Bradshaw <mjbshaw@google.com>
Date: Tue, 18 Feb 2020 12:59:38 -0800
Message-ID: <CAHUoETJBd+Okc_fza730oBBbB0_fEG8ugcpZ2iP6T61OO6pwAA@mail.gmail.com>
To: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Cc: Codec Encoding for LossLess Archiving and Realtime transmission <cellar@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000e6606d059edff3bf"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cellar/-0Nl3bxH6zHixA6HckD2dtHk7AY>
Subject: Re: [Cellar] Can there really be "many Blocks in a BlockGroup"?
X-BeenThere: cellar@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Codec Encoding for LossLess Archiving and Realtime transmission <cellar.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cellar>, <mailto:cellar-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cellar/>
List-Post: <mailto:cellar@ietf.org>
List-Help: <mailto:cellar-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cellar>, <mailto:cellar-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Feb 2020 20:59:55 -0000

I've opened a PR for this:
https://github.com/cellar-wg/matroska-specification/pull/366

On Thu, Feb 6, 2020 at 2:16 AM Andreas Rheinhardt <
andreas.rheinhardt@gmail.com> wrote:

> Michael Bradshaw:
> > index_matroska.md
> > <
> https://github.com/cellar-wg/matroska-specification/blob/master/index_matroska.md
> >
> > currently
> > says:
> >
> > "There can be many Blocks in a BlockGroup provided they all have the same
> > timestamp. It is used with different parts of a frame with different
> > priorities." (source
> > <
> https://github.com/cellar-wg/matroska-specification/blob/master/index_matroska.md#block-structure
> >
> > )
> > "There can be many Block Elements in a BlockGroup provided they all have
> > the same timestamp. It is used with different parts of a frame with
> > different priorities." (source
> > <
> https://github.com/cellar-wg/matroska-specification/blob/master/index_matroska.md#simpleblock-structure
> >
> > )
>
> This sentence should have never been copied from the BlockGroup
> description.
>
> >
> > Neither of these seem right to me since Block has maxOccurs="1"
> > <
> https://github.com/cellar-wg/matroska-specification/blob/a577e0da858f56688ffedb975a49cbfacddc667c/ebml_matroska.xml#L138
> >
> > ..
> >
> > Is this just an outdated error in index_matroska.md?
> >
> That's an interesting observation. I was not aware of the
> maxOccurs="1" and it seems to be not supported at all by the software
> I tested: FFmpeg ignores all but the last of the Blocks; mkvmerge only
> uses the first of the blocks and mkclean crashes while mkvalidator
> complains about a unique element occuring more than once.
>
> maxOccurs="1" has been added in commit
> 6210296013de0e3f95ca15fde43595bfcd6ee774 (which belongs to PR #124);
> it was in response to
> <https://mailarchive.ietf.org/arch/msg/cellar/EefXScpaicRCZTRiQel8l2nEATY
> >.
> There was no 'maxOccurs="unbounded"' present before this commit, so
> that this commit did not create the contradiction between the
> EBML-scheme and the desription of the BlockGroup element.
>
> Given that there is no codec mapping that makes use of this "different
> priorities" feature and that this contradiction alone meant that it
> could only be used if we require the EBMLDocTypeReadVersion to be at
> least four, it makes sense to adapt the description of the BlockGroup
> structure to conform to the Matroska EBML-scheme.
>
> - Andreas
>
> PS: There would be another hypothetical use-case for multiple Blocks
> inside the same BlockGroup: Blocks from different tracks that share
> the same timing. This scenario is not uncommon when one translates
> subtitles; yet I don't think it would be worth the additional
> complexity to allow this. Furthermore, the point about
> EBMLDocTypeReadVersion would apply here as well.
> (I actually thought the specs to allow this already and fixing this
> was on my to-do-list for the Matroska demuxer in FFmpeg. But the
> quotes by Michael made me realize that I was wrong.)
>
> _______________________________________________
> Cellar mailing list
> Cellar@ietf.org
> https://www.ietf.org/mailman/listinfo/cellar
>