Siticone Logo
Siticone UI
DOCS
v2025.12.15
Docs Audio

Siticone Audio Control

The SiticoneAudio control is a modern, interactive volume management component designed for rich media applications. It features animated sound waves, particle effects, multiple themes, and built-in mute functionality. With support for mouse wheel adjustment and visual feedback, it provides a premium user experience for audio interfaces.

Core Features

Fundamental properties for managing volume state and themes.

Property Type Description & Usage Example
Volume int audio.Volume = 75; The current volume level (0-100). Changing this triggers animation and particles.
IsMuted bool audio.IsMuted = true; Toggles the mute state. When muted, an "X" is displayed instead of waves.
Theme AudioControlTheme audio.Theme = AudioControlTheme.Dark; Sets a predefined visual style: Modern, Light, Dark, Colorful, Minimal, or Custom.

Appearance & Styling

Customize the icon, colors, and dimensions to match your application's design.

Property Type Description & Usage Example
IconSize int audio.IconSize = 32; The size of the central speaker icon in pixels.
StrokeWidth float audio.StrokeWidth = 2.5f; Thickness of the lines used for the speaker and waves.
IconColor Color audio.IconColor = Color.White; The primary color of the speaker icon.
HoverColor Color audio.HoverColor = Color.Cyan; Color used for hover effects and particles.
MuteIconColor Color audio.MuteIconColor = Color.Red; Color of the "X" symbol when muted.

Wave Customization

Fine-tune the animated sound waves that radiate from the speaker. These waves react dynamically to volume changes.

Property Type Description & Usage Example
WaveCount int audio.WaveCount = 5; The number of wave arcs displayed.
WaveSpacing float audio.WaveSpacing = 0.15f; The distance between concentric waves (as a percentage).
BaseArcSpan float audio.BaseArcSpan = 90f; The sweep angle (height) of the wave arcs in degrees.
WaveColors Color[] audio.WaveColors = new [] { Color.Red, Color.Blue }; An array of colors for gradient or multi-colored waves.

Visual Effects

Enhance user interaction with dynamic particles, shadows, and ripples.

Property Type Description & Usage Example
EnableParticles bool audio.EnableParticles = true; Emits small particles when volume changes or on click.
EnableRippleEffect bool audio.EnableRippleEffect = true; Shows a ripple animation on mouse clicks.
EnableHoverAnimation bool audio.EnableHoverAnimation = true; Enables scaling and glow effects when the mouse hovers over the control.
ShowVolumeIndicator bool audio.ShowVolumeIndicator = true; Displays a vertical volume bar next to the icon on hover.

Events

Event Handling
// 1. Volume Changed
audioControl.VolumeChanged += (s, e) => 
{
                Console.WriteLine($"Volume set to: {e.Volume}%");
                SystemAudio.SetMasterVolume(e.Volume);
};

// 2. Mute Changed
audioControl.MuteChanged += (s, e) => 
{
                if (e.IsMuted)
                Console.WriteLine("Audio Muted");
                else
                Console.WriteLine("Audio Unmuted");
};

Detailed Usage Examples

Example 1: Basic Volume Control

A standard setup using the "Modern" theme with mouse wheel support.

C# - Basic Usage
private SiticoneAudio CreateVolumeControl()
{
                var audio = new SiticoneAudio
    {
        Theme = AudioControlTheme.Modern,
        Volume = 50,
        Location = new Point(20, 20),
        ShowVolumeTooltip = true
    };

                // Sync with system volume
    audio.VolumeChanged += (s, e) => 
    {
                MediaManager.SetVolume(e.Volume);
    };

                return audio;
}

Example 2: Custom "Neon" Visualizer

Configures a colorful, custom-styled audio control with a neon aesthetic.

C# - Neon Style
private void ApplyNeonStyle(SiticoneAudio audio)
{
    audio.Theme = AudioControlTheme.Custom;
    audio.IconColor = Color.White;
    audio.HoverColor = Color.Magenta;
    
                // Gradient Waves
    audio.WaveColors = new Color[] 
    { 
                Color.Cyan, 
                Color.DeepSkyBlue, 
                Color.DodgerBlue, 
                Color.Blue 
    };
    
    audio.WaveCount = 6;
    audio.StrokeWidth = 2.5f;
    audio.EnableParticles = true;
    audio.EnableGlow = true;
}

Example 3: Minimalist Mute Button

A simplified control optimized for toolbars where space is limited.

C# - Minimalist
private SiticoneAudio CreateMuteButton()
{
                return new SiticoneAudio
    {
        Theme = AudioControlTheme.Minimal,
        IconSize = 16,
        ShowVolumeIndicator = false,
        EnableParticles = false,
        EnableRippleEffect = false,
        Size = new Size(24, 24)
    };
}