gstreamer/gst/mxf/mxfquark.c
Sebastian Dröge 28c11b2762 mxf: Add support for parsing filler structural components
This does not add support for actually producing filler data
if there's a filler component in a timeline.
2012-12-05 12:24:30 +01:00

212 lines
4.8 KiB
C

/* GStreamer
* Copyright (C) <2009> Sebastian Dröge <sebastian.droege@collabora.co.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
* Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "mxfquark.h"
static const gchar *_quark_strings[] = {
"instance-uid",
"generation-uid",
"other-tags",
"tag",
"data",
"preface",
"last-modified-date",
"version",
"object-model-version",
"primary-package",
"identifications",
"content-storage",
"operational-pattern",
"essence-containers",
"dm-schemes",
"identification",
"this-generation-uid",
"company-name",
"product-name",
"product-version",
"version-string",
"product-uid",
"modification-date",
"toolkit-version",
"platform",
"packages",
"essence-container-data",
"linked-package",
"index-sid",
"body-sid",
"package-uid",
"name",
"package-creation-date",
"package-modified-date",
"tracks",
"material-package",
"source-package",
"descriptor",
"track-id",
"track-number",
"track-name",
"sequence",
"timeline-track",
"edit-rate",
"origin",
"event-track",
"event-edit-rate",
"event-origin",
"static-track",
"data-definition",
"duration",
"structural-components",
"timecode-component",
"start-timecode",
"rounded-timecode-base",
"drop-frame",
"source-clip",
"start-position",
"source-track-id",
"dm-source-clip",
"track-ids",
"dm-segment",
"event-start-position",
"event-comment",
"dm-framework",
"locators",
"file-descriptor",
"linked-track-id",
"sample-rate",
"container-duration",
"essence-container",
"codec",
"generic-picture-essence-descriptor",
"signal-standard",
"frame-layout",
"stored-width",
"stored-height",
"stored-f2-offset",
"sampled-width",
"sampled-height",
"sampled-x-offset",
"sampled-y-offset",
"display-height",
"display-width",
"display-x-offset",
"display-y-offset",
"display-f2-offset",
"aspect-ratio",
"active-format-descriptor",
"video-line-map-0",
"video-line-map-1",
"alpha-transparency",
"capture-gamma",
"image-alignment-offset",
"image-start-offset",
"image-end-offset",
"field-dominance",
"picture-essence-coding",
"cdci-picture-essence-descriptor",
"component-depth",
"horizontal-subsampling",
"vertical-subsampling",
"color-siting",
"reversed-byte-order",
"padding-bits",
"alpha-sample-depth",
"black-ref-level",
"white-ref-level",
"color-range",
"rgba-picture-essence-descriptor",
"component-max-ref",
"component-min-ref",
"alpha-max-ref",
"alpha-min-ref",
"scanning-direction",
"pixel-layout",
"generic-sound-essence-descriptor",
"audio-sampling-rate",
"locked",
"audio-ref-level",
"electro-spatial-formulation",
"channel-count",
"quantization-bits",
"dial-norm",
"sound-essence-compression",
"generic-data-essence-descriptor",
"data-essence-coding",
"multiple-descriptor",
"sub-descriptors",
"text-locator",
"locator-name",
"network-locator",
"url-string",
"wave-audio-essence-descriptor",
"block-align",
"sequence-offset",
"avg-bps",
"channel-assignment",
"peak-envelope-version",
"peak-envelope-format",
"points-per-peak-value",
"peak-envelope-block-size",
"peak-channels",
"peak-frames",
"peak-of-peaks-position",
"peak-envelope-timestamp",
"peak-envelope-data",
"aes3-audio-essence-descriptor",
"emphasis",
"block-start-offset",
"auxiliary-bits-mode",
"channel-status-mode",
"fixed-channel-status-data",
"user-data-mode",
"fixed-user-data",
"linked-timecode-track-id",
"stream-number",
"mpeg-video-descriptor",
"single-sequence",
"const-b-frames",
"coded-content-type",
"low-delay",
"closed-gop",
"identical-gop",
"max-gop",
"b-picture-count",
"bitrate",
"profile-and-level",
"filler",
};
GQuark _mxf_quark_table[MXF_QUARK_MAX];
void
mxf_quark_initialize (void)
{
gint i;
if (G_N_ELEMENTS (_quark_strings) != MXF_QUARK_MAX)
g_warning ("the quark table is not consistent! %d != %d",
(int) G_N_ELEMENTS (_quark_strings), MXF_QUARK_MAX);
for (i = 0; i < MXF_QUARK_MAX; i++) {
_mxf_quark_table[i] = g_quark_from_static_string (_quark_strings[i]);
}
}