Hi,
can you give me a sample solution for the fastest spectrogram (line) being possible
when using LighningChart?
The demo app is too slow and maybe full of unnecessary code lines to achieve this.
Thanks,
BR,
Hendrik
Fast spectrogram
Moderator: Queue Moderators
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
Hi Hendrik,
doesn't the approach shown in "High-resolution spectrogram" example suit your purposes? It's not a line spectrogram exactly, but uses IntensityGridSeries instead.
What kind of resolution are you planning to display? Frequency resolution x Time resolution? How many updates / sec?
doesn't the approach shown in "High-resolution spectrogram" example suit your purposes? It's not a line spectrogram exactly, but uses IntensityGridSeries instead.
What kind of resolution are you planning to display? Frequency resolution x Time resolution? How many updates / sec?
LightningChart Support Team, PT
Re: Fast spectrogram
Hi,
I want to have the highest updaterate being possible.
That means the spectrogram should be updated 5 - 10 ms per spectrum data (200 points).
Competitor sample browser shows that this is possible.
I think your framework can do this as well.
BR,
Hendrik
I want to have the highest updaterate being possible.
That means the spectrogram should be updated 5 - 10 ms per spectrum data (200 points).
Competitor sample browser shows that this is possible.
I think your framework can do this as well.
BR,
Hendrik
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
Hello,
the spectrogram can be shown in so many different ways. Heatmap / bitmap based, points based, line based, 3D surface based, 3D waterfall based etc...
E.g. by using High-resolution spectrogram example, data resolution of 2000 x 1000, solid > 60 FPS refresh rate can be achieved. Using spectrum size of 200, and time resolution of 10000 points (10 seconds Y axis, it means 1000 rows per second, that is, 1 ms data resolution). The FPS is approx 50.
Intensity grid series based approach is the typical way our customers want to show their spectrograms. Would you please indicate if you want something different.
Spectrogram, based on Lines (or LineCollections) of LightningChart, is not an optimal way to plot spectrogram, at least in performance aspect.
If IntensityGridSeries based approach is not suitable, one possible way is to use FreeformPointLineSeries, which supports individual point coloring, and automatic destruction of data when the given point count limit is exceeded. Please say if you want us to build a demo of this, it'll take days though.
the spectrogram can be shown in so many different ways. Heatmap / bitmap based, points based, line based, 3D surface based, 3D waterfall based etc...
E.g. by using High-resolution spectrogram example, data resolution of 2000 x 1000, solid > 60 FPS refresh rate can be achieved. Using spectrum size of 200, and time resolution of 10000 points (10 seconds Y axis, it means 1000 rows per second, that is, 1 ms data resolution). The FPS is approx 50.
Intensity grid series based approach is the typical way our customers want to show their spectrograms. Would you please indicate if you want something different.
Spectrogram, based on Lines (or LineCollections) of LightningChart, is not an optimal way to plot spectrogram, at least in performance aspect.
If IntensityGridSeries based approach is not suitable, one possible way is to use FreeformPointLineSeries, which supports individual point coloring, and automatic destruction of data when the given point count limit is exceeded. Please say if you want us to build a demo of this, it'll take days though.
LightningChart Support Team, PT
Re: Fast spectrogram
Thanks for the info.
yes could you provide a sample? That would be great.
I must not be a line graph but the performance should be as fast as possible.
BR,
Hendrik
yes could you provide a sample? That would be great.
I must not be a line graph but the performance should be as fast as possible.
BR,
Hendrik
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
OK, I'll experiment with different approaches and get back to you with optimal approach.
LightningChart Support Team, PT
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
We optimized spectrogram rendering quite a lot. We are hoping to finish it this week and send a new version for your tests.
LightningChart Support Team, PT
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
Hi Hendrik,
FreeformPointLineSeries's IndividualPointColoring approach I tested gave about 25% - 50 % of refresh rate of IntensityGridSeries, so that approach is not optimal. In the other hand it gives additional appearance options, such as other shapes than square as well.
Instead I sent you a new version for your tests by e-mail, including VS project. The code included there is not applicable to current version. Hopefully are satisfied with our optimizations
FreeformPointLineSeries's IndividualPointColoring approach I tested gave about 25% - 50 % of refresh rate of IntensityGridSeries, so that approach is not optimal. In the other hand it gives additional appearance options, such as other shapes than square as well.
Instead I sent you a new version for your tests by e-mail, including VS project. The code included there is not applicable to current version. Hopefully are satisfied with our optimizations
LightningChart Support Team, PT
- ArctionPasi
- Posts: 1367
- Joined: Tue Mar 26, 2013 10:57 pm
- Location: Finland
- Contact:
Re: Fast spectrogram
Hello,
we made high-resolution spectrogram example in our demo application. It replaces the old High-resolution spectogram (which was renamed as Spectrogram).
E.g. with 4K Ultra-HD resolution (both screen and data resolution), scrolling FPS is > 50 with my Intel i7 and Nvidia GTX 960. No down-sampling anywhere.
This is currently the optimal way plot spectrograms as fast as possible.
we made high-resolution spectrogram example in our demo application. It replaces the old High-resolution spectogram (which was renamed as Spectrogram).
E.g. with 4K Ultra-HD resolution (both screen and data resolution), scrolling FPS is > 50 with my Intel i7 and Nvidia GTX 960. No down-sampling anywhere.
This is currently the optimal way plot spectrograms as fast as possible.
LightningChart Support Team, PT