1 /* 2 * gstmpegtsdescriptor.h - 3 * Copyright (C) 2020 Edward Hervey 4 * 5 * Authors: 6 * Edward Hervey <edward@centricular.com> 7 * 8 * This library is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU Library General Public 10 * License as published by the Free Software Foundation; either 11 * version 2 of the License, or (at your option) any later version. 12 * 13 * This library is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * Library General Public License for more details. 17 * 18 * You should have received a copy of the GNU Library General Public 19 * License along with this library; if not, write to the 20 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 21 * Boston, MA 02110-1301, USA. 22 */ 23 24 #ifndef GST_ATSC_DESCRIPTOR_H 25 #define GST_ATSC_DESCRIPTOR_H 26 27 #include <gst/gst.h> 28 #include <gst/mpegts/mpegts-prelude.h> 29 30 G_BEGIN_DECLS 31 32 /** 33 * SECTION:gst-atsc-descriptor 34 * @title: ATSC variants of MPEG-TS descriptors 35 * @short_description: Descriptors for the various ATSC specifications 36 * @include: gst/mpegts/mpegts.h 37 * 38 * This contains the various descriptors defined by the ATSC specifications 39 */ 40 41 /** 42 * GstMpegtsATSCDescriptorType: 43 * 44 * These values correspond to the registered descriptor type from 45 * the various ATSC specifications. 46 * 47 * Consult the relevant specifications for more details. 48 */ 49 typedef enum { 50 /* ATSC A/65 2009 */ 51 GST_MTS_DESC_ATSC_STUFFING = 0x80, 52 GST_MTS_DESC_ATSC_AC3 = 0x81, 53 GST_MTS_DESC_ATSC_CAPTION_SERVICE = 0x86, 54 GST_MTS_DESC_ATSC_CONTENT_ADVISORY = 0x87, 55 GST_MTS_DESC_ATSC_EXTENDED_CHANNEL_NAME = 0xA0, 56 GST_MTS_DESC_ATSC_SERVICE_LOCATION = 0xA1, 57 GST_MTS_DESC_ATSC_TIME_SHIFTED_SERVICE = 0xA2, 58 GST_MTS_DESC_ATSC_COMPONENT_NAME = 0xA3, 59 GST_MTS_DESC_ATSC_DCC_DEPARTING_REQUEST = 0xA8, 60 GST_MTS_DESC_ATSC_DCC_ARRIVING_REQUEST = 0xA9, 61 GST_MTS_DESC_ATSC_REDISTRIBUTION_CONTROL = 0xAA, 62 GST_MTS_DESC_ATSC_GENRE = 0xAB, 63 GST_MTS_DESC_ATSC_PRIVATE_INFORMATION = 0xAD, 64 GST_MTS_DESC_ATSC_EAC3 = 0xCC, 65 66 /* ATSC A/53:3 2009 */ 67 GST_MTS_DESC_ATSC_ENHANCED_SIGNALING = 0xB2, 68 69 /* ATSC A/90 */ 70 GST_MTS_DESC_ATSC_DATA_SERVICE = 0xA4, 71 GST_MTS_DESC_ATSC_PID_COUNT = 0xA5, 72 GST_MTS_DESC_ATSC_DOWNLOAD_DESCRIPTOR = 0xA6, 73 GST_MTS_DESC_ATSC_MULTIPROTOCOL_ENCAPSULATION = 0xA7, 74 GST_MTS_DESC_ATSC_MODULE_LINK = 0xB4, 75 GST_MTS_DESC_ATSC_CRC32 = 0xB5, 76 GST_MTS_DESC_ATSC_GROUP_LINK = 0xB8, 77 } GstMpegtsATSCDescriptorType; 78 79 /* For backwards compatibility */ 80 /** 81 * GST_MTS_DESC_AC3_AUDIO_STREAM: (skip) (attributes doc.skip=true) 82 */ 83 #define GST_MTS_DESC_AC3_AUDIO_STREAM GST_MTS_DESC_ATSC_AC3 84 85 G_END_DECLS 86 87 #endif 88