Table of Contents

Class MarbleVideoEffect

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

Represents a marble texture distortion effect that applies procedural marble-like patterns to video.

public class MarbleVideoEffect : BaseVideoEffect, IBaseVideoEffect, IVideoEditXVideoEffect

Inheritance

Implements

Inherited Members

Remarks

SDK Availability: VideoCaptureCoreX, MediaPlayerCoreX, VideoEditCoreX, Media Blocks SDK

Platforms: Windows, Linux, macOS, Android, iOS

This effect applies a procedurally-generated marble texture distortion to the video, creating swirling, organic patterns similar to natural marble stone. The effect uses Perlin noise algorithms to generate smooth, flowing distortions that can range from subtle warping to dramatic liquefaction.

The marble effect is highly customizable through four parameters:

  • Amount: Overall distortion intensity
  • Turbulence: Noise complexity and detail
  • X/Y Scale: Pattern size and frequency

The marble effect is commonly used for:

  • Artistic Videos: Abstract, liquid-like visual effects
  • Music Videos: Psychedelic, flowing visual styling
  • Transitions: Smooth, organic scene transitions
  • Background Elements: Dynamic textured backgrounds
  • VJ Performances: Live video manipulation and mixing

This is a cross-platform effect using the marble element with procedural noise generation. The effect is GPU-accelerated where available for real-time performance.

Performance: Real-time capable on modern hardware. GPU-accelerated procedural generation. Performance scales with resolution and turbulence complexity.

Constructors

MarbleVideoEffect(string)

Initializes a new instance of the VisioForge.Core.Types.X.VideoEffects.MarbleVideoEffect class with specified name.

public MarbleVideoEffect(string name = "marble")

Parameters

name string

The unique name for this effect instance. Defaults to "marble".

Fields

DefaultName

The default name for marble effects.

public static string DefaultName

Field Value

string

Properties

Amount

Gets or sets the distortion intensity/amount of the marble effect.

public double Amount { get; set; }

Property Value

double

Remarks

Higher values create stronger distortion. Very high values (5.0+) can create extreme warping that may make the original video unrecognizable.

StartTime

Gets or sets the start time for the marble effect (VideoEditCoreX only).

public TimeSpan StartTime { get; set; }

Property Value

TimeSpan

Remarks

This property is only used in VideoEditCoreX for time-based effect control.

StopTime

Gets or sets the stop time for the marble effect (VideoEditCoreX only).

public TimeSpan StopTime { get; set; }

Property Value

TimeSpan

Remarks

This property is only used in VideoEditCoreX for time-based effect control.

Turbulence

Gets or sets the turbulence/complexity of the noise pattern.

public double Turbulence { get; set; }

Property Value

double

Remarks

Turbulence controls the complexity of the Perlin noise used for distortion. Higher values add more octaves of noise, creating finer details and more organic-looking patterns. Higher turbulence may impact performance.

XScale

Gets or sets the horizontal scale/frequency of the marble texture pattern.

public double XScale { get; set; }

Property Value

double

Remarks

Lower values create tighter, more frequent patterns horizontally. Higher values create larger, slower-moving patterns. Combine with VisioForge.Core.Types.X.VideoEffects.MarbleVideoEffect.YScale to control pattern shape.

YScale

Gets or sets the vertical scale/frequency of the marble texture pattern.

public double YScale { get; set; }

Property Value

double

Remarks

Lower values create tighter, more frequent patterns vertically. Higher values create larger, slower-moving patterns. Use different X and Y scales to create directional effects (e.g., horizontal streaks: high X, low Y).

Methods

GenerateDescription()

Generates the description.

public string GenerateDescription()

Returns

string

A string containing the GStreamer element description for the marble effect.