Versions in this module Expand all Collapse all v1 v1.0.7 Dec 10, 2023 Changes in this version + const BasicBoxLen + const FullBoxLen + const MOV_FRAG_SAMPLE_FLAG_DEGRADATION_PRIORITY_MASK + const MOV_FRAG_SAMPLE_FLAG_DEPENDED_MASK + const MOV_FRAG_SAMPLE_FLAG_DEPENDS_MASK + const MOV_FRAG_SAMPLE_FLAG_DEPENDS_NO + const MOV_FRAG_SAMPLE_FLAG_DEPENDS_YES + const MOV_FRAG_SAMPLE_FLAG_IS_NON_SYNC + const MOV_FRAG_SAMPLE_FLAG_PADDING_MASK + const MOV_FRAG_SAMPLE_FLAG_REDUNDANCY_MASK + const TF_FLAG_BASE_DATA_OFFSET + const TF_FLAG_DEAAULT_BASE_IS_MOOF + const TF_FLAG_DEAAULT_SAMPLE_FLAGS_PRESENT + const TF_FLAG_DEFAULT_SAMPLE_DURATION_PRESENT + const TF_FLAG_DEFAULT_SAMPLE_SIZE_PRESENT + const TF_FLAG_DURATION_IS_EMPTY + const TF_FLAG_SAMPLE_DESCRIPTION_INDEX_PRESENT + const TR_FLAG_DATA_FIRST_SAMPLE_FLAGS + const TR_FLAG_DATA_OFFSET + const TR_FLAG_DATA_SAMPLE_COMPOSITION_TIME + const TR_FLAG_DATA_SAMPLE_DURATION + const TR_FLAG_DATA_SAMPLE_FLAGS + const TR_FLAG_DATA_SAMPLE_SIZE + const UseSubsampleEncryption + type AVPacket struct + Cid MP4_CODEC_TYPE + Data []byte + Dts uint64 + Pts uint64 + TrackId int type AudioSampleEntry + func NewAudioSampleEntry(format [4]byte) *AudioSampleEntry + func (entry *AudioSampleEntry) Decode(r io.Reader) (offset int, err error) + func (entry *AudioSampleEntry) Encode() (int, []byte) + func (entry *AudioSampleEntry) Size() uint64 + type BaseDescriptor struct + func (base *BaseDescriptor) Decode(data []byte) *codec.BitStream + func (base *BaseDescriptor) Encode() []byte + type BasicBox struct + Size uint64 + Type [4]byte + UserType [16]byte + func NewBasicBox(boxtype [4]byte) *BasicBox + func (box *BasicBox) Decode(r io.Reader) (int, error) + func (box *BasicBox) Encode() (int, []byte) + type BoxDecoder interface + Decode func(buf []byte) (int, error) + type BoxEncoder interface + Encode func(buf []byte) (int, []byte) + type BoxSize interface + Size func() uint64 + type ChannelMappingTable struct + ChannelMapping []byte + CoupledCount uint8 + StreamCount uint8 + type ChunkLargeOffsetBox struct + func NewChunkLargeOffsetBox() *ChunkLargeOffsetBox + func (co64 *ChunkLargeOffsetBox) Decode(r io.Reader) (offset int, err error) + func (co64 *ChunkLargeOffsetBox) Encode() (int, []byte) + func (co64 *ChunkLargeOffsetBox) Size() uint64 + type ChunkOffsetBox struct + func NewChunkOffsetBox() *ChunkOffsetBox + func (stco *ChunkOffsetBox) Decode(r io.Reader) (offset int, err error) + func (stco *ChunkOffsetBox) Encode() (int, []byte) + func (stco *ChunkOffsetBox) Size() uint64 + type CompositionOffsetBox struct + func NewCompositionOffsetBox() *CompositionOffsetBox + func (ctts *CompositionOffsetBox) Decode(r io.Reader) (offset int, err error) + func (ctts *CompositionOffsetBox) Encode() (int, []byte) + func (ctts *CompositionOffsetBox) Size() uint64 + type EditListBox struct + func NewEditListBox(version uint32) *EditListBox + func (elst *EditListBox) Decode(r io.Reader) (offset int, err error) + func (elst *EditListBox) Encode() (int, []byte) + type FileTypeBox struct + Box *BasicBox + Compatible_brands []uint32 + Major_brand uint32 + Minor_version uint32 + func NewFileTypeBox() *FileTypeBox + func NewSegmentTypeBox() *FileTypeBox + func (ftyp *FileTypeBox) Encode() (int, []byte) + func (ftyp *FileTypeBox) Size() uint64 + type FreeBox struct + Box BasicBox + Data []byte + func NewFreeBox() *FreeBox + func (free *FreeBox) Decode(r io.Reader) (int, error) + func (free *FreeBox) Encode() (int, []byte) + func (free *FreeBox) Size() uint64 type FullBox + Box *BasicBox + func NewFullBox(boxtype [4]byte, version uint8) *FullBox + func (box *FullBox) Decode(r io.Reader) (int, error) + func (box *FullBox) Encode() (int, []byte) + func (box *FullBox) Size() uint64 + type HandlerBox struct + Box *FullBox + Handler_type HandlerType + Name string + func NewHandlerBox(handlerType HandlerType, name string) *HandlerBox + func (hdlr *HandlerBox) Decode(r io.Reader, size uint64) (offset int, err error) + func (hdlr *HandlerBox) Encode() (int, []byte) + func (hdlr *HandlerBox) Size() uint64 + type HandlerType [4]byte + type HintMediaHeaderBox struct + AvgPDUsize uint16 + Avgbitrate uint32 + Box *FullBox + MaxPDUsize uint16 + Maxbitrate uint32 + func NewHintMediaHeaderBox() *HintMediaHeaderBox + func (hmhd *HintMediaHeaderBox) Decode(r io.Reader) (offset int, err error) + func (hmhd *HintMediaHeaderBox) Encode() (int, []byte) + func (hmhd *HintMediaHeaderBox) Size() uint64 + type HintSampleEntry struct + Data byte + Entry *SampleEntry + type MP4_CODEC_TYPE int + const MP4_CODEC_AAC + const MP4_CODEC_G711A + const MP4_CODEC_G711U + const MP4_CODEC_H264 + const MP4_CODEC_H265 + const MP4_CODEC_MP2 + const MP4_CODEC_MP3 + const MP4_CODEC_OPUS + type MP4_FLAG uint32 + const MP4_FLAG_CUSTOM + const MP4_FLAG_DASH + const MP4_FLAG_FRAGMENT + const MP4_FLAG_KEYFRAME + type MediaHeaderBox struct + Box *FullBox + Creation_time uint64 + Duration uint64 + Language [3]uint8 + Modification_time uint64 + Pad uint8 + Pre_defined uint16 + Timescale uint32 + func NewMediaHeaderBox() *MediaHeaderBox + func (mdhd *MediaHeaderBox) Decode(r io.Reader) (offset int, err error) + func (mdhd *MediaHeaderBox) Encode() (int, []byte) + func (mdhd *MediaHeaderBox) Size() uint64 + type MovDemuxer struct + OnRawSample func(cid MP4_CODEC_TYPE, sample []byte, subSample *SubSample) error + func CreateMp4Demuxer(r io.ReadSeeker) *MovDemuxer + func (demuxer *MovDemuxer) GetMp4Info() Mp4Info + func (demuxer *MovDemuxer) GetSyncTable(trackId uint32) ([]SyncSample, error) + func (demuxer *MovDemuxer) ReadHead() ([]TrackInfo, error) + func (demuxer *MovDemuxer) ReadPacket() (*AVPacket, error) + func (demuxer *MovDemuxer) SeekTime(dts uint64) error + type MovieFragmentHeaderBox struct + Box *FullBox + SequenceNumber uint32 + func NewMovieFragmentHeaderBox(sequence uint32) *MovieFragmentHeaderBox + func (mfhd *MovieFragmentHeaderBox) Decode(r io.Reader) (offset int, err error) + func (mfhd *MovieFragmentHeaderBox) Encode() (int, []byte) + func (mfhd *MovieFragmentHeaderBox) Size() uint64 + type MovieFragmentRandomAccessOffsetBox struct + Box *FullBox + SizeOfMfra uint32 + func NewMovieFragmentRandomAccessOffsetBox(size uint32) *MovieFragmentRandomAccessOffsetBox + func (mfro *MovieFragmentRandomAccessOffsetBox) Decode(r io.Reader) (offset int, err error) + func (mfro *MovieFragmentRandomAccessOffsetBox) Encode() (int, []byte) + func (mfro *MovieFragmentRandomAccessOffsetBox) Size() uint64 + type MovieHeaderBox struct + Box *FullBox + Creation_time uint64 + Duration uint64 + Matrix [9]uint32 + Modification_time uint64 + Next_track_ID uint32 + Pre_defined [6]uint32 + Rate uint32 + Timescale uint32 + Volume uint16 + func NewMovieHeaderBox() *MovieHeaderBox + func (mvhd *MovieHeaderBox) Decode(r io.Reader) (offset int, err error) + func (mvhd *MovieHeaderBox) Encode() (int, []byte) + func (mvhd *MovieHeaderBox) Size() uint64 + type Movmuxer struct + func CreateMp4Muxer(w io.WriteSeeker, options ...MuxerOption) (*Movmuxer, error) + func (muxer *Movmuxer) AddAudioTrack(cid MP4_CODEC_TYPE, options ...TrackOption) uint32 + func (muxer *Movmuxer) AddVideoTrack(cid MP4_CODEC_TYPE, options ...TrackOption) uint32 + func (muxer *Movmuxer) FlushFragment() (err error) + func (muxer *Movmuxer) OnNewFragment(onFragment OnFragment) + func (muxer *Movmuxer) ReBindWriter(w io.WriteSeeker) + func (muxer *Movmuxer) Write(track uint32, data []byte, pts uint64, dts uint64) error + func (muxer *Movmuxer) WriteInitSegment(w io.Writer) error + func (muxer *Movmuxer) WriteTrailer() (err error) + type Mp4Info struct + CompatibleBrands []uint32 + CreateTime uint64 + Duration uint32 + MajorBrand uint32 + MinorVersion uint32 + ModifyTime uint64 + Timescale uint32 + type MuxerOption func(muxer *Movmuxer) + func WithMp4Flag(f MP4_FLAG) MuxerOption + type OnFragment func(duration uint32, firstPts, firstDts uint64) + type OpusSpecificBox struct + Box *BasicBox + ChanMapTable *ChannelMappingTable + InputSampleRate uint32 + OutputChannelCount uint8 + OutputGain int16 + PreSkip uint16 + Version uint8 + func NewdOpsBox() *OpusSpecificBox + func (dops *OpusSpecificBox) Decode(r io.Reader, size uint32) (offset int, err error) + func (dops *OpusSpecificBox) Encode() (int, []byte) + func (dops *OpusSpecificBox) Size() uint64 + type SampleDescriptionBox struct + func NewSampleDescriptionBox() *SampleDescriptionBox + func (entry *SampleDescriptionBox) Encode() (int, []byte) + func (stsd *SampleDescriptionBox) Decode(r io.Reader) (offset int, err error) + func (stsd *SampleDescriptionBox) Size() uint64 type SampleEntry + func NewSampleEntry(format [4]byte) *SampleEntry + func (entry *SampleEntry) Decode(r io.Reader) (offset int, err error) + func (entry *SampleEntry) Encode() (int, []byte) + func (entry *SampleEntry) Size() uint64 + type SampleEntryType uint8 + const SAMPLE_AUDIO + const SAMPLE_VIDEO + type SampleSizeBox struct + func NewSampleSizeBox() *SampleSizeBox + func (stsz *SampleSizeBox) Decode(r io.Reader) (offset int, err error) + func (stsz *SampleSizeBox) Encode() (int, []byte) + func (stsz *SampleSizeBox) Size() uint64 + type SampleToChunkBox struct + func NewSampleToChunkBox() *SampleToChunkBox + func (stsc *SampleToChunkBox) Decode(r io.Reader) (offset int, err error) + func (stsc *SampleToChunkBox) Encode() (int, []byte) + func (stsc *SampleToChunkBox) Size() uint64 + type SegmentIndexBox struct + Box *FullBox + EarliestPresentationTime uint64 + Entrys []sidxEntry + FirstOffset uint64 + ReferenceCount uint16 + ReferenceID uint32 + TimeScale uint32 + func NewSegmentIndexBox() *SegmentIndexBox + func (sidx *SegmentIndexBox) Decode(r io.Reader) (offset int, err error) + func (sidx *SegmentIndexBox) Encode() (int, []byte) + func (sidx *SegmentIndexBox) Size() uint64 + type SencBox struct + Box *FullBox + EntryList *movsenc + PerSampleIVSize uint32 + SampleCount uint32 + func (senc *SencBox) Decode(r io.Reader, size uint32, perSampleIVSize uint8) (offset int, err error) + type SoundMediaHeaderBox struct + Balance int16 + Box *FullBox + func NewSoundMediaHeaderBox() *SoundMediaHeaderBox + func (smhd *SoundMediaHeaderBox) Decode(r io.Reader) (offset int, err error) + func (smhd *SoundMediaHeaderBox) Encode() (int, []byte) + func (smhd *SoundMediaHeaderBox) Size() uint64 + type SubSample struct + DefaultCryptByteBlock uint8 + DefaultKID [16]byte + DefaultSkipByteBlock uint8 + IV [16]byte + Number uint32 + Patterns []SubSamplePattern + type SubSamplePattern struct + BytesClear uint16 + BytesProtected uint32 + type SyncSample struct + Dts uint64 + Offset uint32 + Pts uint64 + Size uint32 + type SyncSampleBox struct + func NewSyncSampleBox() *SyncSampleBox + func (stss *SyncSampleBox) Decode(r io.Reader) (offset int, err error) + func (stss *SyncSampleBox) Encode() (int, []byte) + func (stss *SyncSampleBox) Size() uint64 + type TimeToSampleBox struct + func NewTimeToSampleBox() *TimeToSampleBox + func (stts *TimeToSampleBox) Decode(r io.Reader) (offset int, err error) + func (stts *TimeToSampleBox) Encode() (int, []byte) + func (stts *TimeToSampleBox) Size() uint64 + type TrackExtendsBox struct + Box *FullBox + DefaultSampleDescriptionIndex uint32 + DefaultSampleDuration uint32 + DefaultSampleFlags uint32 + DefaultSampleSize uint32 + TrackID uint32 + func NewTrackExtendsBox(track uint32) *TrackExtendsBox + func (trex *TrackExtendsBox) Decode(r io.Reader) (offset int, err error) + func (trex *TrackExtendsBox) Encode() (int, []byte) + func (trex *TrackExtendsBox) Size() uint64 + type TrackFragmentBaseMediaDecodeTimeBox struct + BaseMediaDecodeTime uint64 + Box *FullBox + func NewTrackFragmentBaseMediaDecodeTimeBox(fragStart uint64) *TrackFragmentBaseMediaDecodeTimeBox + func (tfdt *TrackFragmentBaseMediaDecodeTimeBox) Decode(r io.Reader, size uint32) (offset int, err error) + func (tfdt *TrackFragmentBaseMediaDecodeTimeBox) Encode() (int, []byte) + func (tfdt *TrackFragmentBaseMediaDecodeTimeBox) Size() uint64 + type TrackFragmentHeaderBox struct + BaseDataOffset uint64 + Box *FullBox + DefaultSampleDuration uint32 + DefaultSampleFlags uint32 + DefaultSampleSize uint32 + SampleDescriptionIndex uint32 + Track_ID uint32 + func NewTrackFragmentHeaderBox(trackid uint32) *TrackFragmentHeaderBox + func (tfhd *TrackFragmentHeaderBox) Decode(r io.Reader, size uint32, moofOffset uint64) (offset int, err error) + func (tfhd *TrackFragmentHeaderBox) Encode() (int, []byte) + func (tfhd *TrackFragmentHeaderBox) Size() uint64 + type TrackFragmentRandomAccessBox struct + Box *FullBox + FragEntrys *movtfra + LengthSizeOfSampleNum uint8 + LengthSizeOfTrafNum uint8 + LengthSizeOfTrunNum uint8 + NumberOfEntry uint32 + TrackID uint32 + func NewTrackFragmentRandomAccessBox(trackid uint32) *TrackFragmentRandomAccessBox + func (tfra *TrackFragmentRandomAccessBox) Decode(r io.Reader) (offset int, err error) + func (tfra *TrackFragmentRandomAccessBox) Encode() (int, []byte) + func (tfra *TrackFragmentRandomAccessBox) Size() uint64 + type TrackHeaderBox struct + Alternate_group uint16 + Box *FullBox + Creation_time uint64 + Duration uint64 + Height uint32 + Layer uint16 + Matrix [9]uint32 + Modification_time uint64 + Track_ID uint32 + Volume uint16 + Width uint32 + func NewTrackHeaderBox() *TrackHeaderBox + func (tkhd *TrackHeaderBox) Decode(r io.Reader) (offset int, err error) + func (tkhd *TrackHeaderBox) Encode() (int, []byte) + func (tkhd *TrackHeaderBox) Size() uint64 type TrackInfo + ChannelCount uint8 + Cid MP4_CODEC_TYPE + Duration uint32 + EndDts uint64 + Height uint32 + SampleCount uint32 + SampleRate uint32 + SampleSize uint16 + StartDts uint64 + Timescale uint32 + TrackId int + Width uint32 + type TrackOption func(track *mp4track) + func WithAudioChannelCount(channelCount uint8) TrackOption + func WithAudioSampleBits(sampleBits uint8) TrackOption + func WithAudioSampleRate(sampleRate uint32) TrackOption + func WithExtraData(extraData []byte) TrackOption + func WithVideoHeight(height uint32) TrackOption + func WithVideoWidth(width uint32) TrackOption + type TrackRunBox struct + Box *FullBox + Dataoffset int32 + EntryList *movtrun + FirstSampleFlags uint32 + SampleCount uint32 + func NewTrackRunBox() *TrackRunBox + func (trun *TrackRunBox) Decode(r io.Reader, size uint32, dataOffset uint32) (offset int, err error) + func (trun *TrackRunBox) Encode() (int, []byte) + func (trun *TrackRunBox) Size() uint64 + type VideoMediaHeaderBox struct + Box *FullBox + Graphicsmode uint16 + Opcolor [3]uint16 + func NewVideoMediaHeaderBox() *VideoMediaHeaderBox + func (vmhd *VideoMediaHeaderBox) Decode(r io.Reader) (offset int, err error) + func (vmhd *VideoMediaHeaderBox) Encode() (int, []byte) + func (vmhd *VideoMediaHeaderBox) Size() uint64 type VisualSampleEntry + func NewVisualSampleEntry(format [4]byte) *VisualSampleEntry + func (entry *VisualSampleEntry) Decode(r io.Reader) (offset int, err error) + func (entry *VisualSampleEntry) Encode() (int, []byte) + func (entry *VisualSampleEntry) Size() uint64 v1.0.6 Nov 25, 2023 v1.0.5 Nov 25, 2023 v1.0.4 Nov 25, 2023 v1.0.3 Nov 25, 2023 v1.0.2 Nov 24, 2023 v1.0.1 Nov 23, 2023 v1.0.0 Nov 23, 2023 Changes in this version + const AVCBaselineProfile + const AVCExtendedProfile + const AVCHigh10Profile + const AVCHigh422Profile + const AVCHighProfile + const AVCMainProfile + const DataTypeBinary + const DataTypeFloat32BigEndian + const DataTypeFloat64BigEndian + const DataTypeSignedIntBigEndian + const DataTypeStringJPEG + const DataTypeStringMac + const DataTypeStringUTF16 + const DataTypeStringUTF8 + const DecSpecificInfoTag + const DecoderConfigDescrTag + const ESDescrTag + const LargeHeaderSize + const LengthUnlimited + const SLConfigDescrTag + const SmallHeaderSize + const TfhdBaseDataOffsetPresent + const TfhdDefaultBaseIsMoof + const TfhdDefaultSampleDurationPresent + const TfhdDefaultSampleFlagsPresent + const TfhdDefaultSampleSizePresent + const TfhdDurationIsEmpty + const TfhdSampleDescriptionIndexPresent + const UrlSelfContained + const UrnSelfContained + var ErrBoxInfoNotFound = errors.New("box info not found") + var ErrUnsupportedBoxVersion = errors.New("unsupported box version") + func AddAnyTypeBoxDef(payload IAnyType, boxType BoxType, versions ...uint8) + func AddAnyTypeBoxDefEx(payload IAnyType, boxType BoxType, isTarget func(Context) bool, ...) + func AddBoxDef(payload IBox, versions ...uint8) + func AddBoxDefEx(payload IBox, isTarget func(Context) bool, versions ...uint8) + func BrandAVC1() [4]byte + func BrandISO2() [4]byte + func BrandISO3() [4]byte + func BrandISO4() [4]byte + func BrandISO5() [4]byte + func BrandISO6() [4]byte + func BrandISO7() [4]byte + func BrandISO8() [4]byte + func BrandISO9() [4]byte + func BrandISOM() [4]byte + func BrandMP41() [4]byte + func BrandMP71() [4]byte + func BrandQT() [4]byte + func FindIDRFrames(r io.ReadSeeker, trackInfo *TrackInfo) ([]int, error) + func IsIlstMetaBoxType(boxType BoxType) bool + func Marshal(w io.Writer, src IImmutableBox, ctx Context) (n uint64, err error) + func ReadBoxStructure(r io.ReadSeeker, handler ReadHandler, params ...interface{}) ([]interface{}, error) + func ReadBoxStructureFromInternal(r io.ReadSeeker, bi *BoxInfo, handler ReadHandler, params ...interface{}) (interface{}, error) + func ShouldHasNoChildren(boxType BoxType) bool + func Stringify(src IImmutableBox, ctx Context) (string, error) + func StringifyWithIndent(src IImmutableBox, indent string, ctx Context) (string, error) + func Unmarshal(r io.ReadSeeker, payloadSize uint64, dst IBox, ctx Context) (n uint64, err error) + type AVCDecConfigInfo struct + ConfigurationVersion uint8 + Height uint16 + LengthSize uint16 + Level uint8 + Profile uint8 + ProfileCompatibility uint8 + Width uint16 + type AVCDecoderConfiguration struct + BitDepthChromaMinus8 uint8 + BitDepthLumaMinus8 uint8 + ChromaFormat uint8 + ConfigurationVersion uint8 + HighProfileFieldsEnabled bool + LengthSizeMinusOne uint8 + Level uint8 + NumOfPictureParameterSets uint8 + NumOfSequenceParameterSetExt uint8 + NumOfSequenceParameterSets uint8 + PictureParameterSets []AVCParameterSet + Profile uint8 + ProfileCompatibility uint8 + Reserved uint8 + Reserved2 uint8 + Reserved3 uint8 + Reserved4 uint8 + Reserved5 uint8 + SequenceParameterSets []AVCParameterSet + SequenceParameterSetsExt []AVCParameterSet + func (avcc *AVCDecoderConfiguration) GetFieldLength(name string, ctx Context) uint + func (avcc *AVCDecoderConfiguration) IsOptFieldEnabled(name string, ctx Context) bool + func (avcc *AVCDecoderConfiguration) OnReadField(name string, r util.ReadSeeker, leftBits uint64, ctx Context) (rbits uint64, override bool, err error) + func (avcc *AVCDecoderConfiguration) OnWriteField(name string, w util.Writer, ctx Context) (wbits uint64, override bool, err error) + type AVCParameterSet struct + Length uint16 + NALUnit []byte + func (s *AVCParameterSet) GetFieldLength(name string, ctx Context) uint + type AlternativeStartupEntry struct + FirstOutputSample uint16 + Opts []AlternativeStartupEntryOpt + RollCount uint16 + SampleOffset []uint32 + func (entry *AlternativeStartupEntry) GetFieldLength(name string, ctx Context) uint + type AlternativeStartupEntryL struct + DescriptionLength uint32 + func (entry *AlternativeStartupEntryL) GetFieldSize(name string, ctx Context) uint + type AlternativeStartupEntryOpt struct + NumOutputSamples uint16 + NumTotalSamples uint16 + type AnyTypeBox struct + Type BoxType + func (e *AnyTypeBox) GetType() BoxType + func (e *AnyTypeBox) SetType(boxType BoxType) + type AudioSampleEntry struct + ChannelCount uint16 + EntryVersion uint16 + PreDefined uint16 + QuickTimeData []byte + Reserved [3]uint16 + Reserved2 uint16 + SampleRate uint32 + SampleSize uint16 + func (ase *AudioSampleEntry) GetFieldLength(name string, ctx Context) uint + func (ase *AudioSampleEntry) GetSampleRate() float64 + func (ase *AudioSampleEntry) GetSampleRateInt() uint16 + func (ase *AudioSampleEntry) IsOptFieldEnabled(name string, ctx Context) bool + func (ase *AudioSampleEntry) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Av1C struct + ChromaSamplePosition uint8 + ChromaSubsamplingX uint8 + ChromaSubsamplingY uint8 + ConfigOBUs []uint8 + HighBitdepth uint8 + InitialPresentationDelayMinusOne uint8 + InitialPresentationDelayPresent uint8 + Marker uint8 + Monochrome uint8 + Reserved uint8 + SeqLevelIdx0 uint8 + SeqProfile uint8 + SeqTier0 uint8 + TwelveBit uint8 + Version uint8 + func (Av1C) GetType() BoxType + type BaseCustomFieldObject struct + func (*BaseCustomFieldObject) BeforeUnmarshal(io.ReadSeeker, uint64, Context) (uint64, bool, error) + func (*BaseCustomFieldObject) IsPString(name string, bytes []byte, remainingSize uint64, ctx Context) bool + func (*BaseCustomFieldObject) OnReadField(string, util.ReadSeeker, uint64, Context) (uint64, bool, error) + func (*BaseCustomFieldObject) OnWriteField(string, util.Writer, Context) (uint64, bool, error) + func (box *BaseCustomFieldObject) GetFieldLength(string, Context) uint + func (box *BaseCustomFieldObject) GetFieldSize(string, Context) uint + func (box *BaseCustomFieldObject) IsOptFieldEnabled(string, Context) bool + func (box *BaseCustomFieldObject) StringifyField(string, string, int, Context) (string, bool) + type Box struct + func (box *Box) AddFlag(flag uint32) + func (box *Box) CheckFlag(flag uint32) bool + func (box *Box) GetFlags() uint32 + func (box *Box) GetVersion() uint8 + func (box *Box) RemoveFlag(flag uint32) + func (box *Box) SetFlags(uint32) + func (box *Box) SetVersion(uint8) + type BoxInfo struct + ExtendToEOF bool + HeaderSize uint64 + Offset uint64 + Size uint64 + Type BoxType + func ExtractBox(r io.ReadSeeker, parent *BoxInfo, path BoxPath) ([]*BoxInfo, error) + func ExtractBoxes(r io.ReadSeeker, parent *BoxInfo, paths []BoxPath) ([]*BoxInfo, error) + func ReadBoxInfo(r io.ReadSeeker) (*BoxInfo, error) + func WriteBoxInfo(w io.WriteSeeker, bi *BoxInfo) (*BoxInfo, error) + func (bi *BoxInfo) IsSupportedType() bool + func (bi *BoxInfo) SeekToEnd(s io.Seeker) (int64, error) + func (bi *BoxInfo) SeekToPayload(s io.Seeker) (int64, error) + func (bi *BoxInfo) SeekToStart(s io.Seeker) (int64, error) + type BoxInfoWithPayload struct + Info BoxInfo + Payload IBox + func ExtractBoxWithPayload(r io.ReadSeeker, parent *BoxInfo, path BoxPath) ([]*BoxInfoWithPayload, error) + func ExtractBoxesWithPayload(r io.ReadSeeker, parent *BoxInfo, paths []BoxPath) ([]*BoxInfoWithPayload, error) + type BoxPath []BoxType + type BoxType [4]byte + func BoxTypeAC3() BoxType + func BoxTypeAny() BoxType + func BoxTypeAv01() BoxType + func BoxTypeAv1C() BoxType + func BoxTypeAvc1() BoxType + func BoxTypeAvcC() BoxType + func BoxTypeBtrt() BoxType + func BoxTypeCo64() BoxType + func BoxTypeColr() BoxType + func BoxTypeCslg() BoxType + func BoxTypeCtts() BoxType + func BoxTypeDAC3() BoxType + func BoxTypeDOps() BoxType + func BoxTypeData() BoxType + func BoxTypeDinf() BoxType + func BoxTypeDref() BoxType + func BoxTypeEdts() BoxType + func BoxTypeElst() BoxType + func BoxTypeEmsg() BoxType + func BoxTypeEnca() BoxType + func BoxTypeEncv() BoxType + func BoxTypeEsds() BoxType + func BoxTypeFiel() BoxType + func BoxTypeFree() BoxType + func BoxTypeFrma() BoxType + func BoxTypeFtyp() BoxType + func BoxTypeHdlr() BoxType + func BoxTypeHev1() BoxType + func BoxTypeHvc1() BoxType + func BoxTypeHvcC() BoxType + func BoxTypeIlst() BoxType + func BoxTypeMdat() BoxType + func BoxTypeMdhd() BoxType + func BoxTypeMdia() BoxType + func BoxTypeMehd() BoxType + func BoxTypeMeta() BoxType + func BoxTypeMfhd() BoxType + func BoxTypeMfra() BoxType + func BoxTypeMfro() BoxType + func BoxTypeMinf() BoxType + func BoxTypeMoof() BoxType + func BoxTypeMoov() BoxType + func BoxTypeMp4a() BoxType + func BoxTypeMp4v() BoxType + func BoxTypeMvex() BoxType + func BoxTypeMvhd() BoxType + func BoxTypeOpus() BoxType + func BoxTypePasp() BoxType + func BoxTypePssh() BoxType + func BoxTypeSaio() BoxType + func BoxTypeSaiz() BoxType + func BoxTypeSbgp() BoxType + func BoxTypeSchi() BoxType + func BoxTypeSchm() BoxType + func BoxTypeSdtp() BoxType + func BoxTypeSgpd() BoxType + func BoxTypeSidx() BoxType + func BoxTypeSinf() BoxType + func BoxTypeSkip() BoxType + func BoxTypeSmhd() BoxType + func BoxTypeStbl() BoxType + func BoxTypeStco() BoxType + func BoxTypeStsc() BoxType + func BoxTypeStsd() BoxType + func BoxTypeStss() BoxType + func BoxTypeStsz() BoxType + func BoxTypeStts() BoxType + func BoxTypeStyp() BoxType + func BoxTypeTenc() BoxType + func BoxTypeTfdt() BoxType + func BoxTypeTfhd() BoxType + func BoxTypeTfra() BoxType + func BoxTypeTkhd() BoxType + func BoxTypeTraf() BoxType + func BoxTypeTrak() BoxType + func BoxTypeTrep() BoxType + func BoxTypeTrex() BoxType + func BoxTypeTrun() BoxType + func BoxTypeUdta() BoxType + func BoxTypeUrl() BoxType + func BoxTypeUrn() BoxType + func BoxTypeVmhd() BoxType + func BoxTypeVp08() BoxType + func BoxTypeVp09() BoxType + func BoxTypeVpcC() BoxType + func BoxTypeWave() BoxType + func StrToBoxType(code string) BoxType + func (boxType BoxType) GetSupportedVersions(ctx Context) ([]uint8, error) + func (boxType BoxType) IsSupported(ctx Context) bool + func (boxType BoxType) IsSupportedVersion(ver uint8, ctx Context) bool + func (boxType BoxType) New(ctx Context) (IBox, error) + func (boxType BoxType) String() string + func (lhs BoxType) MatchWith(rhs BoxType) bool + type Btrt struct + AvgBitrate uint32 + BufferSizeDB uint32 + MaxBitrate uint32 + func (*Btrt) GetType() BoxType + type Chunk struct + DataOffset uint64 + SamplesPerChunk uint32 + type Chunks []*Chunk + type Co64 struct + ChunkOffset []uint64 + EntryCount uint32 + func (*Co64) GetType() BoxType + func (co64 *Co64) GetFieldLength(name string, ctx Context) uint + type Codec int + const CodecAVC1 + const CodecMP4A + const CodecUnknown + type Colr struct + ColourPrimaries uint16 + ColourType [4]byte + FullRangeFlag bool + MatrixCoefficients uint16 + Profile []byte + Reserved uint8 + TransferCharacteristics uint16 + Unknown []byte + func (*Colr) GetType() BoxType + func (colr *Colr) IsOptFieldEnabled(name string, ctx Context) bool + type CompatibleBrandElem struct + CompatibleBrand [4]byte + type Context struct + IsQuickTimeCompatible bool + UnderIlst bool + UnderIlstFreeMeta bool + UnderIlstMeta bool + UnderUdta bool + UnderWave bool + type Cslg struct + CompositionEndTimeV0 int32 + CompositionEndTimeV1 int64 + CompositionStartTimeV0 int32 + CompositionStartTimeV1 int64 + CompositionToDTSShiftV0 int32 + CompositionToDTSShiftV1 int64 + GreatestDecodeToDisplayDeltaV0 int32 + GreatestDecodeToDisplayDeltaV1 int64 + LeastDecodeToDisplayDeltaV0 int32 + LeastDecodeToDisplayDeltaV1 int64 + func (*Cslg) GetType() BoxType + func (cslg *Cslg) GetCompositionEndTime() int64 + func (cslg *Cslg) GetCompositionStartTime() int64 + func (cslg *Cslg) GetCompositionToDTSShift() int64 + func (cslg *Cslg) GetGreatestDecodeToDisplayDelta() int64 + func (cslg *Cslg) GetLeastDecodeToDisplayDelta() int64 + type Ctts struct + Entries []CttsEntry + EntryCount uint32 + func (*Ctts) GetType() BoxType + func (ctts *Ctts) GetFieldLength(name string, ctx Context) uint + func (ctts *Ctts) GetSampleOffset(index int) int64 + type CttsEntry struct + SampleCount uint32 + SampleOffsetV0 uint32 + SampleOffsetV1 int32 + type DOps struct + ChannelMapping []uint8 + ChannelMappingFamily uint8 + CoupledCount uint8 + InputSampleRate uint32 + OutputChannelCount uint8 + OutputGain int16 + PreSkip uint16 + StreamCount uint8 + Version uint8 + func (DOps) GetType() BoxType + func (dops DOps) IsOptFieldEnabled(name string, ctx Context) bool + func (ops DOps) GetFieldLength(name string, ctx Context) uint + type Dac3 struct + Acmod uint8 + BitRateCode uint8 + Bsid uint8 + Bsmod uint8 + Fscod uint8 + LfeOn uint8 + Reserved uint8 + func (Dac3) GetType() BoxType + type Data struct + Data []byte + DataLang uint32 + DataType uint32 + func (*Data) GetType() BoxType + func (data *Data) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type DecoderConfigDescriptor struct + AvgBitrate uint32 + BufferSizeDB uint32 + MaxBitrate uint32 + ObjectTypeIndication byte + Reserved bool + StreamType int8 + UpStream bool + type Descriptor struct + Data []byte + DecoderConfigDescriptor *DecoderConfigDescriptor + ESDescriptor *ESDescriptor + Size uint32 + Tag int8 + func (ds *Descriptor) GetFieldLength(name string, ctx Context) uint + func (ds *Descriptor) IsOptFieldEnabled(name string, ctx Context) bool + func (ds *Descriptor) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Dinf struct + func (*Dinf) GetType() BoxType + type Dref struct + EntryCount uint32 + func (*Dref) GetType() BoxType + type ESDescriptor struct + DependsOnESID uint16 + ESID uint16 + OCRESID uint16 + OcrStreamFlag bool + StreamDependenceFlag bool + StreamPriority int8 + URLLength uint8 + URLString []byte + UrlFlag bool + func (esds *ESDescriptor) GetFieldLength(name string, ctx Context) uint + func (esds *ESDescriptor) IsOptFieldEnabled(name string, ctx Context) bool + type EditList []*EditListEntry + type EditListEntry struct + MediaTime int64 + SegmentDuration uint64 + type Edts struct + func (*Edts) GetType() BoxType + type Elst struct + Entries []ElstEntry + EntryCount uint32 + func (*Elst) GetType() BoxType + func (elst *Elst) GetFieldLength(name string, ctx Context) uint + func (elst *Elst) GetFieldSize(name string, ctx Context) uint + func (elst *Elst) GetMediaTime(index int) int64 + func (elst *Elst) GetSegmentDuration(index int) uint64 + type ElstEntry struct + MediaRateFraction int16 + MediaRateInteger int16 + MediaTimeV0 int32 + MediaTimeV1 int64 + SegmentDurationV0 uint32 + SegmentDurationV1 uint64 + type Emsg struct + EventDuration uint32 + Id uint32 + MessageData []byte + PresentationTime uint64 + PresentationTimeDelta uint32 + SchemeIdUri string + Timescale uint32 + Value string + func (*Emsg) GetType() BoxType + func (emsg *Emsg) OnReadField(name string, r util.ReadSeeker, leftBits uint64, ctx Context) (rbits uint64, override bool, err error) + func (emsg *Emsg) OnWriteField(name string, w util.Writer, ctx Context) (wbits uint64, override bool, err error) + type Esds struct + Descriptors []Descriptor + func (*Esds) GetType() BoxType + type Fiel struct + FieldCount uint8 + FieldOrdering uint8 + func (Fiel) GetType() BoxType + type FraProbeInfo = ProbeInfo + func ProbeFra(r io.ReadSeeker) (*FraProbeInfo, error) + type Free FreeSpace + func (*Free) GetType() BoxType + type FreeSpace struct + Data []uint8 + type Frma struct + DataFormat [4]byte + func (*Frma) GetType() BoxType + type Ftyp struct + CompatibleBrands []CompatibleBrandElem + MajorBrand [4]byte + MinorVersion uint32 + func (*Ftyp) GetType() BoxType + func (ftyp *Ftyp) AddCompatibleBrand(cb [4]byte) + func (ftyp *Ftyp) HasCompatibleBrand(cb [4]byte) bool + func (ftyp *Ftyp) RemoveCompatibleBrand(cb [4]byte) + type FullBox struct + Flags [3]byte + Version uint8 + func (box *FullBox) AddFlag(flag uint32) + func (box *FullBox) CheckFlag(flag uint32) bool + func (box *FullBox) GetFlags() uint32 + func (box *FullBox) GetVersion() uint8 + func (box *FullBox) RemoveFlag(flag uint32) + func (box *FullBox) SetFlags(flags uint32) + func (box *FullBox) SetVersion(version uint8) + type HEVCNalu struct + Length uint16 + NALUnit []byte + func (s HEVCNalu) GetFieldLength(name string, ctx Context) uint + type HEVCNaluArray struct + Completeness bool + NaluType uint8 + Nalus []HEVCNalu + NumNalus uint16 + Reserved bool + func (a HEVCNaluArray) GetFieldLength(name string, ctx Context) uint + type Hdlr struct + HandlerType [4]byte + Name string + PreDefined uint32 + Reserved [3]uint32 + func (*Hdlr) GetType() BoxType + func (hdlr *Hdlr) OnReadField(name string, r util.ReadSeeker, leftBits uint64, ctx Context) (rbits uint64, override bool, err error) + func (hdlr *Hdlr) OnReadName(r util.ReadSeeker, leftBits uint64, ctx Context) (rbits uint64, override bool, err error) + type HvcC struct + AvgFrameRate uint16 + BitDepthChromaMinus8 uint8 + BitDepthLumaMinus8 uint8 + ChromaFormatIdc uint8 + ConfigurationVersion uint8 + ConstantFrameRate uint8 + GeneralConstraintIndicator [6]uint8 + GeneralLevelIdc uint8 + GeneralProfileCompatibility [32]bool + GeneralProfileIdc uint8 + GeneralProfileSpace uint8 + GeneralTierFlag bool + LengthSizeMinusOne uint8 + MinSpatialSegmentationIdc uint16 + NaluArrays []HEVCNaluArray + NumOfNaluArrays uint8 + NumTemporalLayers uint8 + ParallelismType uint8 + Reserved1 uint8 + Reserved2 uint8 + Reserved3 uint8 + Reserved4 uint8 + Reserved5 uint8 + TemporalIdNested uint8 + func (HvcC) GetType() BoxType + func (hvcc HvcC) GetFieldLength(name string, ctx Context) uint + type IAnyType interface + SetType func(BoxType) + type IBox interface + AddFlag func(uint32) + RemoveFlag func(uint32) + SetFlags func(uint32) + SetVersion func(uint8) + func UnmarshalAny(r io.ReadSeeker, boxType BoxType, payloadSize uint64, ctx Context) (box IBox, n uint64, err error) + type ICustomFieldObject interface + BeforeUnmarshal func(r io.ReadSeeker, size uint64, ctx Context) (n uint64, override bool, err error) + GetFieldLength func(name string, ctx Context) uint + GetFieldSize func(name string, ctx Context) uint + IsOptFieldEnabled func(name string, ctx Context) bool + IsPString func(name string, bytes []byte, remainingSize uint64, ctx Context) bool + OnReadField func(name string, r util.ReadSeeker, leftBits uint64, ctx Context) (rbits uint64, override bool, err error) + OnWriteField func(name string, w util.Writer, ctx Context) (wbits uint64, override bool, err error) + StringifyField func(name string, indent string, depth int, ctx Context) (string, bool) + type IImmutableBox interface + CheckFlag func(uint32) bool + GetFlags func() uint32 + GetType func() BoxType + GetVersion func() uint8 + type Ilst struct + func (*Ilst) GetType() BoxType + type IlstMetaContainer struct + type MP4AInfo struct + AudOTI uint8 + ChannelCount uint16 + OTI uint8 + type Mdat struct + Data []byte + func (*Mdat) GetType() BoxType + type Mdhd struct + CreationTimeV0 uint32 + CreationTimeV1 uint64 + DurationV0 uint32 + DurationV1 uint64 + Language [3]byte + ModificationTimeV0 uint32 + ModificationTimeV1 uint64 + Pad bool + PreDefined uint16 + Timescale uint32 + func (*Mdhd) GetType() BoxType + func (mdhd *Mdhd) GetCreationTime() uint64 + func (mdhd *Mdhd) GetDuration() uint64 + func (mdhd *Mdhd) GetModificationTime() uint64 + type Mdia struct + func (*Mdia) GetType() BoxType + type Mehd struct + FragmentDurationV0 uint32 + FragmentDurationV1 uint64 + func (*Mehd) GetType() BoxType + func (mdhd *Mehd) GetFragmentDuration() uint64 + type Meta struct + func (*Meta) GetType() BoxType + func (meta *Meta) BeforeUnmarshal(r io.ReadSeeker, size uint64, ctx Context) (n uint64, override bool, err error) + type Mfhd struct + SequenceNumber uint32 + func (*Mfhd) GetType() BoxType + type Mfra struct + func (*Mfra) GetType() BoxType + type Mfro struct + Size uint32 + func (*Mfro) GetType() BoxType + type Minf struct + func (*Minf) GetType() BoxType + type Moof struct + func (*Moof) GetType() BoxType + type Moov struct + func (*Moov) GetType() BoxType + type Mvex struct + func (*Mvex) GetType() BoxType + type Mvhd struct + CreationTimeV0 uint32 + CreationTimeV1 uint64 + DurationV0 uint32 + DurationV1 uint64 + Matrix [9]int32 + ModificationTimeV0 uint32 + ModificationTimeV1 uint64 + NextTrackID uint32 + PreDefined [6]int32 + Rate int32 + Reserved int16 + Reserved2 [2]uint32 + Timescale uint32 + Volume int16 + func (*Mvhd) GetType() BoxType + func (mvhd *Mvhd) GetCreationTime() uint64 + func (mvhd *Mvhd) GetDuration() uint64 + func (mvhd *Mvhd) GetModificationTime() uint64 + func (mvhd *Mvhd) GetRate() float64 + func (mvhd *Mvhd) GetRateInt() int16 + func (mvhd *Mvhd) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type PixelAspectRatioBox struct + HSpacing uint32 + VSpacing uint32 + type ProbeInfo struct + CompatibleBrands [][4]byte + Duration uint64 + FastStart bool + MajorBrand [4]byte + MinorVersion uint32 + Segments Segments + Timescale uint32 + Tracks Tracks + func Probe(r io.ReadSeeker) (*ProbeInfo, error) + type Pssh struct + Data []byte + DataSize int32 + KIDCount uint32 + KIDs []PsshKID + SystemID [16]byte + func (*Pssh) GetType() BoxType + func (pssh *Pssh) GetFieldLength(name string, ctx Context) uint + func (pssh *Pssh) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type PsshKID struct + KID [16]byte + type ReadHandle struct + BoxInfo BoxInfo + Expand func(params ...interface{}) (vals []interface{}, err error) + Params []interface{} + Path BoxPath + ReadData func(io.Writer) (n uint64, err error) + ReadPayload func() (box IBox, n uint64, err error) + type ReadHandler func(handle *ReadHandle) (val interface{}, err error) + type RollDistanceWithLength struct + DescriptionLength uint32 + RollDistance int16 + type Saio struct + AuxInfoType [4]byte + AuxInfoTypeParameter uint32 + EntryCount uint32 + OffsetV0 []uint32 + OffsetV1 []uint64 + func (*Saio) GetType() BoxType + func (saio *Saio) GetFieldLength(name string, ctx Context) uint + func (saio *Saio) GetOffset(index int) uint64 + type Saiz struct + AuxInfoType [4]byte + AuxInfoTypeParameter uint32 + DefaultSampleInfoSize uint8 + SampleCount uint32 + SampleInfoSize []uint8 + func (*Saiz) GetType() BoxType + func (saiz *Saiz) GetFieldLength(name string, ctx Context) uint + func (saiz *Saiz) IsOptFieldEnabled(name string, ctx Context) bool + type Sample struct + CompositionTimeOffset int64 + Size uint32 + TimeDelta uint32 + type SampleEntry struct + DataReferenceIndex uint16 + Reserved [6]uint8 + type Samples []*Sample + func (samples Samples) GetBitrate(timescale uint32) uint64 + func (samples Samples) GetMaxBitrate(timescale uint32, timeDelta uint64) uint64 + type Sbgp struct + Entries []SbgpEntry + EntryCount uint32 + GroupingType uint32 + GroupingTypeParameter uint32 + func (*Sbgp) GetType() BoxType + func (sbgp *Sbgp) GetFieldLength(name string, ctx Context) uint + type SbgpEntry struct + GroupDescriptionIndex uint32 + SampleCount uint32 + type Schi struct + func (*Schi) GetType() BoxType + type Schm struct + SchemeType [4]byte + SchemeUri []byte + SchemeVersion uint32 + func (*Schm) GetType() BoxType + type Sdtp struct + Samples []SdtpSampleElem + func (*Sdtp) GetType() BoxType + type SdtpSampleElem struct + IsLeading uint8 + SampleDependsOn uint8 + SampleHasRedundancy uint8 + SampleIsDependedOn uint8 + type Segment struct + BaseMediaDecodeTime uint64 + CompositionTimeOffset int32 + DefaultSampleDuration uint32 + Duration uint32 + MoofOffset uint64 + SampleCount uint32 + Size uint32 + TrackID uint32 + type SegmentInfo = Segment + type Segments []*Segment + func (segments Segments) GetBitrate(trackID uint32, timescale uint32) uint64 + func (segments Segments) GetMaxBitrate(trackID uint32, timescale uint32) uint64 + type Sgpd struct + AlternativeStartupEntries []AlternativeStartupEntry + AlternativeStartupEntriesL []AlternativeStartupEntryL + DefaultLength uint32 + DefaultSampleDescriptionIndex uint32 + EntryCount uint32 + GroupingType [4]byte + RollDistances []int16 + RollDistancesL []RollDistanceWithLength + TemporalLevelEntries []TemporalLevelEntry + TemporalLevelEntriesL []TemporalLevelEntryL + Unsupported []byte + VisualRandomAccessEntries []VisualRandomAccessEntry + VisualRandomAccessEntriesL []VisualRandomAccessEntryL + func (*Sgpd) GetType() BoxType + func (sgpd *Sgpd) GetFieldLength(name string, ctx Context) uint + func (sgpd *Sgpd) GetFieldSize(name string, ctx Context) uint + func (sgpd *Sgpd) IsOptFieldEnabled(name string, ctx Context) bool + type Sidx struct + EarliestPresentationTimeV0 uint32 + EarliestPresentationTimeV1 uint64 + FirstOffsetV0 uint32 + FirstOffsetV1 uint64 + ReferenceCount uint16 + ReferenceID uint32 + References []SidxReference + Reserved uint16 + Timescale uint32 + func (*Sidx) GetType() BoxType + func (sidx *Sidx) GetEarliestPresentationTime() uint64 + func (sidx *Sidx) GetFieldLength(name string, ctx Context) uint + func (sidx *Sidx) GetFirstOffset() uint64 + type SidxReference struct + ReferenceType bool + ReferencedSize uint32 + SAPDeltaTime uint32 + SAPType uint32 + StartsWithSAP bool + SubsegmentDuration uint32 + type Sinf struct + func (*Sinf) GetType() BoxType + type Skip FreeSpace + func (*Skip) GetType() BoxType + type Smhd struct + Balance int16 + Reserved uint16 + func (*Smhd) GetType() BoxType + func (smhd *Smhd) GetBalance() float32 + func (smhd *Smhd) GetBalanceInt() int8 + func (smhd *Smhd) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Stbl struct + func (*Stbl) GetType() BoxType + type Stco struct + ChunkOffset []uint32 + EntryCount uint32 + func (*Stco) GetType() BoxType + func (stco *Stco) GetFieldLength(name string, ctx Context) uint + type StringData struct + Data []byte + func (sd *StringData) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Stsc struct + Entries []StscEntry + EntryCount uint32 + func (*Stsc) GetType() BoxType + func (stsc *Stsc) GetFieldLength(name string, ctx Context) uint + type StscEntry struct + FirstChunk uint32 + SampleDescriptionIndex uint32 + SamplesPerChunk uint32 + type Stsd struct + EntryCount uint32 + func (*Stsd) GetType() BoxType + type Stss struct + EntryCount uint32 + SampleNumber []uint32 + func (*Stss) GetType() BoxType + func (stss *Stss) GetFieldLength(name string, ctx Context) uint + type Stsz struct + EntrySize []uint32 + SampleCount uint32 + SampleSize uint32 + func (*Stsz) GetType() BoxType + func (stsz *Stsz) GetFieldLength(name string, ctx Context) uint + type Stts struct + Entries []SttsEntry + EntryCount uint32 + func (*Stts) GetType() BoxType + func (stts *Stts) GetFieldLength(name string, ctx Context) uint + type SttsEntry struct + SampleCount uint32 + SampleDelta uint32 + type Styp struct + CompatibleBrands []CompatibleBrandElem + MajorBrand [4]byte + MinorVersion uint32 + func (*Styp) GetType() BoxType + type TemporalLevelEntry struct + LevelIndependentlyDecodable bool + Reserved uint8 + type TemporalLevelEntryL struct + DescriptionLength uint32 + type Tenc struct + DefaultConstantIV []byte + DefaultConstantIVSize uint8 + DefaultCryptByteBlock uint8 + DefaultIsProtected uint8 + DefaultKID [16]byte + DefaultPerSampleIVSize uint8 + DefaultSkipByteBlock uint8 + Reserved uint8 + func (*Tenc) GetType() BoxType + func (tenc *Tenc) GetFieldLength(name string, ctx Context) uint + func (tenc *Tenc) IsOptFieldEnabled(name string, ctx Context) bool + type Tfdt struct + BaseMediaDecodeTimeV0 uint32 + BaseMediaDecodeTimeV1 uint64 + func (*Tfdt) GetType() BoxType + func (tfdt *Tfdt) GetBaseMediaDecodeTime() uint64 + type Tfhd struct + BaseDataOffset uint64 + DefaultSampleDuration uint32 + DefaultSampleFlags uint32 + DefaultSampleSize uint32 + SampleDescriptionIndex uint32 + TrackID uint32 + func (*Tfhd) GetType() BoxType + type Tfra struct + Entries []TfraEntry + LengthSizeOfSampleNum byte + LengthSizeOfTrafNum byte + LengthSizeOfTrunNum byte + NumberOfEntry uint32 + Reserved uint32 + TrackID uint32 + func (*Tfra) GetType() BoxType + func (tfra *Tfra) GetFieldLength(name string, ctx Context) uint + func (tfra *Tfra) GetFieldSize(name string, ctx Context) uint + func (tfra *Tfra) GetMoofOffset(index int) uint64 + func (tfra *Tfra) GetTime(index int) uint64 + type TfraEntry struct + MoofOffsetV0 uint32 + MoofOffsetV1 uint64 + SampleNumber uint32 + TimeV0 uint32 + TimeV1 uint64 + TrafNumber uint32 + TrunNumber uint32 + type Tkhd struct + AlternateGroup int16 + CreationTimeV0 uint32 + CreationTimeV1 uint64 + DurationV0 uint32 + DurationV1 uint64 + Height uint32 + Layer int16 + Matrix [9]int32 + ModificationTimeV0 uint32 + ModificationTimeV1 uint64 + Reserved0 uint32 + Reserved1 [2]uint32 + Reserved2 uint16 + TrackID uint32 + Volume int16 + Width uint32 + func (*Tkhd) GetType() BoxType + func (tkhd *Tkhd) GetCreationTime() uint64 + func (tkhd *Tkhd) GetDuration() uint64 + func (tkhd *Tkhd) GetHeight() float64 + func (tkhd *Tkhd) GetHeightInt() uint16 + func (tkhd *Tkhd) GetModificationTime() uint64 + func (tkhd *Tkhd) GetWidth() float64 + func (tkhd *Tkhd) GetWidthInt() uint16 + func (tkhd *Tkhd) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Track struct + AVC *AVCDecConfigInfo + Chunks Chunks + Codec Codec + Duration uint64 + EditList EditList + Encrypted bool + MP4A *MP4AInfo + Samples Samples + Timescale uint32 + TrackID uint32 + type TrackInfo = Track + type Tracks []*Track + type Traf struct + func (*Traf) GetType() BoxType + type Trak struct + func (*Trak) GetType() BoxType + type Trep struct + TrackID uint32 + func (*Trep) GetType() BoxType + type Trex struct + DefaultSampleDescriptionIndex uint32 + DefaultSampleDuration uint32 + DefaultSampleFlags uint32 + DefaultSampleSize uint32 + TrackID uint32 + func (*Trex) GetType() BoxType + type Trun struct + DataOffset int32 + Entries []TrunEntry + FirstSampleFlags uint32 + SampleCount uint32 + func (*Trun) GetType() BoxType + func (trun *Trun) GetFieldLength(name string, ctx Context) uint + func (trun *Trun) GetFieldSize(name string, ctx Context) uint + func (trun *Trun) GetSampleCompositionTimeOffset(index int) int64 + type TrunEntry struct + SampleCompositionTimeOffsetV0 uint32 + SampleCompositionTimeOffsetV1 int32 + SampleDuration uint32 + SampleFlags uint32 + SampleSize uint32 + type Udta struct + func (*Udta) GetType() BoxType + type Udta3GppString struct + Data []byte + Language [3]byte + Pad bool + type Url struct + Location string + func (*Url) GetType() BoxType + type Urn struct + Location string + Name string + func (*Urn) GetType() BoxType + type VisualRandomAccessEntry struct + NumLeadingSamples uint8 + NumLeadingSamplesKnown bool + type VisualRandomAccessEntryL struct + DescriptionLength uint32 + type VisualSampleEntry struct + Compressorname [32]byte + Depth uint16 + FrameCount uint16 + Height uint16 + Horizresolution uint32 + PreDefined uint16 + PreDefined2 [3]uint32 + PreDefined3 int16 + Reserved uint16 + Reserved2 uint32 + Vertresolution uint32 + Width uint16 + func (vse *VisualSampleEntry) StringifyField(name string, indent string, depth int, ctx Context) (string, bool) + type Vmhd struct + Graphicsmode uint16 + Opcolor [3]uint16 + func (*Vmhd) GetType() BoxType + type VpcC struct + BitDepth uint8 + ChromaSubsampling uint8 + CodecInitializationData []uint8 + CodecInitializationDataSize uint16 + ColourPrimaries uint8 + Level uint8 + MatrixCoefficients uint8 + Profile uint8 + TransferCharacteristics uint8 + VideoFullRangeFlag uint8 + func (VpcC) GetType() BoxType + func (vpcc VpcC) GetFieldLength(name string, ctx Context) uint + type Wave struct + func (*Wave) GetType() BoxType + type Writer struct + func NewWriter(w io.WriteSeeker) *Writer + func (w *Writer) CopyBox(r io.ReadSeeker, bi *BoxInfo) error + func (w *Writer) EndBox() (*BoxInfo, error) + func (w *Writer) Seek(offset int64, whence int) (int64, error) + func (w *Writer) StartBox(bi *BoxInfo) (*BoxInfo, error) + func (w *Writer) Write(p []byte) (int, error)