log layer/SpectrogramLayer.cpp @ 1416:d794630429a7

age author description
Thu, 15 Nov 2018 15:08:08 +0000 Chris Cannam Retain consistent min freq (rather than min bin no) when changing fft parameters in spectrum; scale ffts by window size rather than fft size in case of oversampling, to avoid fading out because of scale factor including zero padding
Wed, 14 Nov 2018 15:47:21 +0000 Chris Cannam Fixes to spectrum axis calculations, + default to starting at bin 1
Wed, 07 Nov 2018 11:37:51 +0000 Chris Cannam Add oversampling option to spectrum as well spectrogramparam
Tue, 06 Nov 2018 13:36:04 +0000 Chris Cannam Experimental oversampling param spectrogramparam
Thu, 18 Oct 2018 13:21:56 +0100 Chris Cannam Add mechanism for saving/loading colour maps by name/id rather than by numerical index, for future compatibility when adding to or changing the supported colour maps. Add two new colour maps (and one old one). Write out backward-compatible numerical indices for use when reloading in older versions. Also add a mechanism to invert the colour map, though I don't think it turns out useful enough to include in the UI.
Thu, 01 Mar 2018 14:43:53 +0000 Chris Cannam Convert some cerrs to SVCERRs. Apart from anything else, this makes MSVC2017 happy
Tue, 28 Feb 2017 14:47:13 +0000 Chris Cannam Fix a couple of compiler warnings
Wed, 22 Feb 2017 12:01:39 +0000 Chris Cannam Fix various "model deleted with no aboutToDelete notification" warnings (and one associated potential memory leak)
Tue, 21 Feb 2017 11:12:07 +0000 Chris Cannam Fix #1792 measure tool crosshairs rendered in wrong colour. Also extend crosshairs over the no-man's-land at the left
Fri, 27 Jan 2017 11:39:29 +0000 Chris Cannam Untabify
Thu, 26 Jan 2017 21:18:55 +0000 Chris Cannam Move this function into cpp file
Thu, 05 Jan 2017 14:02:54 +0000 Chris Cannam Make the colour 3d plot renderer able to support more than one level of peak cache; introduce a second "peak" cache for the spectrogram layer that actually has a 1-1 column relationship with the underlying FFT model, and use it in addition to the existing peak cache if memory is plentiful. Makes spectrograms appear much faster in many common situations. 3.0-integration
Thu, 05 Jan 2017 11:10:57 +0000 Chris Cannam Recreate FFT model when something changes, not the next time it's requested (avoids extra work when only retrieving the model) 3.0-integration
Tue, 03 Jan 2017 16:23:11 +0000 Chris Cannam Provisionally add labels for normalisation menu (sigh) 3.0-integration
Fri, 16 Dec 2016 14:16:05 +0000 Chris Cannam Introduce a colour map combo too. Doesn't yet have swatches levelpanwidget
Tue, 08 Nov 2016 14:55:53 +0000 Chris Cannam Use peak cache at one zoom level lower (since it exists at that level already -- this is a >= vs > question) + make naming more uniform 3.0-integration
Tue, 18 Oct 2016 15:55:50 +0100 Chris Cannam MSVC build fixes msvc2015_64
Fri, 05 Aug 2016 17:48:52 +0100 Chris Cannam Introduce labels in RangeMapper and use them in AudioDial, though only for tooltip at present. Make use of this for spectrogram magic -81dB/-Inf threshold. Also introduce static strings for inf/pi and use where appropriate. 3.0-integration
Fri, 05 Aug 2016 14:54:24 +0100 Chris Cannam Since 1d317e717fe4 we no longer want to fft scale in hybrid mode. (This might also restore compatibility with Tony and prior SV save sessions -- test this.) spectrogram-minor-refactor
Fri, 05 Aug 2016 14:36:28 +0100 Chris Cannam Make text labels on vertical scale ticks visible spectrogram-minor-refactor
Fri, 05 Aug 2016 14:31:16 +0100 Chris Cannam Fixes to phase display and colour scale for it; tidy up some debug output spectrogram-minor-refactor
Fri, 05 Aug 2016 14:00:58 +0100 Chris Cannam Pull out paintDetailedScale spectrogram-minor-refactor
Fri, 05 Aug 2016 13:48:14 +0100 Chris Cannam Minor tidy, + go back to opaque-only spectrogram as intended spectrogram-minor-refactor
Fri, 05 Aug 2016 12:47:10 +0100 Chris Cannam Restore illuminateLocalFeatures in spectrogram spectrogram-minor-refactor
Thu, 04 Aug 2016 17:29:33 +0100 Chris Cannam Reconnect double-click region select in spectrogram spectrogram-minor-refactor
Thu, 04 Aug 2016 11:26:11 +0100 Chris Cannam Re-implement dB^2 (log-power) spectrogram setting spectrogram-minor-refactor
Wed, 03 Aug 2016 16:16:23 +0100 Chris Cannam Re-enable (little-used) normalise-visible-range option in spectrogram layer spectrogram-minor-refactor
Tue, 02 Aug 2016 18:32:19 +0100 Chris Cannam Another small tidy spectrogram-minor-refactor
Tue, 02 Aug 2016 09:58:41 +0100 Chris Cannam Sensible vertical scale and hybrid normalisation range in colour 3d plot spectrogram-minor-refactor
Tue, 02 Aug 2016 09:09:58 +0100 Chris Cannam A threshold fix spectrogram-minor-refactor
Mon, 01 Aug 2016 16:25:06 +0100 Chris Cannam Float/double conversion fixes spectrogram-minor-refactor
Mon, 01 Aug 2016 16:21:01 +0100 Chris Cannam Fix threshold in spectrogram -- it wasn't working in the last release. spectrogram-minor-refactor
Mon, 01 Aug 2016 15:06:16 +0100 Chris Cannam Scale range matching spectrogram-minor-refactor
Fri, 22 Jul 2016 14:42:36 +0100 Chris Cannam Some tidying spectrogram-minor-refactor
Fri, 22 Jul 2016 13:56:24 +0100 Chris Cannam Fixes and debug output for mag range calculations spectrogram-minor-refactor
Fri, 22 Jul 2016 12:17:55 +0100 Chris Cannam Wiring through the magnitude range updates spectrogram-minor-refactor
Tue, 19 Jul 2016 17:28:03 +0100 Chris Cannam Fix translucent mode for spectrogram spectrogram-minor-refactor
Tue, 19 Jul 2016 15:02:44 +0100 Chris Cannam Re-enable a couple more features spectrogram-minor-refactor
Tue, 19 Jul 2016 14:49:46 +0100 Chris Cannam Consts and willRenderOpaque spectrogram-minor-refactor
Tue, 19 Jul 2016 10:12:30 +0100 Chris Cannam Colourmap rotation (inelegantly) spectrogram-minor-refactor
Thu, 14 Jul 2016 17:03:40 +0100 Chris Cannam Remove all of the "old" paint logic from SpectrogramLayer, even where it hasn't been completely replaced yet spectrogram-minor-refactor
Thu, 14 Jul 2016 16:52:16 +0100 Chris Cannam Convert ColourScaleType into an enum class spectrogram-minor-refactor
Thu, 14 Jul 2016 16:12:05 +0100 Chris Cannam Convert ColumnNormalization to an enum class, and separate out normalize-visible spectrogram-minor-refactor
Thu, 14 Jul 2016 15:13:37 +0100 Chris Cannam Turn BinDisplay and BinScale into enum classes spectrogram-minor-refactor
Wed, 13 Jul 2016 13:44:11 +0100 Chris Cannam Delete renderers spectrogram-minor-refactor
Wed, 13 Jul 2016 13:30:39 +0100 Chris Cannam Begin using renderer in colour 3d plot layer spectrogram-minor-refactor
Wed, 13 Jul 2016 10:00:21 +0100 Chris Cannam Switch in "standard" colour scale, bin scale, normalisation -- not quite handled elegantly or correctly yet spectrogram-minor-refactor
Mon, 11 Jul 2016 17:19:36 +0100 Chris Cannam Minor build fix spectrogram-minor-refactor
Mon, 11 Jul 2016 14:37:03 +0100 Chris Cannam Far more pragmatic update strategy spectrogram-minor-refactor
Thu, 07 Jul 2016 19:18:01 +0100 Chris Cannam Use enums from origin classes spectrogram-minor-refactor
Thu, 07 Jul 2016 12:39:56 +0100 Chris Cannam Colour scales (partly) spectrogram-minor-refactor
Thu, 07 Jul 2016 11:24:28 +0100 Chris Cannam Time-constrained rendering spectrogram-minor-refactor
Tue, 05 Jul 2016 17:48:26 +0100 Chris Cannam Cut over to using the renderer (though it's very incomplete) and fix some cache problems and pointer lifetime misunderstandings spectrogram-minor-refactor
Tue, 05 Jul 2016 12:20:56 +0100 Chris Cannam Start to introduce renderer objects spectrogram-minor-refactor
Tue, 05 Jul 2016 08:58:28 +0100 Chris Cannam One FFT model per spectrogram (again!) - but we do still need a magnitude range per view, as views could be showing different regions spectrogram-minor-refactor
Sat, 02 Jul 2016 12:56:07 +0100 Chris Cannam One FFT size method, no member for it spectrogram-minor-refactor
Fri, 01 Jul 2016 18:30:42 +0100 Chris Cannam Simplify the oversampling/zero-padding logic. FFT model selection no longer depends on the view. spectrogram-minor-refactor
Fri, 01 Jul 2016 17:54:31 +0100 Chris Cannam Add VerticalBinLayer to SpectrogramLayer spectrogram-minor-refactor
Thu, 30 Jun 2016 12:40:22 +0100 Chris Cannam Move drawVisibleText to PaintAssistant spectrogram-minor-refactor
Thu, 23 Jun 2016 08:46:20 +0100 Chris Cannam Fix possible crash when scrolling to end spectrogram-minor-refactor
Mon, 20 Jun 2016 12:00:32 +0100 Chris Cannam Extend column logic to peak frequency display as well, and correct some scopes according to whether values are per source column or per target pixel spectrogram-minor-refactor
Mon, 20 Jun 2016 11:30:15 +0100 Chris Cannam Pull out column ops into ColumnOp spectrogram-minor-refactor
Fri, 17 Jun 2016 10:19:55 +0100 Chris Cannam A more sensible order for column operations spectrogram-minor-refactor
Wed, 15 Jun 2016 14:43:51 +0100 Chris Cannam Don't need these spectrogram-minor-refactor
Wed, 15 Jun 2016 09:46:20 +0100 Chris Cannam Replace old logic with calls to new functions; basic refactor part A done, the code now compiles again spectrogram-minor-refactor
Wed, 15 Jun 2016 08:52:07 +0100 Chris Cannam A couple more helper functions spectrogram-minor-refactor
Mon, 13 Jun 2016 16:17:44 +0100 Chris Cannam Mid-refactor to pull out the bulk of paintDrawBuffer into chunks spectrogram-minor-refactor
Mon, 13 Jun 2016 11:44:08 +0100 Chris Cannam Comments and minor tidy 3.0-integration
Mon, 13 Jun 2016 11:44:03 +0100 Chris Cannam Make normalise-hybrid logic the same in both draw methods 3.0-integration
Mon, 13 Jun 2016 11:42:51 +0100 Chris Cannam Make peak cache divisor a member 3.0-integration
Tue, 09 Feb 2016 10:59:36 +0000 Chris Cannam Make ViewProxy objects share the ids of their Views; fixes incorrect colour scale drawing 3.0-integration
Thu, 04 Feb 2016 11:18:08 +0000 Chris Cannam Merge from branch "spectrogram-minor-refactor" 3.0-integration
Wed, 03 Feb 2016 16:51:37 +0000 Chris Cannam Truncate edges when about to paint beyond limits of cache spectrogram-minor-refactor
Tue, 02 Feb 2016 16:00:31 +0000 Chris Cannam Don't use partial paints when zoomed in far enough to have boundary alignment concerns. (But boundary calculations are still wrong, leading to a logic error exception.) spectrogram-minor-refactor
Tue, 02 Feb 2016 15:34:39 +0000 Chris Cannam Comment spectrogram-minor-refactor
Tue, 02 Feb 2016 15:32:57 +0000 Chris Cannam Timing tweaks to reduce the number of repaints spectrogram-minor-refactor
Fri, 29 Jan 2016 18:51:05 +0000 Chris Cannam Further fixes to the scrollable cache logic spectrogram-minor-refactor
Fri, 29 Jan 2016 15:08:01 +0000 Chris Cannam Start refactoring out the spectrogram image cache spectrogram-minor-refactor
Wed, 27 Jan 2016 11:10:48 +0000 Chris Cannam Fix calculation of repaint area when we haven't scrolled but cache is not complete spectrogram-minor-refactor
Tue, 26 Jan 2016 17:21:46 +0000 Chris Cannam Start repainting from the middle -- but this is quite unreliable spectrogram-minor-refactor
Tue, 26 Jan 2016 14:44:26 +0000 Chris Cannam Fix return value from paintDrawBuffer in rightToLeft case; propagate timing change to PeakFrequencies version as well spectrogram-minor-refactor
Tue, 26 Jan 2016 13:19:53 +0000 Chris Cannam Draw right-to-left when adjoining an existing cache valid area on the right spectrogram-minor-refactor
Mon, 25 Jan 2016 16:16:21 +0000 Chris Cannam Make paint method do its own timing and abandon if it's taking too long (still needs some work on queueing correct repaints of the remainder) spectrogram-minor-refactor
Mon, 25 Jan 2016 15:52:26 +0000 Chris Cannam Rearrange cache update calculations so as to use the actual painted width returned by paint functions (though they only ever return the same width as requested, at this point) spectrogram-minor-refactor
Fri, 22 Jan 2016 18:12:41 +0000 Chris Cannam Avoid reusing a large paint width if the zoom level has changed (in case it has changed dramatically, as for example when the user hits the F key). Also some tidying and adjustment to timing stuff colourschemes
Fri, 22 Jan 2016 17:08:02 +0000 Chris Cannam Tidy a bit colourschemes
Fri, 22 Jan 2016 13:39:45 +0000 Chris Cannam Convert 3d model column type from QVector to std::vector; replace another user of ResizeableBitset colourschemes
Wed, 20 Jan 2016 11:43:16 +0000 Chris Cannam Add default spectrogram colours to prefs colourschemes
Tue, 20 Oct 2015 12:55:09 +0100 Chris Cannam Fix incorrect reload of old Tony v1.0 files tony-2.0-integration
Tue, 20 Oct 2015 12:54:47 +0100 Chris Cannam Use max value returned directly from api call tony-2.0-integration
Tue, 20 Oct 2015 12:53:32 +0100 Chris Cannam Minor adjustment for higher-res screens tony-2.0-integration
Tue, 13 Oct 2015 14:24:51 +0100 Chris Cannam Repaint fix tony-2.0-integration
Thu, 20 Aug 2015 15:40:04 +0100 Chris Cannam Some minor tweaks to make behaviour more like prior Tony tony-2.0-integration
Wed, 01 Jul 2015 13:27:03 +0100 Chris Cannam Merge from branch simple-fft-model 3.0-integration
Wed, 01 Jul 2015 11:33:28 +0100 Chris Cannam Switch off debug again simple-fft-model
Wed, 01 Jul 2015 11:32:18 +0100 Chris Cannam Fill extent is not relevant in simple-fft-model code, as it's always the full extent simple-fft-model
Fri, 26 Jun 2015 14:13:31 +0100 Chris Cannam Merge from branch normalize_hybrid_option 3.0-integration
Fri, 26 Jun 2015 14:10:40 +0100 Chris Cannam Merge from branch osx-retina 3.0-integration
Fri, 12 Jun 2015 14:51:46 +0100 Chris Cannam Gut the old code, but don't replace it yet (so nothing will link yet) simple-fft-model
Wed, 18 Mar 2015 15:10:36 +0000 Chris Cannam Fix crash caused by using proxy (of unknown lifecycle) instead of view as cache key osx-retina
Tue, 17 Mar 2015 16:56:03 +0000 Chris Cannam Many fixes for the previous stuff osx-retina
Tue, 17 Mar 2015 15:05:25 +0000 Chris Cannam Start trying to introduce LayerGeometryProvider as proxyable interface for View methods that the Layer wants to use osx-retina
Tue, 10 Mar 2015 10:31:27 +0000 Chris Cannam More type fixes, primarily in the spectrogram cxx11
Mon, 09 Mar 2015 15:59:04 +0000 Chris Cannam A few more fixes cxx11
Mon, 09 Mar 2015 14:35:21 +0000 Chris Cannam Working through the float/double and int/sv_frame_t fixes cxx11
Wed, 04 Mar 2015 13:53:05 +0000 Chris Cannam Fixes to go with latest svcore cxx11
Fri, 12 Sep 2014 11:38:55 +0100 Chris Cannam Experimentally add the hybrid normalisation as an option (not working well either in UI or implementation) normalize_hybrid_option
Wed, 03 Sep 2014 11:47:41 +0100 Chris Cannam Fix a couple of inadvertant integer divisions (from coverity scan)
Wed, 03 Sep 2014 11:44:40 +0100 Chris Cannam Remove redundant code (from coverity scan)
Tue, 17 Jun 2014 15:36:56 +0100 Chris Cannam Some more unsigned/long removal warnfix_no_size_t
Tue, 17 Jun 2014 15:18:06 +0100 Chris Cannam Remove size_t's and fix warnings in layer/ warnfix_no_size_t
Wed, 07 May 2014 15:12:13 +0100 Chris Cannam Merge from tonioni branch tony_integration
Wed, 02 Apr 2014 21:50:04 +0100 Chris Cannam A lot of work on saving and reloading sessions: save flexinote layer type and hybrid spectrogram normalisation, etc tonioni
Thu, 06 Feb 2014 15:31:46 +0000 Chris Cannam Unclamped
Tue, 28 Jan 2014 17:37:42 +0000 Chris Cannam Bodge in Matthias's suggested normalise-to-log as an option in spectrogram and colour 3d plot layers (not wired into gui)
Tue, 03 Dec 2013 17:32:25 +0000 Chris Cannam Pull out PianoScale into separate class
Tue, 26 Nov 2013 14:06:40 +0000 Chris Cannam Drop std:: from cout, cerr, endl -- pull these in through Debug.h
Mon, 11 Mar 2013 14:23:52 +0000 Chris Cannam Build fixes for Qt5 qt5
Mon, 30 Jan 2012 16:06:32 +0000 Chris Cannam Adjust crosshair left end position based on detail level of vertical scale
Mon, 30 Jan 2012 16:01:59 +0000 Chris Cannam Give a dedicated key to toggling the centre line, and move it out of the overlay level setting -- reducing number of overlay levels to 3. Introduce two distinct vertical scale types (so that we can hide the spectrogram colour scale part easily)