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, IVideoEffectInheritance
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
enabledbool-
trueto enable the effect immediately;falseto create the effect in a disabled state. The effect can be enabled/disabled later using the VisioForge.Core.Types.VideoEffects.VideoEffect.Enabled property. namestring-
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.
startTimeTimeSpan-
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.
stopTimeTimeSpan-
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.