[X-engines] Resolved wrong aspect ratio with video resize effect/block
[X-engines] Updated GStreamer redist
[X-engines] Added Basler USB3/GigE cameras support in Media Blocks SDK .Net and Video Capture SDK .Net
[Windows] Added Stream support in MediaInfoReader. You can get the video/audio file information from a stream (DB, network, memory, etc.).
[X-engines] Updated Live Video Compositor engine, which improved support of the file sources
[X-engines] Added API to get snapshots from video files using MediaInfoReaderX: GetFileSnapshotBitmap, GetFileSnapshotSKBitmap, GetFileSnapshotRGB
[X-engines] iOS support in MAUI samples
[X-engines] Resolved memory leak issue for RTSP sources
MediaPlayerCore: Added support for data streams in video files using the FFMPEG source engine. Add the OnDataFrameBuffer event to get data frames (KLV or other) from the video file.
[Windows] Fixed the hang problem with the FFMPEG source when a network connection is lost
[X-engines] Added support for FLIR/Teledyne cameras (USB3Vision/GigE) using the Spinnaker SDK
.Net 7 support returned to the MAUI package (was removed by CI error).
The IAsyncDisposable interface was added to all SDK's core classes. DisposeAsync call should be used to dispose of the core objects in async methods.
[X-engines] Improved MAUI video rendering speed
[X-engines] Resolved MAUI media playback issues (decoding) in MAUI Android
[X-engines] Resolved an issue with the H264 webcam sources (sometimes not connected)
[X-engines] Resolved an issue with audio stream playback in the Live VideoCompositor engine
MediaPlayerCore: Added growing MPEG-TS file support for the VLC engine. You can play growing MPEG-TS files while it's recorded
15.8
[X-engines] [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
[X-engines] [API breaking change] Android Activity is not required anymore to create SDK engines
[X-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.
[Windows] Improved MAUI video rendering performance in Windows
[Windows] Added a mouse highlight for screen capture sources
[Windows] Resolved a CallbackOnCollectedDelegate call issue with the BasicWindow class
[Avalonia] Resolved an issue with Avalonia VideoView resize
[X-engines] 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.
[X-engines] Fixed memory leak in the OverlayManager
[X-engines] DeviceEnumerator got events to notify about devices added/removed: OnVideoSourceAdded, OnVideoSourceRemoved, OnAudioSourceAdded, OnAudioSourceRemoved, OnAudioSinkAdded, OnAudioSinkRemoved
[X-engines] 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.
MediaPlayerCore: Added Virtual_Camera_Output_AlternativeAudioFilterName property to set a custom audio filter for the Virtual Camera SDK output
MediaPlayerCore: Updated Tempo effect.
[X-engines] Updated device enumerator. Removed unwanted firewall dialog when listing NDI sources.
[X-engines] Fixed an issue with the video mixer when adding/removing video sources.
Resolved an issue with the Tempo audio effect.
15.7
.Net 8 support
Avalonia 11.0.5 support.
Updated VLC source (libVLC 3.0.19).
Updated FFMPEG sources and encoders. Resolved issue with missed MSVC dependencies.
SkiaSharp security updates.
Updated Overlay Manager. Added OverlayManagerDateTime class to draw current date time and custom text.
Updated OverlayManagerImage. Resolved issue with System.Drawing.Bitmap usage.
15.6
MediaPlayerCore: Added the static CreateAsync method that can be used instead of the constructor to create engines without UI lag.
Updated Avalonia VideoView. Resolved issue with VideoView recreation.
MediaPlayerCoreX: Resolved startup issue with the Android version of the MediaPlayerCoreX engine.
MediaPlayerCore: Video_Stream_Index property has been replaced with Video_Stream_Select/Video_Stream_SelectAsync methods.
Updated scrolling text logo. Added the Preload method to render a text overlay before playback.
Updated scrolling text logo (performance)
Resolved crash with a text logo with a custom resolution
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
VisioForge HW encoders update
15.5
.Net 7 support
System.Drawing.Rectangle and System.Drawing.Size types are replaced by VisioForge.Types.Rectangle and VisioForge.Types.Size in all crossplatform APIs
MAUI samples (BETA) are added
Online licensing updated
Added segments support in Media Player SDK .Net (Cross*platform engine)
Added Playlist API in Media Player SDK .Net (Windows*only engine)
Resolved issues with the reverse playback engine in Media Player SDK .Net (Windows*only engine)
API breaking change: the frame rate changed from double to VideoFrameRate in all APIs
Added GPU HW decoding for VLC engine
Resolved issue with WPF HighDPI apps that use EVR
Resolved issue with MediaPlayerCore.Video_Renderer_SetCustomWindowHandle method
Added previous frame playback in Media Player SDK .Net (Cross*platform engine)
Added WPF Screen Capture Demo to Media Blocks SDK .Net
15.4
Resolved an issue with ignored Play_PauseAtFirstFrame property
Updated HighDPI support in WinForms samples
Resolved an issue with HighDPI support for the Direct2D video renderer
Resolved forced reencoding issue with FFMPEG files join without reencoding
Sentry update
Added video interpolation settings for Zoom and Pan video effects
Added GtkSharp UI framework support for video rendering
Added OnLoop event into Media Player SDK .Net
Avalonia VideoView was downgraded to 0.10.12 because of Avalonia UI problems with NativeControl
15.3
Zoom and pan effects performance optimizations
Added basic Media Blocks API (WIP)
Added Rotate property to WPF VideoView. You can rotate the video by 90, 180, or 270 degrees. Also, you can use the GetImageLayer() method to get the Image layer and apply custom transforms
API change - FilterHelpers renamed to FilterDialogHelper
VisioForge.Types and VisioForge.MediaFramework assemblies merged into VisioForge.Core
UI classes moved to "VisioForge.Core.UI.*" assemblies and independent NuGet packages
VisioForge.Types renamed to VisioForge.Core.Types
VisioForge.Core no longer depends on the Windows Forms framework
15.2
Added HorizontalAlignment and VerticalAlignment properties to the text and image logos
SDK migrated to System.Text.Json from NewtonsoftJson
Video processing performance optimizations
15.1
Disabled Sentry debug messages in the console
VideoStreamInfo.FrameRate property type changed to VideoFrameRate (with numerator and denominator) from double
Updated WPF VideoView, resolved the issue for IP camera stream playback
API breaking change: VisioForge.Controls, VisioForge.Controls.UI, VisioForge.Controls.UI.Dialogs, and VisioForge.Tools merged inside VisioForge.Core
Audio effect API now uses string name instead of index
Added Android support
Added a new GStreamer-based cross-platform engine to support Windows and other platforms within the v15 development cycle
15.0
Resolved SDK_Version possible issue.
Added Settings_Load API. You can load the settings file saved by Settings_JSON. Be sure that device names are correct.
RTP support for the VLC source engine.
API breaking change: SDK_State property has been removed. We do not have TRIAL and FULL SDK versions anymore.
API breaking change: DirectShow_Filters_Show_Dialog, DirectShow_Filters_Has_Dialog, Audio_Codec_HasDialog, Audio_Codec_ShowDialog, Video_Codec_HasDialog, Video_Codec_ShowDialog, Filter_Supported_LAV, Filter_Exists_MatroskaMuxer, Filter_Exists_OGGMuxer, Filter_Exists_VorbisEncoder, Filter_Supported_EVR, Filter_Supported_VMR9 and Filter_Supported_NVENC has been moved to VisioForge.Tools.FilterHelpers class.
VFAudioStreamInfo/VFVideoStreamInfo duration type changed to Timespan.
Telemetry updated.
Custom redist loader updated.
API breaking change: Status property changes to State, type is PlaybackState in all SDKs.
API breaking change: UI controls split into Core (VideoCaptureCore, MediaPlayerCore, VideoEditCore) and VideoView.
API breaking change: In Media Player SDK Source_Stream... properties were merged into the Source_MemoryStream property of MemoryStreamSource type
Updated DVD playback
Updated FFMPEG source
API breaking change: Media Player SDK types moved from VisioForge.Types namespace to VisioForge.Types.MediaPlayer
API breaking change: Video Effects types moved from VisioForge.Types namespace to VisioForge.Types.VideoEffects
API breaking change: Audio Effects types moved from VisioForge.Types namespace to VisioForge.Types.AudioEffects
API breaking change: Event types moved from VisioForge.Types namespace to VisioForge.Types.Events
Added Video_Renderer_SetCustomWindowHandle method to set custom video renderer by Win32 window/control HWND handle
14.4
Windows 11 support
Telemetry update
Custom redist configuration updated
14.3
An issue with Video Resize filter creation for NuGet redists has been resolved
Telemetry update
Updated VFDirectCaptureMP4Output output
.Net 6 (preview) support
Split project and solutions by independent files for .Net Framework 4.7.2, .Net Core 3.1, .Net 5 and .Net 6
14.2
An issue with wrong ColorKey processing in the Text Overlay video effect was resolved
VC++ redist is no longer required to be installed. VC++ linking changed to a static
Many base DirectShow filters moved to the VisioForge_BaseFilters module
14.1
Added WPF VideoView control. You can push video frames from the OnVideoFrameBuffer event to control to render them
Correct default transparency value for a text logo
Updated MJPEG Decoder (improved performance)
Removed MP4 v8 legacy encoders
INotifyPropertyChanged support in WinForms/WPF wrappers to provide MVVM application support
Added CustomRedist_DisableDialog property to disable the redist message dialog
14.0
.Net 5.0 support
Resolved issue with device added/removed notifier
Added NDI streaming (server)
Resolved issue with merged text/image logos
Updated device notifier
Legacy audio effects have been removed.
Updated HLS server. Correct error reporting about used port
Updated FFMPEG Source filter, more supported codecs, and added GPU decoding
12.1
Migrated to .Net 4.6
Added Debug_DisableMessageDialogs property to disable error dialog if OnError event is not implemented
Fixed issue with resizing on pause for WPF controls
Added OnPause/OnResume events
Updated YouTube demo
Updated VLC source
Removed unwanted warning in MP4 v11 output
One installer for TRIAL and FULL versions
Same NuGet packages for TRIAL and FULL versions
.Net Core NuGet packaged merged with .Net Framework package
Added NuGet redists. Deployment never was so simple!
12.0
Async / await API for all SDKs
Breaking API change: All time*related API now uses TimeSpan instead of long (milliseconds)
Tag reader/writer * correct logo loading for some video formats
Removed legacy DirectX 9 video effects
Improved .Net Core compatibility
Virtual Camera SDK output added (as one of the video renderers)
Added Video_Effects_MergeImageLogos and Video_Effects_MergeTextLogos properties. If you have 3 or more logos you can set these properties to true to optimize video effects' performance
Added VR 360° video support
Improved DirectX 11 video processing
Several new demo applications
Many minor bugfixes
.Net Core assemblies updated to .Net Core 3.1 LTS
Updated demos repository on GitHub
11.4
Alternative OSD implementation to handle Windows 10 changes
Updated GPU video effects
Updated memory source
Updated OSD API
Resolved issues with video encryption using binary keys
Merge module (MSM) redists added to all SDKs
Resolved issue with file lock using LAV engine
Added DirectX11-based GPU video processing
11.3
Improved subtitles support with auto*loading
Updated audio fade-in/fade-out effects
Added MIDI and KAR files support
Added CDG karaoke files support (and new demo application)
Deployment without COM registration and admin rights
Updated video mixer with improved performance
Added YouTube playback code snippet
Added method to move OSD
11.1
Fixed stretch/letterbox issue in the WPF version of all SDKs
Fixed issue with the equalizer on sample rate 16000 or less
Fixed problem with sample grabber for DirectShow source
Fixed encrypted file playback
Added DVDInfoReader class to read info about DVD files
Improved barcode detection quality for rotated images
The minimal .Net Framework version is .Net 4.5 now
Improved YouTube playback. Added OnYouTubeVideoPlayback event to select video quality for playback
Added Play_PauseAtFirstFrame property. If true playback will be paused on the first frame
Resolved issue with network stream playback in WPF applications
Added Fake Audio Source DirectShow filter, which produces a tone signal
Added Frame_GetCurrentFromRenderer method to all SDKs. Using this method you can get the currently rendered video frame directly from the video renderer.
11.0
Updated MJPEG Decoder
Media Player SDK Main Demo update * multiscreen can automatically use connected external displays
Added fade-in/fade-out for text logo
10.5
Added demo for playback files with multiple video streams
Correct speed change during WMV file playback
Added madVR video renderer (experimental)
Improved SRT subtitles support
Added PictureInPicture support
Added seeking to the previous frame
10.4
Added MJPEG decoder filter
10.3
Updated logging
Object_Detection property renamed to Motion_DetectionEx, with updated parameters
Added SDK demo code to GitHub and SDK packages to NuGet
Added face tracking
Updated video effects filter to support odd width and height
Added YouTube video playback
10.2
SDKs now have AnyCPU only. To get the x86 app set the "Prefer 32-bit" option in your project settings
Added GPU-based video effects. You can set a custom DirectX pixel shader to get your video effect
Added Seamless Playback Demo to Media Player SDK
Added Zoom option to multiscreen
Added sharpen effect
Added TimeStamp video effect (based on TextLogo effect)
Added Mode property to Text Logo class. Now you can draw text, current date/time, frame timestamp, or number
Audio_OutputDevice property can be set to "NULL" (string) to have an audio sample grabber and VU*meter with disabled rendering to a real audio output device
Added deinterlace support for EVR
10.1
Updated encryption engine (bugfix)
YUV2RGB filter now supports HDYC format
Added installer for Visual Studio Toolbox
DVD playback menu position correct handling in Media Player SDK .Net
The DVD playback blink issue resolved
Added x64 VLC source
Updated channel order audio effect
Updated audio mixer
Added audio channel mapper filter. You can set a custom channel amount and map any source channel to any output channel
10.0
The updated media information reader
MediaInfoNV renamed to MediaInfoReader
Improved logging
Updated Video Player demo
Fixed issue with Pan effect in x64 build
Fixed issue with Blur effect
Fixed FFMPEG source memory leak
Added standard tags support for video and audio files, including MP4, WMV, MP3, AAC, M4A, Ogg Vorbis, and other formats. Media Player SDK can read tags, Video Capture SDK and Video Edit SDK can write tags
Separate capture API now has SeparateCapture_Filename_Mask property to configure file name that will be used for auto split by duration or size
Added delayed start in all SDKs. This feature can be used to start multiple SDK controls almost at the same time. Check Start_DelayEnabled description
Audio effects are now written on C# and can be used in x64 applications. Old effects usage is saved as "legacy" if you have some issues with new filters or API
Improved information reading for some Speex files
Error tracking is added to the Visual Studio Output window, you'll see all errors that come from the OnError event (but without diagnostic information)
Added settings serialization to JSON format
LAV playback engine (FFMPEG based) added to Media Player SDK .Net
Blu*Ray playback in Media Player SDK .Net
Custom video effects 3rd*party filters can be added by CLSID now, before or after the main effects filter/sample grabber
Added MP3 splitter to resolve issues with some MP3 files, that can't be playable using the default splitter
VisioForge.Controls.WinForms and VisioForge.Controls.WPF assemblies were replaced by VisioForge.Controls.UI