Commit Graph

11 Commits

Author SHA1 Message Date
Sylvain Munaut 09b31b4acf fosphor: Review the GL frequency mapping and switch zoom to {center,span}
Previously we were hiding the extrema bin, now we display it "half" on
each side which sort of maps better to the concept of circular spectrum

At the same time we move the zoom spec to {center,span} rather than
{start,stop} since it makes more sense and matches the channel specs

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-01-31 23:46:54 +01:00
Sylvain Munaut 11f27973a9 fosphor: Add a color intensity scale on the right side
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2015-01-19 14:16:25 +01:00
Sylvain Munaut 65a19326d4 fosphor: Minor doc fix in fosphor.h
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2014-07-24 22:34:05 +02:00
Sylvain Munaut 0af84185f5 fosphor: Update year in copyright notice
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2014-07-24 22:34:05 +02:00
Sylvain Munaut 223968ad8e fosphor: Automatically select the number of division depending on width
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2014-07-22 10:16:39 +02:00
Sylvain Munaut 4a97b3e5d0 fosphor: Add the concept of "channels" which are overlaid on the display
These are purely display things that allow to highligh chunks of spectrum
of interest. (like currently selected channel)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2014-07-22 10:16:39 +02:00
Sylvain Munaut 8fb8606c38 fosphor: Drawing code overhaul + Introduce 'render options'
There is a lot of parameters that have no influence on the internal
computations but solely affect the rendering call. The height / width
are the only two that were supported previously.

This commit re-structures the drawing code and introduces a lot more
of those parameters. Instead of just passing them all as arguments, a
'struct fosphor_render' is introduced to hold them.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2014-07-22 10:16:38 +02:00
Sylvain Munaut ce907419c7 fosphor: Make the FFT window dynamic
- It's not longer hardcoded / computed in the kernel, but computed
   once and read from constant memory
 - By default it uses a periodic Hamming window
 - But you can load any window as a simple array of float
 - Different types of window is deemed out-of-scope here. The default
   is provided just for convenience to have something valid.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-11-10 22:24:07 +01:00
Sylvain Munaut 81a9ad16fd fopshor: Add frequency range (center/span) awareness
Although this is not actually used anywhere yet, but will be used in the
drawing routines to draw a proper scale.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-11-10 22:24:06 +01:00
Sylvain Munaut ca3f391976 fosphor: Store the selected power range in the top level 'struct fosphor'
The CL code keeps its own copy since those values are tweaked to be
applied in the kernel. We may also need the callback in the future if
instead of storing them we reconfigure the kernel at that point.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-11-10 22:24:06 +01:00
Sylvain Munaut aabc21b7f2 fosphor: Initial import of the core code
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-10-13 22:05:38 +02:00