Skip to content

Releases: radek-k/FFMediaToolkit

v4.0.1

18 Feb 08:43
Compare
Choose a tag to compare
  • Fixed the stride calculation method. (#68)

v4.0.0

10 Feb 14:24
ea0210e
Compare
Choose a tag to compare

v4.0.0 release

v3.4.0

15 Jan 12:13
Compare
Choose a tag to compare
  • Fixed a crash when disposing MediaFile created from a file path (#60, #61)
  • Added Rgba32 pixel format (#58)

v3.3.0

29 Dec 16:14
55de73a
Compare
Choose a tag to compare
  • Add FFmpeg license text property to the FFmpegLoader (#53)
  • Implement decoding video from the System.IO.Stream (#54)

v3.2.0

21 Dec 11:17
Compare
Choose a tag to compare

Release notes

  • Fixed the stream seek method (#50)
  • Added ReadFrameToPointer methods to allow writing decoded frame directly to the memory using a IntPtr instead of Span<byte> (#51)
  • Added new TryReadFrame methods to avoid throwing EndOfStreamException (#43)
  • Updated FFmpeg loading error messages.
  • Replaced FrameCount with NumberOfFrames property that returns null if frame count is not available instead of inaccurate estimation.

v3.1.1

19 Nov 08:57
Compare
Choose a tag to compare
  • Fixed the crash with AccessViolationException when decoding video. (#46 #40 #31 #49 )
  • Enabled assembly signing (#45)
  • Fixed some memory leaks in the video decoder (#47 )

v3.1.0

12 Sep 14:53
7c47db1
Compare
Choose a tag to compare
  • Fixed the AccessViolationException crash when disposing MediaFile (#32)
  • Added an option to set custom FFmpeg log callback (#35)
  • Added an option to specify the encoded video frame rate using a rational value (#34)

v3.0.0

03 Aug 12:13
5224cca
Compare
Choose a tag to compare

Release notes (v3.0 release):

Bug fixes:

  • Decoding:

    • Fixed a crash with AccessViolationException in the video frame decoding method (#31)
    • Fixed a crash when disposing MediaOutput.
  • Encoding:

    • Fixed the invalid DTS error when disposing H.264/H.265 encoder.

New features:

  • Decoding:

    • Added the IsVariableFrameRate and IsFrameCountProvidedByContainer properties to the StreamInfo class.
  • Encoding:

    • Added CRF and preset options in the VideoEncoderSettings class. (for H.264/H.265 codec)
    • Added an option to set metadata in container using the new ContainerMetadata class. (.UseMetadata(...) method in MediaBuilder)
    • Added an option to apply custom flags when creating a container (.UseFormatOption(key,value) method in MediaBuilder)
    • Added an option to specify a container format independently from target file name (using MediaBuilder.CreateContainer(path,format) overload)
    • Added option to set PTS for a new frame. (#23)
    • Added UYVY422 format support (#26)

Other improvements

  • Redesigned FFmpeg loader and improve exception messages.
  • Created a new class for multimedia metadata.
  • Merged VideoPixelFormat and ImagePixelFormat format
  • Improved frame decoding performance.
  • Improved FrameCount accuracy.
  • Created a new VideoCodec enum which only contains supported codecs (instead of FFmpeg.AutoGen.AVCodecID)
  • Video encoder throws an exception when attempt to use the x264 encoder with LGPL FFmpeg binaries.

Migration guide

  • Use FFmpegLoader instead of MediaToolkit.
  • Use MediaBuilder.CreateContainer(...) instead of new MediaBuilder(...).
  • Use ImagePixelFormat instead of VideoPixelFormat.
  • Use the VideoCodec enum instead of FFmpeg.AutoGen.AVCodecID.

FFMediaToolkit-v2.2.1

18 Dec 15:02
Compare
Choose a tag to compare
  • Fixed a possible crash in the MediaToolkit.LogVerbosity property (when setting the log level before specifying the FFmpeg directory).

FFMediaToolkit-v2.2.0

13 Dec 16:32
Compare
Choose a tag to compare
  • Added a FFmpeg log verbosity level setting (#19 )