[API breaking change] DeviceEnumerator can now be used only by using DeviceEnumerator.Shared property. It is required to have one enumerator per app. DeviceEnumerator objects used by API have been removed
[API breaking change] Android Activity is not required anymore to create SDK engines
[API breaking change] X-engines require additional initialization and de-initialization steps. To initialize SDK, use the VisioForge.Core.VisioForgeX.InitSDK() call. To de-initialize SDK, use the VisioForge.Core.VisioForgeX.DestroySDK() call. You need to initialize SDK before any SDK class usage and de-initialize SDK before the application exits.
Improved MAUI video rendering performance in Windows
[Avalonia] Resolved an issue with Avalonia VideoView resize
Added the StartPosition and StopPosition properties to UniversalSourceSettings. You can use these properties to set the start and stop positions for the file source.
Resolved the issue with passwords with special characters used for RTSP sources
Resolved the rare video flip issue with the Virtual Camera SDK engine
The VisioForge MJPEG Decoder filter was removed from the SDK's NuGet packages. You can optionally add it to your project by file copying or COM registration deployment.
Fixed memory leak in the OverlayManager
Resolved issue with the VideoSampleGrabberBlock, SetLastFrame option
DeviceEnumerator got events to notify about devices added/removed: OnVideoSourceAdded, OnVideoSourceRemoved, OnAudioSourceAdded, OnAudioSourceRemoved, OnAudioSinkAdded, OnAudioSinkRemoved
Added custom error handler support for MediaBlocks, VideoCaptureCoreX, and MediaPlayerCoreX engines. Use the IMediaBlocksPipelineCustomErrorHandler interface and the SetCustomErrorHandler method to set a custom error handler.
Added the BufferSink block to get video/audio frames from the pipeline.
Added the CustomMediaBlock class to create custom media blocks for any GStreamer element.
Added the UpdateChannel method to update the channel of the bridge source or sink.
Updated device enumerator. Removed unwanted firewall dialog when listing NDI sources.
Fixed an issue with the video mixer when adding/removing video sources.
Added VideoCropBlock and VideoAspectRatioCropBlock blocks to crop video frames.
Resolved wrong frame rate issue with VideoRateBlock.
Added YouTubeSink and FacebookLiveSink blocks with custom YouTube/Facebook configurations. RTMPSink can stream to YouTube/Facebook the same as before.
Added SqueezeBack video mixer block.
Updated scrolling text logo. Added the Preload method to render a text overlay before playback.
Updated scrolling text logo (performance)
Updated Decklink sink blocks
Resolved crash with a text logo with a custom resolution
Added Intel QuickSync H264, HEVC, VP9 and MJPEG encoders support.
Updated MP4SinkBlock. The sink can split output files by duration, file size or timecode. Use MP4SplitSinkSettings instead MP4SinkSettings to configure.
Added VideoEffectsBlock to use video effects, available in Windows SDKs
Updated Decklink source
Added Decklink Demo (WPF)
Resolved the DeinterlaceBlend video effect crash
Used 3rd-party libraries moved to VisioForge.Libs.External assembly/NuGet
Added Nvidia Maxine Video Effects SDK (BETA) and sample app for Media Player SDK .Net and Video Capture SDK .Net