libgpac
Documentation of the core library of GPAC
constants.h File Reference

Most constants defined in GPAC are in this file. More...

#include <gpac/setup.h>
+ Include dependency graph for constants.h:
+ This graph shows which files directly or indirectly include this file:

Macros

#define GF_4CC(a, b, c, d)   ((((u32)a)<<24)|(((u32)b)<<16)|(((u32)c)<<8)|(d))
 
#define GF_AUDIO_CH_SCREEN_EDGE_LEFT   0x2000000000ULL
 
#define GF_AUDIO_CH_SCREEN_EDGE_RIGHT   0x4000000000ULL
 
#define GF_AUDIO_CH_BACK_SURROUND_LEFT   0x20000000000ULL
 
#define GF_AUDIO_CH_BACK_SURROUND_RIGHT   0x40000000000ULL
 
#define GF_HLS_SAMPLE_AES_SCHEME   GF_4CC('s','a','e','s')
 
#define GF_RTP_TX3G_SIDX_OFFSET   129
 
#define RFC6381_CODEC_NAME_SIZE_MAX   100
 
#define GF_ISOM_UDTA_GPAC_SRD   GF_4CC('G','S','R','D')
 

Enumerations

enum  {
  GF_STREAM_UNKNOWN = 0 , GF_STREAM_OD = 0x01 , GF_STREAM_OCR = 0x02 , GF_STREAM_SCENE = 0x03 ,
  GF_STREAM_VISUAL = 0x04 , GF_STREAM_AUDIO = 0x05 , GF_STREAM_MPEG7 = 0x06 , GF_STREAM_IPMP = 0x07 ,
  GF_STREAM_OCI = 0x08 , GF_STREAM_MPEGJ = 0x09 , GF_STREAM_INTERACT = 0x0A , GF_STREAM_IPMP_TOOL = 0x0B ,
  GF_STREAM_FONT = 0x0C , GF_STREAM_TEXT = 0x0D , GF_STREAM_ND_SUBPIC = 0x38 , GF_STREAM_PRIVATE_SCENE = 0x20 ,
  GF_STREAM_METADATA = 0x21 , GF_STREAM_ENCRYPTED = 0xE0 , GF_STREAM_FILE = 0xE1
}
 Supported media stream types. More...
 
enum  GF_PixelFormat {
  GF_PIXEL_GREYSCALE = GF_4CC('G','R','E','Y') , GF_PIXEL_ALPHAGREY = GF_4CC('G','R','A','L') , GF_PIXEL_GREYALPHA = GF_4CC('A','L','G','R') , GF_PIXEL_RGB_444 = GF_4CC('R','4','4','4') ,
  GF_PIXEL_RGB_555 = GF_4CC('R','5','5','5') , GF_PIXEL_RGB_565 = GF_4CC('R','5','6','5') , GF_PIXEL_RGB = GF_4CC('R','G','B','3') , GF_PIXEL_BGR = GF_4CC('B','G','R','3') ,
  GF_PIXEL_RGBX = GF_4CC('R','G','B','4') , GF_PIXEL_BGRX = GF_4CC('B','G','R','4') , GF_PIXEL_XRGB = GF_4CC('R','G','B','X') , GF_PIXEL_XBGR = GF_4CC('B','G','R','X') ,
  GF_PIXEL_ARGB = GF_4CC('A','R','G','B') , GF_PIXEL_RGBA = GF_4CC('R','G','B', 'A') , GF_PIXEL_BGRA = GF_4CC('B','G','R','A') , GF_PIXEL_ABGR = GF_4CC('A','B','G','R') ,
  GF_PIXEL_RGBD = GF_4CC('R', 'G', 'B', 'D') , GF_PIXEL_RGBDS = GF_4CC('3', 'C', 'D', 'S') , GF_PIXEL_RGB_DEPTH = GF_4CC('R', 'G', 'B', 'd') , GF_PIXEL_UNCV = GF_4CC('u', 'n', 'c', 'v') ,
  GF_PIXEL_YUYV = GF_4CC('Y','U','Y','V') , GF_PIXEL_YVYU = GF_4CC('Y','V','Y','U') , GF_PIXEL_UYVY = GF_4CC('U','Y','V','Y') , GF_PIXEL_VYUY = GF_4CC('V','Y','U','Y') ,
  GF_PIXEL_YUYV_10 = GF_4CC('Y','U','Y','L') , GF_PIXEL_YVYU_10 = GF_4CC('Y','V','Y','L') , GF_PIXEL_UYVY_10 = GF_4CC('U','Y','V','L') , GF_PIXEL_VYUY_10 = GF_4CC('V','Y','U','L') ,
  GF_PIXEL_YUV = GF_4CC('Y','U','1','2') , GF_PIXEL_YVU = GF_4CC('Y','V','1','2') , GF_PIXEL_YUV_10 = GF_4CC('Y','0','1','0') , GF_PIXEL_YUVA = GF_4CC('Y', 'U', 'V', 'A') ,
  GF_PIXEL_YUVD = GF_4CC('Y', 'U', 'V', 'D') , GF_PIXEL_NV21 = GF_4CC('N','V','2','1') , GF_PIXEL_NV21_10 = GF_4CC('N','2','1','0') , GF_PIXEL_NV12 = GF_4CC('N','V','1','2') ,
  GF_PIXEL_NV12_10 = GF_4CC('N','1','2','0') , GF_PIXEL_YUV422 = GF_4CC('Y','4','4','2') , GF_PIXEL_YUV422_10 = GF_4CC('Y','2','1','0') , GF_PIXEL_YUVA444 = GF_4CC('Y','A','4','4') ,
  GF_PIXEL_YUV444 = GF_4CC('Y','4','4','4') , GF_PIXEL_YUV444_10 = GF_4CC('Y','4','1','0') , GF_PIXEL_YUV444_PACK = GF_4CC('Y','U','V','4') , GF_PIXEL_VYU444_PACK = GF_4CC('V','Y','U','4') ,
  GF_PIXEL_YUVA444_PACK = GF_4CC('Y','A','4','p') , GF_PIXEL_UYVA444_PACK = GF_4CC('U','Y','V','A') , GF_PIXEL_YUV444_10_PACK = GF_4CC('Y','4','1','p') , GF_PIXEL_V210 = GF_4CC('v','2','1','0') ,
  GF_PIXEL_GL_EXTERNAL = GF_4CC('E','X','G','L')
}
 Pixel Formats. More...
 
enum  GF_CodecID {
  GF_CODECID_NONE = 0 , GF_CODECID_BIFS = 0x01 , GF_CODECID_OD_V1 = 0x01 , GF_CODECID_BIFS_V2 = 0x02 ,
  GF_CODECID_OD_V2 = 0x02 , GF_CODECID_INTERACT = 0x03 , GF_CODECID_BIFS_EXTENDED = 0x04 , GF_CODECID_AFX = 0x05 ,
  GF_CODECID_FONT = 0x06 , GF_CODECID_SYNTHESIZED_TEXTURE = 0x07 , GF_CODECID_TEXT_MPEG4 = 0x08 , GF_CODECID_LASER = 0x09 ,
  GF_CODECID_SAF = 0x0A , GF_CODECID_MPEG4_PART2 = 0x20 , GF_CODECID_AVC = 0x21 , GF_CODECID_AVC_PS = 0x22 ,
  GF_CODECID_HEVC = 0x23 , GF_CODECID_SVC = 0x24 , GF_CODECID_LHVC = 0x25 , GF_CODECID_MVC = 0x29 ,
  GF_CODECID_AAC_MPEG4 = 0x40 , GF_CODECID_MPEG2_SIMPLE = 0x60 , GF_CODECID_MPEG2_MAIN = 0x61 , GF_CODECID_MPEG2_SNR = 0x62 ,
  GF_CODECID_MPEG2_SPATIAL = 0x63 , GF_CODECID_MPEG2_HIGH = 0x64 , GF_CODECID_MPEG2_422 = 0x65 , GF_CODECID_AAC_MPEG2_MP = 0x66 ,
  GF_CODECID_AAC_MPEG2_LCP = 0x67 , GF_CODECID_AAC_MPEG2_SSRP = 0x68 , GF_CODECID_MPEG2_PART3 = 0x69 , GF_CODECID_MPEG1 = 0x6A ,
  GF_CODECID_MPEG_AUDIO = 0x6B , GF_CODECID_JPEG = 0x6C , GF_CODECID_PNG = 0x6D , GF_CODECID_LAST_MPEG4_MAPPING = 0xFF ,
  GF_CODECID_J2K = GF_4CC('j','p','2','k') , GF_CODECID_S263 = GF_4CC('s','2','6','3') , GF_CODECID_H263 = GF_4CC('h','2','6','3') , GF_CODECID_HEVC_TILES = GF_4CC( 'h', 'v', 't', '1' ) ,
  GF_CODECID_HEVC_MERGE = GF_4CC( 'h', 'v', 'c', 'm' ) , GF_CODECID_EVRC = GF_4CC('s','e','v','c') , GF_CODECID_SMV = GF_4CC('s','s','m','v') , GF_CODECID_QCELP = GF_4CC('s','q','c','p') ,
  GF_CODECID_AMR = GF_4CC('s','a','m','r') , GF_CODECID_AMR_WB = GF_4CC('s','a','w','b') , GF_CODECID_EVRC_PV = GF_4CC('p','e','v','c') , GF_CODECID_SMPTE_VC1 = GF_4CC('v','c','-','1') ,
  GF_CODECID_DIRAC = GF_4CC('d','r','a','c') , GF_CODECID_AC3 = GF_4CC('a','c','-','3') , GF_CODECID_EAC3 = GF_4CC('e','c','-','3') , GF_CODECID_TRUEHD = GF_4CC('m','l','p','a') ,
  GF_CODECID_DRA = GF_4CC('d','r','a','1') , GF_CODECID_G719 = GF_4CC('g','7','1','9') , GF_CODECID_DTS_EXPRESS_LBR = GF_4CC('d','t','s','e') , GF_CODECID_DTS_CA = GF_4CC('d','t','s','c') ,
  GF_CODECID_DTS_HD_HR_MASTER = GF_4CC('d','t','s','h') , GF_CODECID_DTS_HD_LOSSLESS = GF_4CC('d','t','s','l') , GF_CODECID_DTS_X = GF_4CC('d','t','s','x') , GF_CODECID_DTS_Y = GF_4CC('d','t','s','y') ,
  GF_CODECID_DVB_EIT = GF_4CC('e','i','t',' ') , GF_CODECID_SVG = GF_4CC('s','g','g',' ') , GF_CODECID_SVG_GZ = GF_4CC('s','v','g','z') , GF_CODECID_DIMS = GF_4CC('d','i','m','s') ,
  GF_CODECID_WEBVTT = GF_4CC('w','v','t','t') , GF_CODECID_SIMPLE_TEXT = GF_4CC('s','t','x','t') , GF_CODECID_META_TEXT = GF_4CC('m','e','t','t') , GF_CODECID_META_XML = GF_4CC('m','e','t','x') ,
  GF_CODECID_SUBS_TEXT = GF_4CC('s','b','t','t') , GF_CODECID_SUBS_XML = GF_4CC('s','t','p','p') , GF_CODECID_TX3G = GF_4CC( 't', 'x', '3', 'g' ) , GF_CODECID_SUBS_SSA = GF_4CC( 'a', 's', 's', 'a' ) ,
  GF_CODECID_DVB_SUBS = GF_4CC( 'd', 'v', 'b', 's' ) , GF_CODECID_DVB_TELETEXT = GF_4CC( 'd', 'v', 'b', 't' ) , GF_CODECID_SCTE35 = GF_4CC( 's', 'c', '3', '5' ) , GF_CODECID_THEORA = GF_4CC('t','h','e','u') ,
  GF_CODECID_VORBIS = GF_4CC('v','o','r','b') , GF_CODECID_FLAC = GF_4CC('f','l','a','c') , GF_CODECID_SPEEX = GF_4CC('s','p','e','x') , GF_CODECID_OPUS = GF_4CC('O','p','u','s') ,
  GF_CODECID_SUBPIC = GF_4CC('s','u','b','p') , GF_CODECID_ADPCM = GF_4CC('A','P','C','M') , GF_CODECID_IBM_CVSD = GF_4CC('C','S','V','D') , GF_CODECID_ALAW = GF_4CC('A','L','A','W') ,
  GF_CODECID_MULAW = GF_4CC('M','L','A','W') , GF_CODECID_OKI_ADPCM = GF_4CC('O','P','C','M') , GF_CODECID_DVI_ADPCM = GF_4CC('D','P','C','M') , GF_CODECID_DIGISTD = GF_4CC('D','S','T','D') ,
  GF_CODECID_YAMAHA_ADPCM = GF_4CC('Y','P','C','M') , GF_CODECID_DSP_TRUESPEECH = GF_4CC('T','S','P','E') , GF_CODECID_GSM610 = GF_4CC('G','6','1','0') , GF_CODECID_IBM_MULAW = GF_4CC('I','U','L','W') ,
  GF_CODECID_IBM_ALAW = GF_4CC('I','A','L','W') , GF_CODECID_IBM_ADPCM = GF_4CC('I','P','C','M') , GF_CODECID_FLASH = GF_4CC( 'f', 'l', 's', 'h' ) , GF_CODECID_RAW = GF_4CC('R','A','W','M') ,
  GF_CODECID_RAW_UNCV = GF_4CC('U','N','C','V') , GF_CODECID_AV1 = GF_4CC('A','V','1',' ') , GF_CODECID_VP8 = GF_4CC('V','P','0','8') , GF_CODECID_VP9 = GF_4CC('V','P','0','9') ,
  GF_CODECID_VP10 = GF_4CC('V','P','1','0') , GF_CODECID_MPHA = GF_4CC('m','p','h','a') , GF_CODECID_MHAS = GF_4CC('m','h','a','s') , GF_CODECID_APCH = GF_4CC( 'a', 'p', 'c', 'h' ) ,
  GF_CODECID_APCO = GF_4CC( 'a', 'p', 'c', 'o' ) , GF_CODECID_APCN = GF_4CC( 'a', 'p', 'c', 'n' ) , GF_CODECID_APCS = GF_4CC( 'a', 'p', 'c', 's' ) , GF_CODECID_AP4X = GF_4CC( 'a', 'p', '4', 'x' ) ,
  GF_CODECID_AP4H = GF_4CC( 'a', 'p', '4', 'h' ) , GF_CODECID_TMCD = GF_4CC('t','m','c','d') , GF_CODECID_EVTE = GF_4CC('e','v','t','e') , GF_CODECID_FFV1 = GF_4CC('f','f','v','1') ,
  GF_CODECID_FFMPEG = GF_4CC('F','F','I','D') , GF_CODECID_VVC = GF_4CC('v','v','c',' ') , GF_CODECID_VVC_SUBPIC = GF_4CC('v','v','c','s') , GF_CODECID_USAC = GF_4CC('u','s','a','c') ,
  GF_CODECID_MPEG_AUDIO_L1 = GF_4CC('m','p','a','1') , GF_CODECID_MSPEG4_V3 = GF_4CC('D','I','V','3') , GF_CODECID_ALAC = GF_4CC('A','L','A','C') , GF_CODECID_DNXHD = GF_4CC('D','N','x','H') ,
  GF_CODECID_FAKE_MP2T = GF_4CC('M','P','2','T')
}
 Codec IDs. More...
 
enum  {
  GPAC_AFX_3DMC = 0x00 , GPAC_AFX_WAVELET_SUBDIVISION = 0x01 , GPAC_AFX_MESHGRID = 0x02 , GPAC_AFX_COORDINATE_INTERPOLATOR = 0x03 ,
  GPAC_AFX_ORIENTATION_INTERPOLATOR = 0x04 , GPAC_AFX_POSITION_INTERPOLATOR = 0x05 , GPAC_AFX_OCTREE_IMAGE = 0x06 , GPAC_AFX_BBA = 0x07 ,
  GPAC_AFX_POINT_TEXTURE = 0x08 , GPAC_AFX_3DMC_EXT = 0x09 , GPAC_AFX_FOOTPRINT = 0x0A , GPAC_AFX_ANIMATED_MESH = 0x0B ,
  GPAC_AFX_SCALABLE_COMPLEXITY = 0x0C
}
 AFX Object Code. More...
 
enum  {
  GF_AUDIO_CH_FRONT_LEFT = (1) , GF_AUDIO_CH_FRONT_RIGHT = (1<<1) , GF_AUDIO_CH_FRONT_CENTER = (1<<2) , GF_AUDIO_CH_LFE = (1<<3) ,
  GF_AUDIO_CH_SURROUND_LEFT = (1 << 4) , GF_AUDIO_CH_SURROUND_RIGHT = (1 << 5) , GF_AUDIO_CH_FRONT_CENTER_LEFT = (1 << 6) , GF_AUDIO_CH_FRONT_CENTER_RIGHT = (1 << 7) ,
  GF_AUDIO_CH_REAR_SURROUND_LEFT = (1<<8) , GF_AUDIO_CH_REAR_SURROUND_RIGHT = (1<<9) , GF_AUDIO_CH_REAR_CENTER = (1 << 10) , GF_AUDIO_CH_SURROUND_DIRECT_LEFT = (1 << 11) ,
  GF_AUDIO_CH_SURROUND_DIRECT_RIGHT = (1 << 12) , GF_AUDIO_CH_SIDE_SURROUND_LEFT = (1 << 13) , GF_AUDIO_CH_SIDE_SURROUND_RIGHT = (1 << 14) , GF_AUDIO_CH_WIDE_FRONT_LEFT = (1 << 15) ,
  GF_AUDIO_CH_WIDE_FRONT_RIGHT = (1 << 16) , GF_AUDIO_CH_FRONT_TOP_LEFT = (1 << 17) , GF_AUDIO_CH_FRONT_TOP_RIGHT = (1 << 18) , GF_AUDIO_CH_FRONT_TOP_CENTER = (1 << 19) ,
  GF_AUDIO_CH_SURROUND_TOP_LEFT = (1 << 20) , GF_AUDIO_CH_SURROUND_TOP_RIGHT = (1 << 21) , GF_AUDIO_CH_REAR_CENTER_TOP = (1 << 22) , GF_AUDIO_CH_SIDE_SURROUND_TOP_LEFT = (1 << 23) ,
  GF_AUDIO_CH_SIDE_SURROUND_TOP_RIGHT = (1 << 24) , GF_AUDIO_CH_CENTER_SURROUND_TOP = (1 << 25) , GF_AUDIO_CH_LFE2 = (1 << 26) , GF_AUDIO_CH_FRONT_BOTTOM_LEFT = (1 << 27) ,
  GF_AUDIO_CH_FRONT_BOTTOM_RIGHT = (1 << 28) , GF_AUDIO_CH_FRONT_BOTTOM_CENTER = (1 << 29) , GF_AUDIO_CH_SURROUND_BOTTOM_LEFT = (1 << 30) , GF_AUDIO_CH_SURROUND_BOTTOM_RIGHT = 0x80000000
}
 Audio Channel Configuration. More...
 
enum  GF_AudioFormat {
  GF_AUDIO_FMT_U8 = 1 , GF_AUDIO_FMT_S16 , GF_AUDIO_FMT_S16_BE , GF_AUDIO_FMT_S32 ,
  GF_AUDIO_FMT_S32_BE , GF_AUDIO_FMT_FLT , GF_AUDIO_FMT_FLT_BE , GF_AUDIO_FMT_DBL ,
  GF_AUDIO_FMT_DBL_BE , GF_AUDIO_FMT_S24 , GF_AUDIO_FMT_S24_BE , GF_AUDIO_FMT_LAST_PACKED ,
  GF_AUDIO_FMT_U8P , GF_AUDIO_FMT_S16P , GF_AUDIO_FMT_S32P , GF_AUDIO_FMT_FLTP ,
  GF_AUDIO_FMT_DBLP , GF_AUDIO_FMT_S24P
}
 Audio Sample format. More...
 
enum  GF_ColorPrimaries {
  GF_COLOR_PRIM_RESERVED0 = 0 , GF_COLOR_PRIM_BT709 = 1 , GF_COLOR_PRIM_UNSPECIFIED = 2 , GF_COLOR_PRIM_RESERVED = 3 ,
  GF_COLOR_PRIM_BT470M = 4 , GF_COLOR_PRIM_BT470BG = 5 , GF_COLOR_PRIM_SMPTE170M = 6 , GF_COLOR_PRIM_SMPTE240M = 7 ,
  GF_COLOR_PRIM_FILM = 8 , GF_COLOR_PRIM_BT2020 = 9 , GF_COLOR_PRIM_SMPTE428 = 10 , GF_COLOR_PRIM_SMPTE431 = 11 ,
  GF_COLOR_PRIM_SMPTE432 = 12 , GF_COLOR_PRIM_EBU3213 = 22
}
 
enum  GF_ColorTransferCharacteristic {
  GF_COLOR_TRC_RESERVED0 = 0 , GF_COLOR_TRC_BT709 = 1 , GF_COLOR_TRC_UNSPECIFIED = 2 , GF_COLOR_TRC_RESERVED = 3 ,
  GF_COLOR_TRC_GAMMA22 = 4 , GF_COLOR_TRC_GAMMA28 = 5 , GF_COLOR_TRC_SMPTE170M = 6 , GF_COLOR_TRC_SMPTE240M = 7 ,
  GF_COLOR_TRC_LINEAR = 8 , GF_COLOR_TRC_LOG = 9 , GF_COLOR_TRC_LOG_SQRT = 10 , GF_COLOR_TRC_IEC61966_2_4 = 11 ,
  GF_COLOR_TRC_BT1361_ECG = 12 , GF_COLOR_TRC_IEC61966_2_1 = 13 , GF_COLOR_TRC_BT2020_10 = 14 , GF_COLOR_TRC_BT2020_12 = 15 ,
  GF_COLOR_TRC_SMPTE2084 = 16 , GF_COLOR_TRC_SMPTE428 = 17 , GF_COLOR_TRC_ARIB_STD_B67 = 18
}
 
enum  GF_ColorMatrixCoefficients {
  GF_COLOR_MX_RGB = 0 , GF_COLOR_MX_BT709 = 1 , GF_COLOR_MX_UNSPECIFIED = 2 , GF_COLOR_MX_RESERVED = 3 ,
  GF_COLOR_MX_FCC47 = 4 , GF_COLOR_MX_BT470BG = 5 , GF_COLOR_MX_SMPTE170M = 6 , GF_COLOR_MX_SMPTE240M = 7 ,
  GF_COLOR_MX_YCGCO = 8 , GF_COLOR_MX_BT2020_NCL = 9 , GF_COLOR_MX_BT2020_CL = 10 , GF_COLOR_MX_SMPTE2085 = 11
}
 
enum  GF_ChromaLocation {
  GF_CHROMALOC_UNKNOWN =0 , GF_CHROMALOC_LEFT , GF_CHROMALOC_CENTER , GF_CHROMALOC_TOPLEFT ,
  GF_CHROMALOC_TOP , GF_CHROMALOC_BOTTOMLEFT , GF_CHROMALOC_BOTTOM , GF_CHROMALOC_DV420
}
 
enum  {
  GF_DIMS_UNIT_S = 1 , GF_DIMS_UNIT_M = 1<<1 , GF_DIMS_UNIT_I = 1<<2 , GF_DIMS_UNIT_D = 1<<3 ,
  GF_DIMS_UNIT_P = 1<<4 , GF_DIMS_UNIT_C = 1<<5
}
 DIMS Unit header flags. More...
 
enum  {
  GF_AVC_NALU_NON_IDR_SLICE = 1 , GF_AVC_NALU_DP_A_SLICE = 2 , GF_AVC_NALU_DP_B_SLICE = 3 , GF_AVC_NALU_DP_C_SLICE = 4 ,
  GF_AVC_NALU_IDR_SLICE = 5 , GF_AVC_NALU_SEI = 6 , GF_AVC_NALU_SEQ_PARAM = 7 , GF_AVC_NALU_PIC_PARAM = 8 ,
  GF_AVC_NALU_ACCESS_UNIT = 9 , GF_AVC_NALU_END_OF_SEQ = 10 , GF_AVC_NALU_END_OF_STREAM = 11 , GF_AVC_NALU_FILLER_DATA = 12 ,
  GF_AVC_NALU_SEQ_PARAM_EXT = 13 , GF_AVC_NALU_SVC_PREFIX_NALU = 14 , GF_AVC_NALU_SVC_SUBSEQ_PARAM = 15 , GF_AVC_NALU_SLICE_AUX = 19 ,
  GF_AVC_NALU_SVC_SLICE = 20 , GF_AVC_NALU_VDRD = 24 , GF_AVC_NALU_DV_RPU = 28 , GF_AVC_NALU_DV_EL = 30 ,
  GF_AVC_NALU_FF_AGGREGATOR =30 , GF_AVC_NALU_FF_EXTRACTOR =31
}
 
enum  {
  GF_AVC_TYPE_P = 0 , GF_AVC_TYPE_B = 1 , GF_AVC_TYPE_I = 2 , GF_AVC_TYPE_SP = 3 ,
  GF_AVC_TYPE_SI = 4 , GF_AVC_TYPE2_P = 5 , GF_AVC_TYPE2_B = 6 , GF_AVC_TYPE2_I = 7 ,
  GF_AVC_TYPE2_SP = 8 , GF_AVC_TYPE2_SI = 9
}
 
enum  {
  GF_HEVC_NALU_SLICE_TRAIL_N = 0 , GF_HEVC_NALU_SLICE_TRAIL_R = 1 , GF_HEVC_NALU_SLICE_TSA_N = 2 , GF_HEVC_NALU_SLICE_TSA_R = 3 ,
  GF_HEVC_NALU_SLICE_STSA_N = 4 , GF_HEVC_NALU_SLICE_STSA_R = 5 , GF_HEVC_NALU_SLICE_RADL_N = 6 , GF_HEVC_NALU_SLICE_RADL_R = 7 ,
  GF_HEVC_NALU_SLICE_RASL_N = 8 , GF_HEVC_NALU_SLICE_RASL_R = 9 , GF_HEVC_NALU_SLICE_RSV_VCL_N10 = 10 , GF_HEVC_NALU_SLICE_RSV_VCL_N12 = 12 ,
  GF_HEVC_NALU_SLICE_RSV_VCL_N14 = 14 , GF_HEVC_NALU_SLICE_RSV_VCL_R11 = 11 , GF_HEVC_NALU_SLICE_RSV_VCL_R13 = 13 , GF_HEVC_NALU_SLICE_RSV_VCL_R15 = 15 ,
  GF_HEVC_NALU_SLICE_BLA_W_LP = 16 , GF_HEVC_NALU_SLICE_BLA_W_DLP = 17 , GF_HEVC_NALU_SLICE_BLA_N_LP = 18 , GF_HEVC_NALU_SLICE_IDR_W_DLP = 19 ,
  GF_HEVC_NALU_SLICE_IDR_N_LP = 20 , GF_HEVC_NALU_SLICE_CRA = 21 , GF_HEVC_NALU_VID_PARAM = 32 , GF_HEVC_NALU_SEQ_PARAM = 33 ,
  GF_HEVC_NALU_PIC_PARAM = 34 , GF_HEVC_NALU_ACCESS_UNIT = 35 , GF_HEVC_NALU_END_OF_SEQ = 36 , GF_HEVC_NALU_END_OF_STREAM = 37 ,
  GF_HEVC_NALU_FILLER_DATA = 38 , GF_HEVC_NALU_SEI_PREFIX = 39 , GF_HEVC_NALU_SEI_SUFFIX = 40 , GF_HEVC_NALU_FF_AGGREGATOR =48 ,
  GF_HEVC_NALU_FF_EXTRACTOR =49 , GF_HEVC_NALU_DV_RPU = 62 , GF_HEVC_NALU_DV_EL = 63
}
 
enum  {
  GF_VVC_NALU_SLICE_TRAIL = 0 , GF_VVC_NALU_SLICE_STSA = 1 , GF_VVC_NALU_SLICE_RADL = 2 , GF_VVC_NALU_SLICE_RASL = 3 ,
  GF_VVC_NALU_SLICE_IDR_W_RADL = 7 , GF_VVC_NALU_SLICE_IDR_N_LP = 8 , GF_VVC_NALU_SLICE_CRA = 9 , GF_VVC_NALU_SLICE_GDR = 10 ,
  GF_VVC_NALU_OPI = 12 , GF_VVC_NALU_DEC_PARAM = 13 , GF_VVC_NALU_VID_PARAM = 14 , GF_VVC_NALU_SEQ_PARAM = 15 ,
  GF_VVC_NALU_PIC_PARAM = 16 , GF_VVC_NALU_APS_PREFIX = 17 , GF_VVC_NALU_APS_SUFFIX = 18 , GF_VVC_NALU_PIC_HEADER = 19 ,
  GF_VVC_NALU_ACCESS_UNIT = 20 , GF_VVC_NALU_END_OF_SEQ = 21 , GF_VVC_NALU_END_OF_STREAM = 22 , GF_VVC_NALU_SEI_PREFIX = 23 ,
  GF_VVC_NALU_SEI_SUFFIX = 24 , GF_VVC_NALU_FILLER_DATA = 25
}
 
enum  GF_ID3v2FrameType {
  GF_ID3V2_FRAME_AENC = GF_4CC('A','E','N','C') , GF_ID3V2_FRAME_APIC = GF_4CC('A','P','I','C') , GF_ID3V2_FRAME_COMM = GF_4CC('C','O','M','M') , GF_ID3V2_FRAME_COMR = GF_4CC('C','O','M','R') ,
  GF_ID3V2_FRAME_ENCR = GF_4CC('E','N','C','R') , GF_ID3V2_FRAME_EQUA = GF_4CC('E','Q','U','A') , GF_ID3V2_FRAME_ETCO = GF_4CC('E','T','C','O') , GF_ID3V2_FRAME_GEOB = GF_4CC('G','E','O','B') ,
  GF_ID3V2_FRAME_GRID = GF_4CC('G','R','I','D') , GF_ID3V2_FRAME_IPLS = GF_4CC('I','P','L','S') , GF_ID3V2_FRAME_LINK = GF_4CC('L','I','N','K') , GF_ID3V2_FRAME_MCDI = GF_4CC('M','C','D','I') ,
  GF_ID3V2_FRAME_MLLT = GF_4CC('M','L','L','T') , GF_ID3V2_FRAME_OWNE = GF_4CC('O','W','N','E') , GF_ID3V2_FRAME_PRIV = GF_4CC('P','R','I','V') , GF_ID3V2_FRAME_PCNT = GF_4CC('P','C','N','T') ,
  GF_ID3V2_FRAME_POPM = GF_4CC('P','O','P','M') , GF_ID3V2_FRAME_POSS = GF_4CC('P','O','S','S') , GF_ID3V2_FRAME_RBUF = GF_4CC('R','B','U','F') , GF_ID3V2_FRAME_RVAD = GF_4CC('R','V','A','D') ,
  GF_ID3V2_FRAME_RVRB = GF_4CC('R','V','R','B') , GF_ID3V2_FRAME_SYLT = GF_4CC('S','Y','L','T') , GF_ID3V2_FRAME_SYTC = GF_4CC('S','Y','T','C') , GF_ID3V2_FRAME_TALB = GF_4CC('T','A','L','B') ,
  GF_ID3V2_FRAME_TBPM = GF_4CC('T','B','P','M') , GF_ID3V2_FRAME_TCAT = GF_4CC('T','C','A','T') , GF_ID3V2_FRAME_TCMP = GF_4CC('T','C','M','P') , GF_ID3V2_FRAME_TCOM = GF_4CC('T','C','O','M') ,
  GF_ID3V2_FRAME_TCON = GF_4CC('T','C','O','N') , GF_ID3V2_FRAME_TCOP = GF_4CC('T','C','O','P') , GF_ID3V2_FRAME_TDAT = GF_4CC('T','D','A','T') , GF_ID3V2_FRAME_TDES = GF_4CC('T','D','E','S') ,
  GF_ID3V2_FRAME_TDLY = GF_4CC('T','D','L','Y') , GF_ID3V2_FRAME_TDRC = GF_4CC('T','D','R','C') , GF_ID3V2_FRAME_TENC = GF_4CC('T','E','N','C') , GF_ID3V2_FRAME_TEXT = GF_4CC('T','E','X','T') ,
  GF_ID3V2_FRAME_TFLT = GF_4CC('T','F','L','T') , GF_ID3V2_FRAME_TIME = GF_4CC('T','I','M','E') , GF_ID3V2_FRAME_TIT1 = GF_4CC('T','I','T','1') , GF_ID3V2_FRAME_TIT2 = GF_4CC('T','I','T','2') ,
  GF_ID3V2_FRAME_TIT3 = GF_4CC('T','I','T','3') , GF_ID3V2_FRAME_TKEY = GF_4CC('T','K','E','Y') , GF_ID3V2_FRAME_TKWD = GF_4CC('T','K','W','D') , GF_ID3V2_FRAME_TLAN = GF_4CC('T','L','A','N') ,
  GF_ID3V2_FRAME_TLEN = GF_4CC('T','L','E','N') , GF_ID3V2_FRAME_TMED = GF_4CC('T','M','E','D') , GF_ID3V2_FRAME_TOAL = GF_4CC('T','O','A','L') , GF_ID3V2_FRAME_TOFN = GF_4CC('T','O','F','N') ,
  GF_ID3V2_FRAME_TOLY = GF_4CC('T','O','L','Y') , GF_ID3V2_FRAME_TOPE = GF_4CC('T','O','P','E') , GF_ID3V2_FRAME_TORY = GF_4CC('T','O','R','Y') , GF_ID3V2_FRAME_TOWN = GF_4CC('T','O','W','N') ,
  GF_ID3V2_FRAME_TPE1 = GF_4CC('T','P','E','1') , GF_ID3V2_FRAME_TPE2 = GF_4CC('T','P','E','2') , GF_ID3V2_FRAME_TPE3 = GF_4CC('T','P','E','3') , GF_ID3V2_FRAME_TPE4 = GF_4CC('T','P','E','4') ,
  GF_ID3V2_FRAME_TPOS = GF_4CC('T','P','E','5') , GF_ID3V2_FRAME_TPUB = GF_4CC('T','P','U','B') , GF_ID3V2_FRAME_TRCK = GF_4CC('T','R','C','K') , GF_ID3V2_FRAME_TRDA = GF_4CC('T','R','D','A') ,
  GF_ID3V2_FRAME_TRSN = GF_4CC('T','R','S','N') , GF_ID3V2_FRAME_TRSO = GF_4CC('T','R','S','O') , GF_ID3V2_FRAME_TSIZ = GF_4CC('T','S','I','Z') , GF_ID3V2_FRAME_TSO2 = GF_4CC('T','S','O','2') ,
  GF_ID3V2_FRAME_TSOA = GF_4CC('T','S','O','A') , GF_ID3V2_FRAME_TSOC = GF_4CC('T','S','O','C') , GF_ID3V2_FRAME_TSOT = GF_4CC('T','S','O','T') , GF_ID3V2_FRAME_TSOP = GF_4CC('T','S','O','P') ,
  GF_ID3V2_FRAME_TSRC = GF_4CC('T','S','R','C') , GF_ID3V2_FRAME_TSSE = GF_4CC('T','S','S','E') , GF_ID3V2_FRAME_TYER = GF_4CC('T','Y','E','R') , GF_ID3V2_FRAME_TXXX = GF_4CC('T','X','X','X') ,
  GF_ID3V2_FRAME_UFID = GF_4CC('U','F','I','D') , GF_ID3V2_FRAME_USER = GF_4CC('U','S','E','R') , GF_ID3V2_FRAME_USLT = GF_4CC('U','S','L','T') , GF_ID3V2_FRAME_WCOM = GF_4CC('W','C','O','M') ,
  GF_ID3V2_FRAME_WCOP = GF_4CC('W','C','O','P') , GF_ID3V2_FRAME_WOAF = GF_4CC('W','O','A','F') , GF_ID3V2_FRAME_WOAR = GF_4CC('W','O','A','R') , GF_ID3V2_FRAME_WOAS = GF_4CC('W','O','A','S') ,
  GF_ID3V2_FRAME_WORS = GF_4CC('W','O','R','S') , GF_ID3V2_FRAME_WPAY = GF_4CC('W','P','A','Y') , GF_ID3V2_FRAME_WPUB = GF_4CC('W','P','U','B') , GF_ID3V2_FRAME_WXXX = GF_4CC('W','X','X','X')
}
 
enum  {
  GF_ITAG_STR =0 , GF_ITAG_INT8 , GF_ITAG_INT16 , GF_ITAG_INT32 ,
  GF_ITAG_INT64 , GF_ITAG_BOOL , GF_ITAG_ID3_GENRE , GF_ITAG_FRAC6 ,
  GF_ITAG_FRAC8 , GF_ITAG_FILE
}
 
enum  {
  GF_META_ITEM_TYPE_MIME = GF_4CC('m', 'i', 'm', 'e') , GF_META_ITEM_TYPE_URI = GF_4CC('u', 'r', 'i', ' ') , GF_META_ITEM_TYPE_PICT = GF_4CC('p', 'i', 'c', 't') , GF_META_TYPE_SVG = GF_4CC('s','v','g',' ') ,
  GF_META_TYPE_SVGZ = GF_4CC('s','v','g','z') , GF_META_TYPE_SMIL = GF_4CC('s','m','i','l') , GF_META_TYPE_SMLZ = GF_4CC('s','m','l','z') , GF_META_TYPE_X3D = GF_4CC('x','3','d',' ') ,
  GF_META_TYPE_X3DZ = GF_4CC('x','3','d','z') , GF_META_TYPE_XMTA = GF_4CC('x','m','t','a') , GF_META_TYPE_XMTZ = GF_4CC('x','m','t','z') , GF_META_TYPE_RVCI = GF_4CC('r','v','c','i')
}
 
enum  { GF_S4CC_MPEG4 = GF_4CC('m', 'p', '4', 's') , GF_S4CC_LASER = GF_4CC('l', 's', 'r', '1') }
 
enum  {
  GF_CICP_PRIM_RESERVED_0 = 0 , GF_CICP_PRIM_BT709 , GF_CICP_PRIM_UNSPECIFIED , GF_CICP_PRIM_RESERVED_3 ,
  GF_CICP_PRIM_BT470M , GF_CICP_PRIM_BT470G , GF_CICP_PRIM_SMPTE170 , GF_CICP_PRIM_SMPTE240 ,
  GF_CICP_PRIM_FILM , GF_CICP_PRIM_BT2020 , GF_CICP_PRIM_SMPTE428 , GF_CICP_PRIM_SMPTE431 ,
  GF_CICP_PRIM_SMPTE432 , GF_CICP_PRIM_EBU3213 =22 , GF_CICP_PRIM_LAST
}
 
enum  {
  GF_CICP_TRANSFER_RESERVED_0 = 0 , GF_CICP_TRANSFER_BT709 , GF_CICP_TRANSFER_UNSPECIFIED , GF_CICP_TRANSFER_RESERVED_3 ,
  GF_CICP_TRANSFER_BT470M , GF_CICP_TRANSFER_BT470BG , GF_CICP_TRANSFER_SMPTE170 , GF_CICP_TRANSFER_SMPTE240 ,
  GF_CICP_TRANSFER_LINEAR , GF_CICP_TRANSFER_LOG100 , GF_CICP_TRANSFER_LOG316 , GF_CICP_TRANSFER_IEC61966 ,
  GF_CICP_TRANSFER_BT1361 , GF_CICP_TRANSFER_SRGB , GF_CICP_TRANSFER_BT2020_10 , GF_CICP_TRANSFER_BT2020_12 ,
  GF_CICP_TRANSFER_SMPTE2084 , GF_CICP_TRANSFER_SMPTE428 , GF_CICP_TRANSFER_STDB67 , GF_CICP_TRANSFER_LAST
}
 
enum  {
  GF_CICP_MX_IDENTITY = 0 , GF_CICP_MX_BT709 , GF_CICP_MX_UNSPECIFIED , GF_CICP_MX_RESERVED_3 ,
  GF_CICP_MX_FCC47 , GF_CICP_MX_BT601_625 , GF_CICP_MX_SMPTE170 , GF_CICP_MX_SMPTE240 ,
  GF_CICP_MX_YCgCo , GF_CICP_MX_BT2020 , GF_CICP_MX_BT2020_CL , GF_CICP_MX_YDzDx ,
  GF_CICP_MX_LAST
}
 
enum  {
  GF_STEREO_NONE = 0 , GF_STEREO_TOP_BOTTOM , GF_STEREO_LEFT_RIGHT , GF_STEREO_CUSTOM ,
  GF_STEREO_RIGHT_LEFT , GF_STEREO_BOTTOM_TOP
}
 
enum  { GF_PROJ360_NONE = 0 , GF_PROJ360_CUBE_MAP , GF_PROJ360_EQR , GF_PROJ360_MESH }
 
enum  { GF_LLHAS_NONE = 0 , GF_LLHAS_BYTERANGES = 1 , GF_LLHAS_PARTS = 2 , GF_LLHAS_SUBSEG = 3 }
 

Functions

const char * gf_stream_type_name (u32 streamType)
 
const char * gf_stream_type_short_name (u32 streamType)
 
u32 gf_stream_type_by_name (const char *name)
 
u32 gf_stream_types_enum (u32 *idx, const char **name, const char **desc)
 
GF_PixelFormat gf_pixel_fmt_parse (const char *pf_name)
 
const char * gf_pixel_fmt_name (GF_PixelFormat pfmt)
 
Bool gf_pixel_fmt_probe (GF_PixelFormat pf_4cc, const char *pf_name)
 
const char * gf_pixel_fmt_sname (GF_PixelFormat pfmt)
 
GF_PixelFormat gf_pixel_fmt_enum (u32 *idx, const char **name, const char **fileext, const char **description)
 
const char * gf_pixel_fmt_all_names ()
 
const char * gf_pixel_fmt_all_shortnames ()
 
Bool gf_pixel_get_size_info (GF_PixelFormat pixfmt, u32 width, u32 height, u32 *out_size, u32 *out_stride, u32 *out_stride_uv, u32 *out_planes, u32 *out_plane_uv_height)
 
u32 gf_pixel_get_bytes_per_pixel (GF_PixelFormat pixfmt)
 
u32 gf_pixel_is_wide_depth (GF_PixelFormat pixfmt)
 
u32 gf_pixel_get_nb_comp (GF_PixelFormat pixfmt)
 
void gf_pixel_get_downsampling (GF_PixelFormat pixfmt, u32 *downsample_w, u32 *downsample_h)
 
Bool gf_pixel_fmt_is_transparent (GF_PixelFormat pixfmt)
 
Bool gf_pixel_fmt_is_yuv (GF_PixelFormat pixfmt)
 
GF_PixelFormat gf_pixel_fmt_from_qt_type (u32 qt_code)
 
u32 gf_pixel_fmt_to_qt_type (GF_PixelFormat pixfmt)
 
Bool gf_pixel_fmt_get_uncc (GF_PixelFormat pixfmt, u32 profile_mode, u8 **dsi, u32 *dsi_size)
 
const char * gf_codecid_name (GF_CodecID codecid)
 
GF_CodecID gf_codecid_enum (u32 idx, const char **short_name, const char **long_name)
 
u32 gf_codecid_type (GF_CodecID codecid)
 
GF_CodecID gf_codecid_alt (GF_CodecID codecid)
 
u8 gf_codecid_oti (GF_CodecID codecid)
 
GF_CodecID gf_codecid_from_oti (u32 stream_type, u32 oti)
 
u32 gf_codecid_4cc_type (GF_CodecID codecid)
 
Bool gf_codecid_has_unframer (GF_CodecID codecid)
 
GF_CodecID gf_codecid_parse (const char *cname)
 
const char * gf_codecid_file_ext (GF_CodecID codecid)
 
const char * gf_codecid_mime (GF_CodecID codecid)
 
GF_CodecID gf_codec_id_from_isobmf (u32 isobmftype)
 
const char * gf_stream_type_afx_name (u8 afx_code)
 
GF_AudioFormat gf_audio_fmt_parse (const char *af_name)
 
const char * gf_audio_fmt_name (GF_AudioFormat afmt)
 
const char * gf_audio_fmt_sname (GF_AudioFormat afmt)
 
const char * gf_audio_fmt_all_names ()
 
const char * gf_audio_fmt_all_shortnames ()
 
u32 gf_audio_fmt_bit_depth (GF_AudioFormat afmt)
 
Bool gf_audio_fmt_is_planar (GF_AudioFormat afmt)
 
GF_AudioFormat gf_audio_fmt_from_isobmf (u32 msubtype)
 
u32 gf_audio_fmt_to_isobmf (GF_AudioFormat afmt)
 
GF_AudioFormat gf_audio_fmt_enum (u32 *idx, const char **name, const char **fileext, const char **desc)
 
u32 gf_audio_fmt_get_cicp_layout (u32 nb_chan, u32 nb_surr, u32 nb_lfe)
 
u64 gf_audio_fmt_get_layout_from_cicp (u32 cicp_layout)
 
const char * gf_audio_fmt_get_layout_name_from_cicp (u32 cicp_layout)
 
const char * gf_audio_fmt_get_layout_name (u64 chan_layout)
 
u64 gf_audio_fmt_get_layout_from_name (const char *name)
 
u32 gf_audio_fmt_get_cicp_from_layout (u64 chan_layout)
 
u32 gf_audio_fmt_get_num_channels_from_layout (u64 chan_layout)
 
u16 gf_audio_fmt_get_dolby_chanmap (u32 cicp_layout)
 
u16 gf_audio_fmt_get_dolby_chanmap_from_layout (u64 channel_layout)
 
u32 gf_audio_fmt_cicp_enum (u32 idx, const char **short_name, u64 *ch_mask)
 
u32 gf_audio_fmt_get_cicp_from_name (const char *name)
 
const char * gf_audio_fmt_get_cicp_name (u32 cicp_code)
 
const char * gf_audio_fmt_cicp_all_names ()
 
s32 gf_itags_find_by_id3tag (u32 id3tag)
 
s32 gf_itags_find_by_itag (u32 itag)
 
s32 gf_itags_find_by_name (const char *tag_name)
 
s32 gf_itags_get_type (u32 tag_idx)
 
const char * gf_itags_get_name (u32 tag_idx)
 
const char * gf_itags_get_alt_name (u32 tag_idx)
 
u32 gf_itags_get_itag (u32 tag_idx)
 
u32 gf_itags_get_id3tag (u32 tag_idx)
 
const char * gf_itags_enum_tags (u32 *tag_idx, u32 *itag, u32 *id3tag, u32 *type)
 
const char * gf_id3_get_genre (u32 tag)
 
u32 gf_id3_get_genre_tag (const char *name)
 
u32 gf_cicp_parse_color_primaries (const char *val)
 
const char * gf_cicp_color_primaries_name (u32 cicp_prim)
 
const char * gf_cicp_color_primaries_all_names ()
 
u32 gf_cicp_parse_color_transfer (const char *val)
 
const char * gf_cicp_color_transfer_name (u32 cicp_trans)
 
const char * gf_cicp_color_transfer_all_names ()
 
u32 gf_cicp_parse_color_matrix (const char *val)
 
const char * gf_cicp_color_matrix_name (u32 cicp_mx)
 
const char * gf_cicp_color_matrix_all_names ()
 

Variables

static const unsigned int GF_QCELP_RATE_TO_SIZE_NB = 7
 
static const unsigned int GF_QCELP_RATE_TO_SIZE [] = {0, 1, 1, 4, 2, 8, 3, 17, 4, 35, 5, 8, 14, 1}
 
static const unsigned int GF_SMV_EVRC_RATE_TO_SIZE_NB = 6
 
static const unsigned int GF_SMV_EVRC_RATE_TO_SIZE [] = {0, 1, 1, 3, 2, 6, 3, 11, 4, 23, 5, 1}
 
static const unsigned int GF_AMR_FRAME_SIZE [16] = { 12, 13, 15, 17, 19, 20, 26, 31, 5, 0, 0, 0, 0, 0, 0, 0 }
 
static const unsigned int GF_AMR_WB_FRAME_SIZE [16] = { 17, 23, 32, 36, 40, 46, 50, 58, 60, 5, 5, 0, 0, 0, 0, 0 }
 

Detailed Description

>