Table of Contents

Class VideoEffectSmooth

Namespace
VisioForge.Core.Types.VideoEffects
Assembly
VisioForge.Core.dll

Represents a smoothing effect that reduces image noise and softens video frames using median filtering techniques.

public class VideoEffectSmooth : VideoEffect, IVideoEffectSmooth, IVideoEffect

Inheritance

Implements

Inherited Members

Remarks

The smooth effect applies a median filter to the video image, which is highly effective at removing salt-and-pepper noise while preserving edges better than traditional blur filters. Unlike Gaussian blur, which averages pixel values, median filtering selects the median value from a neighborhood of pixels, making it particularly effective for noise reduction without significantly blurring sharp edges.

SDK Availability: VideoCaptureCore, MediaPlayerCore, VideoEditCore (Windows only)

Platform Support: Windows only

Key characteristics:

  • Excellent noise reduction while maintaining edge sharpness
  • Particularly effective against impulse noise and random speckles
  • Better edge preservation compared to standard blur effects
  • Fixed intensity with no adjustable parameters
  • Creates a subtle softening and cleaning effect

Common use cases include:

  • Reducing video noise from low-light or high-ISO camera footage
  • Cleaning up compressed video artifacts
  • Preparing video for further processing or analysis
  • Improving visual quality of captured or streamed content
  • Pre-processing for encoding to reduce bitrate requirements

Technical details: This effect uses median filtering, which is computationally more intensive than simple averaging filters but provides superior results for noise reduction. The median filter examines a small neighborhood around each pixel and replaces the center pixel with the median value of all pixels in that neighborhood.

Performance: This is a CPU-based effect with moderate computational requirements. Processing time is consistent regardless of image content. For noise reduction in high-resolution video, consider using GPU-accelerated denoising effects like VisioForge.Core.Types.VideoEffects.GPUVideoEffectDenoise for better performance.

Related effects: For different types of smoothing, see also VisioForge.Core.Types.VideoEffects.VideoEffectBlur for general blur effects, and various denoising effects for more sophisticated noise reduction algorithms.

Constructors

VideoEffectSmooth(bool, string, TimeSpan, TimeSpan)

Initializes a new instance of the VisioForge.Core.Types.VideoEffects.VideoEffectSmooth class with specified parameters.

public VideoEffectSmooth(bool enabled, string name = "Smooth", TimeSpan startTime = default, TimeSpan stopTime = default)

Parameters

enabled bool

true to enable the effect immediately; false to create the effect in a disabled state. The effect can be enabled/disabled later using the VisioForge.Core.Types.VideoEffects.VideoEffect.Enabled property.

name string

An optional name identifier for this effect instance. Default is "Smooth". Used to retrieve specific effect instances from a collection via the name property. Multiple effects with the same type can coexist with different names.

startTime TimeSpan

The time at which the effect should start being applied. Default is Zero, which applies the effect from the beginning. Use a specific time value to delay the effect start.

stopTime TimeSpan

The time at which the effect should stop being applied. Default is Zero, which applies the effect until the end. Set to a specific time to limit the effect duration.

Remarks

If both startTime and stopTime are zero (default), the effect will be applied for the entire video duration.

The smooth effect has no adjustable parameters - it applies a fixed-intensity median filter. This makes it simple to use while providing consistent, predictable results.

Methods

GetEffectType()

Gets the specific type of this video effect.

public VideoEffectType GetEffectType()

Returns

VideoEffectType

Returns VisioForge.Core.Types.VideoEffects.VideoEffectType.Smooth to identify this as a smoothing/median filtering effect.

Remarks

This method overrides the base class implementation to provide the concrete effect type. The effect type is used by the video processing pipeline to route the effect to the appropriate smoothing/median filter processing module.