[Cellar] mkv ColourSpace and uncompressed video

Dave Rice <dave@dericed.com> Sun, 05 February 2017 23:21 UTC

Return-Path: <dave@dericed.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 62509129A7A for <cellar@ietfa.amsl.com>; Sun, 5 Feb 2017 15:21:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.281
X-Spam-Level:
X-Spam-Status: No, score=0.281 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, HTML_MESSAGE=0.001, SPF_NEUTRAL=0.779, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
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 7rJyF10lwpsn for <cellar@ietfa.amsl.com>; Sun, 5 Feb 2017 15:21:36 -0800 (PST)
Received: from s172.web-hosting.com (s172.web-hosting.com [68.65.122.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CE65B12950C for <cellar@ietf.org>; Sun, 5 Feb 2017 15:21:36 -0800 (PST)
Received: from cpe-104-162-86-103.nyc.res.rr.com ([104.162.86.103]:38684 helo=[10.0.1.3]) by server172.web-hosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.87) (envelope-from <dave@dericed.com>) id 1caW7c-000XLT-4M for cellar@ietf.org; Sun, 05 Feb 2017 18:21:36 -0500
From: Dave Rice <dave@dericed.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_EBBC1A6C-7862-4AFD-9125-09563AA9652D"
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
Message-Id: <04A7F638-0E15-4949-BB49-98BD88082667@dericed.com>
Date: Sun, 05 Feb 2017 18:21:25 -0500
To: Codec Encoding for LossLess Archiving and Realtime transmission <cellar@ietf.org>
X-Mailer: Apple Mail (2.3259)
X-OutGoing-Spam-Status: No, score=-2.9
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server172.web-hosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - dericed.com
X-Get-Message-Sender-Via: server172.web-hosting.com: authenticated_id: dave@dericed.com
X-Authenticated-Sender: server172.web-hosting.com: dave@dericed.com
X-Source:
X-Source-Args:
X-Source-Dir:
X-From-Rewrite: unmodified, already matched
Archived-At: <https://mailarchive.ietf.org/arch/msg/cellar/GyOdbtO1xFaj9bt8KZFSYwZ3Zc8>
Subject: [Cellar] mkv ColourSpace and uncompressed video
X-BeenThere: cellar@ietf.org
X-Mailman-Version: 2.1.17
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: Sun, 05 Feb 2017 23:21:38 -0000

Hi cellar,

I’m hoping to clarify the use of uncompressed video in Matroska and find a way to avoid muxing errors such as https://github.com/FFmpeg/FFmpeg/blob/8c1342e631d635f6cad13f9374c4f2005c22b9e5/libavformat/matroskaenc.c#L1117-L1118 <https://github.com/FFmpeg/FFmpeg/blob/8c1342e631d635f6cad13f9374c4f2005c22b9e5/libavformat/matroskaenc.c#L1117-L1118>.

Currently Matroska supports a Codec ID of V_Uncompressed which relies on the ColourSpace Element to detail how the uncompressed video is stored. There is not much documentation here but the ColourSpace references a value in AVI (which seems to be the biCompression value of BITMAPINFOHEADER. I’d like to clean up this documentation but would like something more clear than a vague reference to AVI.

Is there a reliable authority of fourcc’s that we can reference to uncompressed video or should ColourSpace be defined with an enumeration list which provides a list of value (such as I420, NV12, NV21, RGBA, UYVY, Y41B, Y42B, Y800, YUV9, YUY2, YVYU) along with their definitions?

Also I can only find occasions of ColourSpace used when the Codec is V_Uncompressed. Are there instances when it is valid to use ColourSpace when the Codec ID is not V_Uncompressed. Was there any reason that ColourSpace was used to store the fourcc, rather than using CodecPrivate as done with VFW?

Dave Rice