Table of Contents

Class VideoEffectDenoiseMosquito

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

Represents a mosquito noise reduction effect that specifically targets and reduces mosquito noise artifacts commonly found in compressed or highly compressed video.

public class VideoEffectDenoiseMosquito : VideoEffect, IVideoEffectDenoiseMosquito, IVideoEffect

Inheritance

Implements

Inherited Members

Remarks

Mosquito noise is a common compression artifact that appears as shimmering, flickering, or "dancing" patterns around sharp edges and high-contrast areas in video. It is named for its appearance, which resembles mosquitoes swarming around objects. This artifact is particularly visible in video encoded with lossy compression codecs (MPEG-2, H.264, H.265) at low bitrates, and becomes more pronounced around text, logos, or high-contrast scene transitions.

SDK Availability: This effect is available in VideoCaptureCore, MediaPlayerCore, and VideoEditCore SDKs. Windows platform only.

Platform Support: Windows only (requires Windows-specific video processing filters).

The mosquito denoise effect implements spatio-temporal motion-adaptive filtering specifically designed to detect and reduce these edge-localized artifacts. Unlike general noise reduction filters that work across the entire image uniformly, mosquito denoising focuses processing on edge regions where these artifacts are most visible, while leaving smooth areas largely untouched. The algorithm adapts to motion, applying stronger spatial filtering in moving areas to avoid ghosting while using temporal filtering in static areas for maximum artifact reduction.

Key Features:

  • Specialized filtering for mosquito noise around edges and high-contrast areas
  • Motion-adaptive processing to prevent ghosting or trailing artifacts
  • Spatio-temporal analysis for optimal artifact reduction
  • Edge-aware processing that preserves edge sharpness while removing artifacts
  • Automatic parameter configuration (no user-adjustable settings required)
  • Effective for post-processing low-bitrate compressed video

Common Use Cases:

  • Cleaning up video downloaded from streaming services or internet sources with high compression
  • Post-processing video encoded at low bitrates for storage or transmission
  • Improving visual quality of archived or legacy video content compressed with older codecs
  • Enhancing video quality for re-encoding or transcoding workflows
  • Removing artifacts around text, graphics, or logos in compressed video
  • Preprocessing video before upscaling or resolution enhancement

Technical Details: The algorithm works by first detecting edges and high-contrast regions where mosquito noise is most likely to occur. It then analyzes motion in these regions to determine the optimal filtering strategy. In static edge areas, temporal filtering is emphasized, averaging across multiple frames to reduce flickering artifacts. In moving edge areas, spatial filtering is used to avoid motion blur while still reducing the shimmer effect. The filter automatically adjusts its behavior based on content characteristics, requiring no user parameter tuning.

Performance Characteristics: Mosquito denoising requires buffering multiple frames for temporal analysis and performs edge detection and motion analysis, which can be computationally intensive. Processing time depends on video resolution and the amount of edge content in the video. Videos with many high-contrast edges (like text-heavy content or graphics) will require more processing than videos with predominantly smooth content.

Limitations: This filter is specifically designed for mosquito noise. For general noise reduction (such as sensor noise, film grain, or random noise), use VisioForge.Core.Types.VideoEffects.VideoEffectDenoiseAdaptive or VisioForge.Core.Types.VideoEffects.VideoEffectDenoiseCAST. Mosquito denoising is most effective when the source of artifacts is compression rather than camera sensor or environmental factors. It cannot restore detail that was lost during aggressive compression; it can only reduce the perceptual impact of remaining artifacts.

For other noise reduction approaches, see VisioForge.Core.Types.VideoEffects.VideoEffectDenoiseAdaptive for automatic adaptive noise reduction suitable for camera noise, and VisioForge.Core.Types.VideoEffects.VideoEffectDenoiseCAST for advanced denoising with extensive parameter control. Also consider VisioForge.Core.Types.VideoEffects.VideoEffectBlur for simple spatial smoothing or VisioForge.Core.Types.VideoEffects.VideoEffectSmooth for general image smoothing effects.

Constructors

VideoEffectDenoiseMosquito(bool, string, TimeSpan, TimeSpan)

Initializes a new instance of the VisioForge.Core.Types.VideoEffects.VideoEffectDenoiseMosquito class.

public VideoEffectDenoiseMosquito(bool enabled, string name = "DenoiseMosquito", 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 or disabled later using the VisioForge.Core.Types.VideoEffects.VideoEffect.Enabled property.

name string

An optional name identifier for this effect instance. Default is "DenoiseMosquito". Used to retrieve specific effect instances from a collection via the VisioForge.Core.Types.VideoEffects.VideoEffect.Name property. Multiple effects of 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 of the video. Use a specific time value to delay the effect start (useful for applying denoising only to heavily compressed sections or specific scenes with visible mosquito noise).

stopTime TimeSpan

The time at which the effect should stop being applied. Default is Zero, which applies the effect until the end of the video. Set to a specific time to limit the effect duration (useful when mosquito noise is only problematic in certain scenes or when applying selective processing).

Remarks

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

This effect uses automatic parameter configuration optimized for mosquito noise reduction and requires no manual tuning. The algorithm automatically detects edges, analyzes motion, and adjusts filtering behavior accordingly. Unlike other denoising effects, this filter has no adjustable intensity or threshold parameters.

The mosquito denoising filter requires buffering multiple frames for temporal analysis, which introduces a small processing delay and increased memory usage. Performance impact depends on video resolution and the complexity of edge structures in the content. Consider using time-limited application (startTime and stopTime) if only specific scenes require processing.

Methods

GetEffectType()

Gets the specific type of this video effect.

public VideoEffectType GetEffectType()

Returns

VideoEffectType

Returns VisioForge.Core.Types.VideoEffects.VideoEffectType.DenoiseMosquito to identify this as a mosquito noise reduction 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 mosquito noise reduction filter processor.