swharden / Spectrogram

.NET library for creating spectrograms (visual representations of frequency spectrum over time)
https://nuget.org/packages/Spectrogram
MIT License
319 stars 57 forks source link

Render using SkiaSharp #52

Closed swharden closed 3 weeks ago

swharden commented 1 year ago

Now that System.Drawing.Common lost Linux support in .NET 7

Related: #49

janjanusek commented 1 year ago

I recommend using Sixlabors.Imagesharp images, very fast implementation, I implemented only grayscale spectrograms with that by extending ImageMaker class.

vadd98 commented 10 months ago

Hi, sorry to bother. I'm using this really good library to generate spectrograms in my project on Linux but because of the System.Drawing.Common dependency I'm stuck on NET 6. Has there been any progress on the SkiaSharp rendering?

janjanusek commented 10 months ago

Don't do skiasharp man, I tried it's dead end. Do Sixlabors.Imagesharp it's working everywhere, very fast efficient, free AND as I wrote only need to create custom ImageMaker class which will be using this img lib, I didn't manage to update pixel array but only one by one pixel updating L8 bmp values but still lightning fast. I spent one whole day on skiasharp and didn't figure out so this was waay more easy to do.

GeorgeS2019 commented 2 months ago

SkiaSharp allows this project to be used in Blazor https://github.com/swharden/Spectrogram/pull/49

vadd98 commented 3 weeks ago

Hi! I created a pull request with a SkiaSharp implementation replacing the older System.Drawing.Common https://github.com/swharden/Spectrogram/pull/61

swharden commented 3 weeks ago

publishing 2.0.0-alpha (a preview package) now, resolving this issue