Skip to content

kopffarben/audion.cscore

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

audion

An audio visualization and processing framework for WPF

Github-Release Appveyor-Build

Donate

Audion is powered by the awesome CSCore .NET Audio Library

Included in Audion (so far):

  • Waveform
  • Timeline
  • Spectrum Analyzer
  • Intuitive wrapper for managing an audio/video file

Future Road Map

  • Equalizer
  • Dynamic Waveform
  • Time Clock (Counters)
  • and more tba...

Source

The Source classes in audion makes it simple to load media and start playing with it. Every visualization simply subscribes to a Source. There are two versions, OutputSource to play media out of a device and InputSource to record media from a device. It is common to have one Source instance powering multiple different visualizations. Here is a simple example of loading a media file and playing it.

var output = new OutputSource();
    
// Open a file dialog to choose a media file
OpenFileDialog openFileDialog = new OpenFileDialog
{
    Filter = Audion.Source.SupportedFiles
};
        
// Load the media file into the source
if (openFileDialog.ShowDialog() == true)
{
    output.Load(openFileDialog.FileName);
}
    
output.Play();

Waveform

waveform

XAML

<audion:Waveform Name="waveform" 
                 Resolution="2048"
                 LeftBrush="LightBlue"                     
                 LeftStroke="Transparent"
                 LeftStrokeThickness="0"
                 CenterLineBrush="White"/>

Code

var output = new OutputSource();
waveform.Source = output;

Timeline

timeline

XAML

<audion:Timeline Name="timeline" 
                 FontSize="12" 
                 ProgressBrush="#9900C3FF"
                 Position="{Binding TrackPosition}"
                 TickBrush="Silver"
                 TimeBrush="Silver"
                 ProgressLineBrush="White"
                 ProgressBrush="#772200EE"/>

Code

var output = new OutputSouce();
timeline.Source = output;

Spectrum Analyzer

spectrum

XAML

<audion:SpectrumAnalyzer Name="spectrum" 
                         SpectrumScalingStrategy="Decibel"
                         FrequencyBarCount="100" 
                         FrequencyBarSpacing="2" 
                         FrequencyBarBrush="{StaticResource BarBrush}" />

Code

var output = new OutputSource();
spectrum.Source = output;

Sample Application

(This is a work in progress)

audion

About

An audio visualization and processing framework for WPF

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%