Module: MP4::Constants

Defined in:
lib/mp4/constants.rb

Constant Summary collapse

GENERIC_HEADER_SIZE =
8
TRAK_ATOMS =
[
  TKHD_ATOM = 'tkhd'.freeze,
  TREF_ATOM = 'tref'.freeze,
  TRGR_ATOM = 'trgr'.freeze,
  ELST_ATOM = 'elst'.freeze,
  META_ATOM = 'meta'.freeze,
  MDHD_ATOM = 'mdhd'.freeze,
  HDLR_ATOM = 'hdlr'.freeze,
  ELNG_ATOM = 'elng'.freeze,
  # minf
  VMHD_ATOM = 'vmhd'.freeze,
  SMHD_ATOM = 'smhd'.freeze,
  HMHD_ATOM = 'hmhd'.freeze,
  STHD_ATOM = 'sthd'.freeze,
  NMHD_ATOM = 'nmhd'.freeze,
  DINF_ATOM = 'dinf'.freeze, # TODO
  # 'dref', # TODO
  # stbl
  STSD_ATOM = 'stsd'.freeze,
  STTS_ATOM = 'stts'.freeze,
  CTTS_ATOM = 'ctts'.freeze,
  CSLG_ATOM = 'cslg'.freeze,
  STSC_ATOM = 'stsc'.freeze,
  STSZ_ATOM = 'stsz'.freeze,
  STZ2_ATOM = 'stz2'.freeze,
  STCO_ATOM = 'stco'.freeze,
  CO64_ATOM = 'co64'.freeze,
  STSS_ATOM = 'stss'.freeze,
  STSH_ATOM = 'stsh'.freeze,
  PADB_ATOM = 'padb'.freeze,
  STDP_ATOM = 'stdp'.freeze,
  SDTP_ATOM = 'sdtp'.freeze,
  SBGP_ATOM = 'sbgp'.freeze,
  # 'sgpd',
  SUBS_ATOM = 'subs'.freeze,
  SAIZ_ATOM = 'saiz'.freeze,
  SAIO_ATOM = 'saio'.freeze,
].freeze
CACHED_ATOMS =
%w[dinf stbl stsd].freeze
PARSERS =
{
  'mvhd' => '::MP4::Binary::Mvhd',
  'iods' => '::MP4::Binary::Iods',
  'tkhd' => '::MP4::Binary::Tkhd',
  'tref' => '::MP4::Binary::Tref',
  'trgr' => '::MP4::Binary::Trgr',
  'elst' => '::MP4::Binary::Elst',
  'meta' => '::MP4::Binary::Meta',
  'mdhd' => '::MP4::Binary::Mdhd',
  'hdlr' => '::MP4::Binary::Hdlr',
  'elng' => '::MP4::Binary::Elng',
  # minf
  'vmhd' => '::MP4::Binary::Vmhd',
  'smhd' => '::MP4::Binary::Smhd',
  'hmhd' => '::MP4::Binary::Hmhd',
  'sthd' => '::MP4::Binary::Sthd',
  'nmhd' => '::MP4::Binary::Nmhd',
  'dinf' => '::MP4::Binary::Dinf',
  # stbl
  'stsd' => '::MP4::Binary::Stsd',
  'stts' => '::MP4::Binary::Stts',
  'ctts' => '::MP4::Binary::Ctts',
  'cslg' => '::MP4::Binary::Cslg',
  'stsc' => '::MP4::Binary::Stsc',
  'stsz' => '::MP4::Binary::Stsz',
  'stz2' => '::MP4::Binary::Stz2',
  'stco' => '::MP4::Binary::Stco',
  'co64' => '::MP4::Binary::Co64',
  'stss' => '::MP4::Binary::Stss',
  'stsh' => '::MP4::Binary::Stsh',
  'padb' => '::MP4::Binary::Padb',
  'stdp' => '::MP4::Binary::Stdp',
  'sdtp' => '::MP4::Binary::Sdtp',
  'gmhd' => '::MP4::Binary::Gmhd',
  'sgpd' => '::MP4::Binary::Sgpd', # TODO: add support
  'sbgp' => '::MP4::Binary::Sbgp', # TODO: add support
  'subs' => '::MP4::Binary::Subs',
  'saiz' => '::MP4::Binary::Saiz',
  'saio' => '::MP4::Binary::Saio',
  'senc' => '::MP4::Binary::Senc',
  'udta' => '::MP4::Binary::Udta',
}.freeze