MistServer  2.5.3-Pro-19-gf5e75b1 ( Generic_64)
Data Structures | Enumerations | Functions
MP4 Namespace Reference

Contains all MP4 format related code. More...

Data Structures

class  AAC
 
class  ABST
 ABST Box class. More...
 
class  AFRA
 
struct  afraentry
 
class  AFRT
 AFRT Box class. More...
 
struct  afrt_runtable
 
class  ASRT
 ASRT Box class. More...
 
struct  asrt_runtable
 
class  AudioSampleEntry
 
class  AVC1
 
class  AVCC
 
class  Box
 
class  CLAP
 
class  CO64
 
class  containerBox
 
class  containerFullBox
 
class  CTTS
 
struct  CTTSEntry
 
class  DAC3
 
class  DCDescriptor
 Implements ISO 14496-1 DecoderConfigDescrTag. More...
 
class  Descriptor
 
class  DINF
 
class  DREF
 
class  DSDescriptor
 Implements ISO 14496-1 DecSpecificInfoTag. More...
 
class  EDTS
 
class  ELST
 
class  ESDescriptor
 Implements ISO 14496-1 ES_DescrTag. More...
 
class  ESDS
 
class  FIEL
 
class  FRMA
 
class  FTYP
 
class  fullBox
 
struct  globalafraentry
 
class  GMHD
 
class  H264
 
class  HDLR
 
class  HEV1
 
class  HMHD
 
class  HVCC
 
struct  HVCCArrayEntry
 
class  IODS
 
class  MDHD
 
class  MDIA
 
class  MEHD
 
class  META
 
class  MFHD
 
class  MFRA
 
class  MFRO
 
class  MINF
 
class  MOOF
 
class  MOOV
 
class  MP4A
 
class  MVEX
 
class  MVHD
 
class  NMHD
 
class  PASP
 
class  SampleEntry
 
class  SCHI
 
class  SCHM
 
class  SDTP
 
class  SIDX
 
struct  sidxReference
 
class  SINF
 
class  SLCDescriptor
 Implements ISO 14496-1 SLConfigDescrTag. More...
 
class  SMHD
 
class  STBL
 
class  STCO
 
class  STSC
 
class  STSCEntry
 
class  STSD
 
class  STSS
 
class  STSZ
 
class  STTS
 
struct  STTSEntry
 
class  STYP
 
class  TFDT
 
class  TFHD
 
class  TFRA
 
struct  TFRAEntry
 
class  TKHD
 
class  TRAF
 
class  TRAK
 
class  TREF
 
class  TREX
 
class  TRUN
 
struct  trunSampleInformation
 
class  UDTA
 
class  URL
 
class  URN
 
class  UUID
 
class  UUID_ProtectionSystemSpecificHeader
 
class  UUID_SampleEncryption
 
struct  UUID_SampleEncryption_Sample
 
struct  UUID_SampleEncryption_Sample_Entry
 
class  UUID_TFXD
 
class  UUID_TrackEncryption
 
class  UUID_TrackFragmentReference
 
class  VisualSampleEntry
 
class  VMHD
 

Enumerations

enum  sampleflags {
  noIPicture = 0x01000000, isIPicture = 0x02000000, noDisposable = 0x00400000, isDisposable = 0x00800000,
  isRedundant = 0x00100000, noRedundant = 0x00200000, noKeySample = 0x00010000, isKeySample = 0x00000000,
  MUST_BE_PRESENT = 0x1, noIPicture = 0x01000000, isIPicture = 0x02000000, noDisposable = 0x00400000,
  isDisposable = 0x00800000, isRedundant = 0x00100000, noRedundant = 0x00200000, noKeySample = 0x00010000,
  isKeySample = 0x00000000, MUST_BE_PRESENT = 0x1
}
 
enum  sampleflags {
  noIPicture = 0x01000000, isIPicture = 0x02000000, noDisposable = 0x00400000, isDisposable = 0x00800000,
  isRedundant = 0x00100000, noRedundant = 0x00200000, noKeySample = 0x00010000, isKeySample = 0x00000000,
  MUST_BE_PRESENT = 0x1, noIPicture = 0x01000000, isIPicture = 0x02000000, noDisposable = 0x00400000,
  isDisposable = 0x00800000, isRedundant = 0x00100000, noRedundant = 0x00200000, noKeySample = 0x00010000,
  isKeySample = 0x00000000, MUST_BE_PRESENT = 0x1
}
 
enum  tfhdflags {
  tfhdBaseOffset = 0x000001, tfhdSampleDesc = 0x000002, tfhdSampleDura = 0x000008, tfhdSampleSize = 0x000010,
  tfhdSampleFlag = 0x000020, tfhdNoDuration = 0x010000, tfhdBaseOffset = 0x000001, tfhdSampleDesc = 0x000002,
  tfhdSampleDura = 0x000008, tfhdSampleSize = 0x000010, tfhdSampleFlag = 0x000020, tfhdNoDuration = 0x010000
}
 
enum  tfhdflags {
  tfhdBaseOffset = 0x000001, tfhdSampleDesc = 0x000002, tfhdSampleDura = 0x000008, tfhdSampleSize = 0x000010,
  tfhdSampleFlag = 0x000020, tfhdNoDuration = 0x010000, tfhdBaseOffset = 0x000001, tfhdSampleDesc = 0x000002,
  tfhdSampleDura = 0x000008, tfhdSampleSize = 0x000010, tfhdSampleFlag = 0x000020, tfhdNoDuration = 0x010000
}
 
enum  trunflags {
  trundataOffset = 0x00000001, trunfirstSampleFlags = 0x00000004, trunsampleDuration = 0x00000100, trunsampleSize = 0x00000200,
  trunsampleFlags = 0x00000400, trunsampleOffsets = 0x00000800, trundataOffset = 0x00000001, trunfirstSampleFlags = 0x00000004,
  trunsampleDuration = 0x00000100, trunsampleSize = 0x00000200, trunsampleFlags = 0x00000400, trunsampleOffsets = 0x00000800
}
 
enum  trunflags {
  trundataOffset = 0x00000001, trunfirstSampleFlags = 0x00000004, trunsampleDuration = 0x00000100, trunsampleSize = 0x00000200,
  trunsampleFlags = 0x00000400, trunsampleOffsets = 0x00000800, trundataOffset = 0x00000001, trunfirstSampleFlags = 0x00000004,
  trunsampleDuration = 0x00000100, trunsampleSize = 0x00000200, trunsampleFlags = 0x00000400, trunsampleOffsets = 0x00000800
}
 

Functions

static char c2hex (int c)
 
unsigned long int calcBoxSize (char readVal[16])
 
std::string prettySampleFlags (uint32_t flag)
 
std::string readBoxType (FILE *newData)
 Reads the first 8 bytes and returns. More...
 
bool skipBox (FILE *newData)
 

Detailed Description

Contains all MP4 format related code.

Enumeration Type Documentation

Enumerator
noIPicture 
isIPicture 
noDisposable 
isDisposable 
isRedundant 
noRedundant 
noKeySample 
isKeySample 
MUST_BE_PRESENT 
noIPicture 
isIPicture 
noDisposable 
isDisposable 
isRedundant 
noRedundant 
noKeySample 
isKeySample 
MUST_BE_PRESENT 
Enumerator
noIPicture 
isIPicture 
noDisposable 
isDisposable 
isRedundant 
noRedundant 
noKeySample 
isKeySample 
MUST_BE_PRESENT 
noIPicture 
isIPicture 
noDisposable 
isDisposable 
isRedundant 
noRedundant 
noKeySample 
isKeySample 
MUST_BE_PRESENT 
Enumerator
tfhdBaseOffset 
tfhdSampleDesc 
tfhdSampleDura 
tfhdSampleSize 
tfhdSampleFlag 
tfhdNoDuration 
tfhdBaseOffset 
tfhdSampleDesc 
tfhdSampleDura 
tfhdSampleSize 
tfhdSampleFlag 
tfhdNoDuration 
Enumerator
tfhdBaseOffset 
tfhdSampleDesc 
tfhdSampleDura 
tfhdSampleSize 
tfhdSampleFlag 
tfhdNoDuration 
tfhdBaseOffset 
tfhdSampleDesc 
tfhdSampleDura 
tfhdSampleSize 
tfhdSampleFlag 
tfhdNoDuration 
Enumerator
trundataOffset 
trunfirstSampleFlags 
trunsampleDuration 
trunsampleSize 
trunsampleFlags 
trunsampleOffsets 
trundataOffset 
trunfirstSampleFlags 
trunsampleDuration 
trunsampleSize 
trunsampleFlags 
trunsampleOffsets 
Enumerator
trundataOffset 
trunfirstSampleFlags 
trunsampleDuration 
trunsampleSize 
trunsampleFlags 
trunsampleOffsets 
trundataOffset 
trunfirstSampleFlags 
trunsampleDuration 
trunsampleSize 
trunsampleFlags 
trunsampleOffsets 

Function Documentation

static char MP4::c2hex ( int  c)
static
unsigned long int MP4::calcBoxSize ( char  readVal[16])
Todo:
make good working calcBoxSize with size and payloadoffset calculation
std::string MP4::prettySampleFlags ( uint32_t  flag)
std::string MP4::readBoxType ( FILE *  newData)

Reads the first 8 bytes and returns.

bool MP4::skipBox ( FILE *  newData)