Skip to content

Releases: Eyevinn/mp4ff

v0.47.0

12 Nov 11:30
Compare
Choose a tag to compare

Changed

  • CreatePrftBox now takes flags parameter
  • PrftBox Info output
  • Removed ReplaceChild method of StsdBox
  • CreateHdlr name for timed metadata
  • extension .m4s is interpreted as MP4 file in mp4ff-pslister
  • moved mp4.GetVersion() to internal.GetVersion()

Added

  • NTP64 struct with methods to convert to time.Time
  • Constants for PrftBox flags
  • Unittest to all programs in cmd and examples.
  • Documentation in doc.go files for all packages

Fixed

  • Allow missing optional DecoderSpecificInfo
  • Avoid mp4.File.Mdat pointing to an empty mdat box
  • cmd/mp4ff-encrypt did not parse command line
  • SeigSampleGroupEntry calculated skipBytes incorrectly
  • cmd/mp4ff-pslister did not parse annex B HEVC correctly
  • error when decrypting and re-encrypting a segment (issue #378)

v0.46.0

08 Aug 19:00
e2b2aeb
Compare
Choose a tag to compare

Fixed

  • mvhd, tkhd, and mdhd timestamps were off by one day
  • allow other sbgp and sgpd types than seig with senc

Added

  • mvhd, tkhd, and mdhd methods to set and get creation and modification times
  • Event Message boxes evte, emib, emeb
  • GetBtrt method to StsdBox
  • Btrt pointer attribute in AudioSampleEnntry
  • stpp can be used as value to CreateEmptyTrak

v0.45.1

12 Jul 10:42
b4b85be
Compare
Choose a tag to compare

Added

  • Box decoder error messages include start position

Fixed

  • Overflow in calculating sample decode time
  • elng box errononously did not include full box headers

Recap of v0.45.0

tagged 6 weeks earlier, but only released the same day

Changed

  • minimum Go version 1.16.
  • ioutil imports replaced by io and os imports
  • Info (mp4ff-info) output for esds boxes
  • API of descriptors
  • Parsing and info output for url boxes

Fixed

  • support for parsing of hierarchical sidx boxes
  • handling of partially bad descriptors
  • handle url boxes missing mandatory zero-ending byte

Added

  • support for ssix box
  • support for leva box
  • details of descriptors as Info outout (mp4ff-info)

v0.45.0

12 Jul 10:39
4c795c0
Compare
Choose a tag to compare

Changed

  • minimum Go version 1.16.
  • ioutil imports replaced by io and os imports
  • Info (mp4ff-info) output for esds boxes
  • API of descriptors
  • Parsing and info output for url boxes

Fixed

  • support for parsing of hierarchical sidx boxes
  • handling of partially bad descriptors
  • handle url boxes missing mandatory zero-ending byte

Added

  • support for ssix box
  • support for leva box
  • details of descriptors as Info outout (mp4ff-info)

v0.44.0

19 Apr 13:36
c85f831
Compare
Choose a tag to compare

Added

  • New TryDecodeMfro function
  • New mp4ff-subslister tool replacing mp4ff-wvttlister. It supports wvtt and stpp
  • File.UpdateSidx() to update or add a top level sidx box for a fragmented file
  • mp4.DecStartSegmentOnMoof flag to make the Decoder interpret every moof as
    a new segment start, unless styp, sidx, or mfra boxes give that information.
  • New example add-sidx shows how on can add a top-level sidx box to a fragmented file.
    It further has the option to remove unused encryption boxes, and to interpret each
    moof box as starting a new segment.
  • New method MoovBox.IsEncrypted() checks if an encrypted codec is signaled

Fixed

  • More robust check for mfro at the end of file
  • GetTrex() return value
  • Can now write PIFF uuid box that has previously been read
  • Does now avoid the second parsing of senc box if the file is ot encrypted as seen in moov box.

Removed

  • mp4ff-wvttlister tool removed and replaced by mp4ff-subslister

v0.43.0

19 Apr 13:33
bb8cefa
Compare
Choose a tag to compare

Added

  • InitSegment.TweakSingleTrakLive changes an init segment to fit live streaming
  • Made bits.Mask() function public
  • New counter methods added to bits.Reader
  • colr box support for nclc and unknown colour_type
  • av01, encv, and enca direct pointers in stsd

Changed

  • All readers and writers in bits package now stop working at first error and provides the first error as AccError()
  • Renamed bits.AccErrReader, bits.AccErrEBSPReader, bits.AccErrWriter to corresponiding names without AccErr
  • Renamed bits.SliceWriterError to bits.ErrSliceWrite
  • colr box supports unknown colrType

Fixed

  • kind box full-box header
  • stpp support when the optional fields do not have a zero-termination byte
  • mp4ff-wvttlister now lists all boxes in a sample

v0.42.0

26 Jan 12:50
d330870
Compare
Choose a tag to compare

Fixed

  • Support avc3 sample description when encrypting
  • Full ProfileLevelTier parsing for HEVC
  • Make pssh UUID comparison case-insensitive

Added

  • W3C Common PSSH Box UUID
  • HEVC PicTiming SEI message parsing
  • JSON marshaling of AVC PicTiming SEI message

v0.41.0

12 Jan 09:09
28f71a5
Compare
Choose a tag to compare

Added

  • Support for decrypting PIFF-encrypted segments

Fixed

  • Parsing of AVCDecoderConfigurationRecord
  • Parsing of time offset in AVC PicTiming SEI
  • Set senc.perSampleIVSize properly

v0.40.2

17 Nov 13:56
4701899
Compare
Choose a tag to compare

Fixed

  • Test of AVC PicTiming SEI with cbpDbpDelay set
  • mp4ff-nallister has nicer output for annexb streams
  • mp4ff-nallister handles AVC PicTiming SEI with cbpDbpDelay set

v0.40.1

01 Nov 08:13
381fa68
Compare
Choose a tag to compare

Fixed

  • Swap of parameters in mp4ff-decrypt