libdvbpsi
1.3.0
|
00001 /***************************************************************************** 00002 * dr_7c.h 00003 * Copyright (c) 2012 VideoLAN 00004 * $Id$ 00005 * 00006 * Authors: Jean-Paul Saman <jpsaman@videolan.org> 00007 * 00008 * This library is free software; you can redistribute it and/or 00009 * modify it under the terms of the GNU Lesser General Public 00010 * License as published by the Free Software Foundation; either 00011 * version 2.1 of the License, or (at your option) any later version. 00012 * 00013 * This library is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 * Lesser General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU Lesser General Public 00019 * License along with this library; if not, write to the Free Software 00020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00021 * 00022 *****************************************************************************/ 00023 00033 #ifndef _DVBPSI_DR_7C_H_ 00034 #define _DVBPSI_DR_7c_H_ 00035 00036 #include "types/aac_profile.h" 00037 00038 #ifdef __cplusplus 00039 extern "C" { 00040 #endif 00041 00054 typedef enum dvbpsi_aac_type_s 00055 { 00056 DVBPSI_AAC_RESERVED0 = 0x00, 00057 DVBPSI_HE_AAC_MONO = 0x01, 00058 DVBPSI_AAC_RESERVED1 = 0x02, 00059 DVBPSI_HE_AAC_STEREO = 0x03, 00060 DVBPSI_AAC_RESERVED2 = 0x04, 00061 DVBPSI_HE_AAC_SURROUND = 0x05, 00062 DVBPSI_AAC_RESERVED3 = 0x06, 00063 DVBPSI_HE_AAC_IMPAIRED = 0x40, 00065 DVBPSI_HE_AAC_HEARING = 0x41, 00066 DVBPSI_HE_AAC_MIXED = 0x42, 00068 DVBPSI_HE_AAC_V2_STEREO = 0x43, 00069 DVBPSI_HE_AAC_V2_IMPAIRED = 0x44, 00071 DVBPSI_HE_AAC_V2_HEARING = 0x45, 00072 DVBPSI_HE_AAC_V2_MIXED = 0x46, 00074 DVBPSI_HE_AAC_MIXED_IMPAIRED = 0x47, 00076 DVBPSI_HE_AAC_BROADCAST_MIXED_IMPAIRED = 0x48, 00078 DVBPSI_HE_AAC_V2_MIXED_IMPAIRED = 0x49, 00080 DVBPSI_HE_AAC_V2_BROADCAST_MIXED_IMPAIRED = 0x4A, 00082 DVBPSI_AAC_RESERVED4 = 0x4B, 00083 DVBPSI_AAC_USER = 0xB0, 00084 DVBPSI_AAC_RESERVED5 = 0xFF 00085 } dvbpsi_aac_type_t; 00086 00097 typedef struct dvbpsi_aac_dr_s 00098 { 00099 dvbpsi_aac_profile_and_level_t i_profile_and_level; 00104 bool b_type; 00105 dvbpsi_aac_type_t i_type; 00107 uint8_t i_additional_info_length; 00108 uint8_t *p_additional_info; 00112 } dvbpsi_aac_dr_t; 00113 00114 /***************************************************************************** 00115 * dvbpsi_DecodeAACDr 00116 *****************************************************************************/ 00124 dvbpsi_aac_dr_t* dvbpsi_DecodeAACDr(dvbpsi_descriptor_t *p_descriptor); 00125 00126 /***************************************************************************** 00127 * dvbpsi_GenAACDr 00128 *****************************************************************************/ 00137 dvbpsi_descriptor_t *dvbpsi_GenAACDr(dvbpsi_aac_dr_t *p_decoded, bool b_duplicate); 00138 00139 #ifdef __cplusplus 00140 }; 00141 #endif 00142 00143 #else 00144 #error "Multiple inclusions of dr_7c.h" 00145 #endif