Esempio n. 1
0
        public void RenderPNGvisual(PictureBox pictureBox, FileSystem fileSystem) //visualization af lyd, Kopieret fra nettet
        {
            var maxPeakProvider      = new MaxPeakProvider();
            var rmsPeakProvider      = new RmsPeakProvider(200);      // e.g. 200
            var samplingPeakProvider = new SamplingPeakProvider(200); // e.g. 200
            var averagePeakProvider  = new AveragePeakProvider(4);    // e.g. 4

            var topSpacerColor = Color.FromArgb(64, 224, 224, 224);

            var myRendererSettings = new SoundCloudBlockWaveFormSettings(Color.FromArgb(196, 197, 53, 0), topSpacerColor, Color.FromArgb(196, 79, 26, 0),
                                                                         Color.FromArgb(64, 79, 79, 79))
            {
                Name          = "SoundCloud Orange Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor,
                BackgroundColor             = Color.Transparent
            };;

            myRendererSettings.Width        = pictureBox.Width;
            myRendererSettings.TopHeight    = 20;
            myRendererSettings.BottomHeight = 15;


            var renderer      = new WaveFormRenderer();
            var audioFilePath = fileSystem.wavFiles[tal];
            var image         = renderer.Render(audioFilePath, rmsPeakProvider, myRendererSettings);

            pictureBox.Image = image;
        }
Esempio n. 2
0
        private BitmapImage RenderWave(string filePath)
        {
            var rnd = new WaveFormRenderer();

            var topSpacerColor = System.Drawing.Color.FromArgb(64, 83, 22, 3);
            var soundCloudOrangeTransparentBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(196, 197, 53, 0), topSpacerColor, System.Drawing.Color.FromArgb(196, 79, 26, 0),
                                                                                        System.Drawing.Color.FromArgb(64, 79, 79, 79))
            {
                Name          = "SoundCloud Orange Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor,
                BackgroundColor             = System.Drawing.Color.Transparent
            };

            WaveFormRendererSettings settings = soundCloudOrangeTransparentBlocks;

            settings.TopHeight    = 50;
            settings.BottomHeight = 0;
            settings.Width        = 500;
            settings.DecibelScale = false;

            var img = rnd.Render(filePath, new RmsPeakProvider(200), settings);

            var bmp = (Bitmap)img;

            return(ToBitmapImage(bmp));
        }
Esempio n. 3
0
        public MainWindow()
        {
            InitializeComponent(); waveFormRenderer = new WaveFormRenderer();

            standardSettings = new StandardWaveFormRendererSettings()
            {
                Name = "Standard"
            };
            var soundcloudOriginalSettings = new SoundCloudOriginalSettings()
            {
                Name = "SoundCloud Original"
            };

            var soundCloudLightBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(102, 102, 102), System.Drawing.Color.FromArgb(103, 103, 103), System.Drawing.Color.FromArgb(179, 179, 179),
                                                                            System.Drawing.Color.FromArgb(218, 218, 218))
            {
                Name = "SoundCloud Light Blocks"
            };

            var soundCloudDarkBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(52, 52, 52), System.Drawing.Color.FromArgb(55, 55, 55), System.Drawing.Color.FromArgb(154, 154, 154),
                                                                           System.Drawing.Color.FromArgb(204, 204, 204))
            {
                Name = "SoundCloud Darker Blocks"
            };

            var soundCloudOrangeBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(255, 76, 0), System.Drawing.Color.FromArgb(255, 52, 2), System.Drawing.Color.FromArgb(255, 171, 141),
                                                                             System.Drawing.Color.FromArgb(255, 213, 199))
            {
                Name = "SoundCloud Orange Blocks"
            };

            var topSpacerColor = System.Drawing.Color.FromArgb(64, 83, 22, 3);
            var soundCloudOrangeTransparentBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(196, 197, 53, 0), topSpacerColor, System.Drawing.Color.FromArgb(196, 79, 26, 0),
                                                                                        System.Drawing.Color.FromArgb(64, 79, 79, 79))
            {
                Name          = "SoundCloud Orange Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor,
                BackgroundColor             = System.Drawing.Color.Transparent
            };

            var topSpacerColor2 = System.Drawing.Color.FromArgb(64, 224, 224, 224);
            var soundCloudGrayTransparentBlocks = new SoundCloudBlockWaveFormSettings(System.Drawing.Color.FromArgb(196, 224, 225, 224), topSpacerColor2, System.Drawing.Color.FromArgb(196, 128, 128, 128),
                                                                                      System.Drawing.Color.FromArgb(64, 128, 128, 128))
            {
                Name          = "SoundCloud Gray Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor2,
                BackgroundColor             = System.Drawing.Color.Transparent
            };
        }
Esempio n. 4
0
 public WaveformSelector()
 {
     InitializeComponent();
     averagePeakProvider = new AveragePeakProvider(4);
     topSpacerColor      = Color.FromArgb(64, 83, 22, 3);
     soundCloudOrangeTransparentBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(196, 197, 53, 0),
                                                                             topSpacerColor, Color.FromArgb(196, 79, 26, 0),
                                                                             Color.FromArgb(64, 79, 79, 79))
     {
         PixelsPerPeak = 2,
         Width         = imgWaveform.Width,
         BottomHeight  = Convert.ToInt32(0.2 * imgWaveform.Height),
         SpacerPixels  = 1,
         TopHeight     = Convert.ToInt32(0.8 * imgWaveform.Height),
         TopSpacerGradientStartColor = topSpacerColor,
         BackgroundColor             = Color.Transparent
     };
 }
Esempio n. 5
0
        private WaveFormRendererSettings GetRendererSettings()
        {
            var topSpacerColor = Color.FromArgb(255, 102, 0, 0);

            var soundCloudOrangeTransparentBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(196, 197, 53, 0), topSpacerColor, Color.FromArgb(196, 79, 26, 0),
                                                                                        Color.FromArgb(64, 79, 79, 79))
            {
                Name          = "SoundCloud Orange Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor,
                BackgroundColor             = Color.Transparent
            };

            var settings = (WaveFormRendererSettings)soundCloudOrangeTransparentBlocks;

            settings.TopHeight    = 75;
            settings.BottomHeight = 35;
            settings.Width        = waveWidth;

            return(settings);
        }
Esempio n. 6
0
        public Form1()
        {
            InitializeComponent();
            outputDevice = new WaveOutEvent();

            standardSettings = new StandardWaveFormRendererSettings
            {
                Name          = "StandardSettings",
                TopPeakPen    = new Pen(Color.DarkRed),
                BottomPeakPen = new Pen(Color.DarkViolet)
            };

            var topSpacerColor = Color.FromArgb(64, 83, 22, 3);

            var waveGraph = new SoundCloudBlockWaveFormSettings(Color.Coral, Color.Aqua, Color.Black, Color.AliceBlue)
            {
                Name          = "Waves",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = Color.Aqua,
                BackgroundColor             = Color.Transparent
            };
        }
Esempio n. 7
0
        public MainForm()
        {
            InitializeComponent();
            waveFormRenderer = new WaveFormRenderer();

            standardSettings = new StandardWaveFormRendererSettings()
            {
                Name = "Standard"
            };
            var soundcloudOriginalSettings = new SoundCloudOriginalSettings()
            {
                Name = "SoundCloud Original"
            };

            var soundCloudLightBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(102, 102, 102), Color.FromArgb(103, 103, 103), Color.FromArgb(179, 179, 179),
                                                                            Color.FromArgb(218, 218, 218))
            {
                Name = "SoundCloud Light Blocks"
            };

            var soundCloudDarkBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(52, 52, 52), Color.FromArgb(55, 55, 55), Color.FromArgb(154, 154, 154),
                                                                           Color.FromArgb(204, 204, 204))
            {
                Name = "SoundCloud Darker Blocks"
            };

            var soundCloudOrangeBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(255, 76, 0), Color.FromArgb(255, 52, 2), Color.FromArgb(255, 171, 141),
                                                                             Color.FromArgb(255, 213, 199))
            {
                Name = "SoundCloud Orange Blocks"
            };

            var topSpacerColor = Color.FromArgb(64, 83, 22, 3);
            var soundCloudOrangeTransparentBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(196, 197, 53, 0), topSpacerColor, Color.FromArgb(196, 79, 26, 0),
                                                                                        Color.FromArgb(64, 79, 79, 79))
            {
                Name          = "SoundCloud Orange Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor,
                BackgroundColor             = Color.Transparent
            };

            var topSpacerColor2 = Color.FromArgb(64, 224, 224, 224);
            var soundCloudGrayTransparentBlocks = new SoundCloudBlockWaveFormSettings(Color.FromArgb(196, 224, 225, 224), topSpacerColor2, Color.FromArgb(196, 128, 128, 128),
                                                                                      Color.FromArgb(64, 128, 128, 128))
            {
                Name          = "SoundCloud Gray Transparent Blocks",
                PixelsPerPeak = 2,
                SpacerPixels  = 1,
                TopSpacerGradientStartColor = topSpacerColor2,
                BackgroundColor             = Color.Transparent
            };


            buttonBottomColour.BackColor = standardSettings.BottomPeakPen.Color;
            buttonTopColour.BackColor    = standardSettings.TopPeakPen.Color;
            comboBoxPeakCalculationStrategy.Items.Add("Max Absolute Value");
            comboBoxPeakCalculationStrategy.Items.Add("Max Rms Value");
            comboBoxPeakCalculationStrategy.Items.Add("Sampled Peaks");
            comboBoxPeakCalculationStrategy.Items.Add("Scaled Average");
            comboBoxPeakCalculationStrategy.SelectedIndex         = 0;
            comboBoxPeakCalculationStrategy.SelectedIndexChanged += (sender, args) => RenderWaveform();

            comboBoxRenderSettings.DisplayMember = "Name";

            comboBoxRenderSettings.DataSource = new[]
            {
                standardSettings,
                soundcloudOriginalSettings,
                soundCloudLightBlocks,
                soundCloudDarkBlocks,
                soundCloudOrangeBlocks,
                soundCloudOrangeTransparentBlocks,
                soundCloudGrayTransparentBlocks
            };

            comboBoxRenderSettings.SelectedIndex         = 5;
            comboBoxRenderSettings.SelectedIndexChanged += (sender, args) => RenderWaveform();

            labelRendering.Visible = false;
        }