Paul Licameli
9b9ceab6ab
Ruler uses generalized number scale when plotting "log"
2015-07-27 23:01:14 -04:00
Paul Licameli
43b7df701b
Use class NumberScale in TrackArtist and spectral selection, abstracting...
...
... the details of mapping to and from pixel height
2015-07-27 23:01:11 -04:00
Paul Licameli
7d379cde13
Conditional compilation (disabled) to make Spectral selection choice global...
...
... not per track,
and the preferences or View Settings page has a separate static box for
global settings as opposed to track settings. This is the only global setting
for now.
2015-07-27 23:01:06 -04:00
Paul Licameli
f74713f020
WaveTrack::WaveTrackDisplay does not encode scale or spectral selection...
...
... SpectrogramSettings does that instead, and Preferences or View Settings
are the user interface for changing it.
Handle invalidation of spectrogram pixel cache for scale type changes,
just as for other changes of settings. No more
TrackArtist::InvalidateSpectrumCache().
View type of track now switches to Spectrum when applying or OKing the
View Settings... dialog and the Spectrogram page is open (and for now
it is still the only page)
2015-07-27 23:01:04 -04:00
Paul Licameli
1dffeace93
Access SpectrogramSettings via WaveTrack, which may be nondefault (no UI yet)...
...
... and add accessors to SpectrogramSettings, and remove TrackArtist functions
for getting and setting the globals.
2015-07-26 21:10:16 -04:00
Paul Licameli
a1621f7d1b
Define and use SpectrogramSettings::GetFFTLength()
2015-07-26 21:10:15 -04:00
Paul Licameli
786c1da645
Move class SpectrogramSettings to its own file
2015-07-26 21:10:13 -04:00
Paul Licameli
f37c37e67c
Fix travis errors by other means
2015-07-26 19:23:55 -04:00
Paul Licameli
ca30328e8f
Revert "Fix Travis Build (const in structure)"
...
This reverts commit 13c17d3d5da5fdaf5d0f0ea99886b06194f4fc41.
2015-07-26 19:08:33 -04:00
Paul Licameli
a548303fdc
Bug1090: Draw sync-lock tiles only when we should
2015-07-25 22:03:26 -04:00
Paul Licameli
dc9549df53
Bug1095 -- quantize times when drawing selection backgroun in wave track
2015-07-25 20:54:55 -04:00
Paul Licameli
03984c48a5
Bug1096: Fix crash changing view types
2015-07-25 19:58:24 -04:00
Steve Daulton
df8ddde874
Added dB - linear amplitude conversion macros.
2015-07-24 21:59:34 +01:00
Leland Lucius
3fe146f306
Merge remote-tracking branch 'upstream/master' into wx3
2015-07-19 18:00:02 -05:00
James Crook
13c17d3d5d
Fix Travis Build (const in structure)
...
Not supported by version of gcc used by travis.
2015-07-19 19:01:15 +01:00
Paul Licameli
c02652b3ab
rest of fisheye drawing code...
...
And finally, make ZoomInfo::zoom protected!
2015-07-19 11:44:29 -04:00
Paul Licameli
e0f4595485
TrackArtist, LabelTrack, TimeTrack, Envelope functions take ZoomInfo...
...
... and SelectedRegion, and not ViewInfo or zoom level as a double.
Also some leftOffset arguments.
Assumptions of uniform zoom level persist in TrackArtist::DrawClipSpectrum and
in TrackArtist::DrawClipWaveform but no longer in the rest.
2015-07-19 11:44:13 -04:00
Paul Licameli
35e0897bf7
Avoid needless mix/max/rms calculation when showing individual samples.
2015-07-19 11:43:55 -04:00
Paul Licameli
1b125f8fe3
more variable name changes
2015-07-19 11:43:53 -04:00
Paul Licameli
9a22b94d99
Change some argument names. I don't like one-letter variable names.
2015-07-19 11:43:52 -04:00
Paul Licameli
b25994a82d
Throw away EXPERIMENTAL_FFT_SKIP_POINTS...
...
... with James' consent.
2015-07-18 23:21:27 -04:00
Leland Lucius
d1f66d768f
Updates for wx3
...
A long way to go yet, but many OSX issues fixed including
conversion of Audio Unit effects.
2015-06-30 11:25:32 -05:00
Paul Licameli
4d2825e3d1
Bug837 Fix mismatch of spectrum display and vertical ruler...
...
... It was caused by unnecessary rounding to integer for "minSamples" and
"maxSamples".
Which were also misleading variable names, so I changed them. And took the
excuse to rename some other variables.
2015-06-11 23:26:19 -04:00
Paul Licameli
b24e0f9115
Change min/max frequency in spectrogram prefs causes display refresh (again)
...
... Sorry I broke that!
2015-06-10 14:49:04 -04:00
Paul Licameli
976eb6164f
More reorganization of wave and spectrum caches, and performance...
...
Simplify the partial copying of wave and spectrum caches. Use memcpy for speed.
Don't memcpy out of the caches into temporary buffers for TrackArtist,
just pass
pointers.
More vectors in the cache classes, fewer deletes.
Pulled big loop, and its body, out of the spectrogram routine into functions.
2015-06-06 11:43:10 -04:00
Paul Licameli
1916bc3142
Fix compilation of some disabled experimental branches for spectrograms ...
...
... Not promising that they work, just compilation.
2015-06-04 11:30:08 -04:00
Paul Licameli
952a22c8b1
Created a global structure to hold spectrogram preferences...
...
Don't read "/Spectrum/" preferences anywhere but in SpectrumPrefs.cpp.
Don't store global values in TrackArtist.
Possibly some day, there will be other instances of SpectrogramSettings so we
can have independent per-track settings.
2015-06-04 11:29:17 -04:00
Paul Licameli
38f24a42ef
Don't invalidate SpecCache for changes of min, max, gain or range...
...
... because those do not affect it. They only affect the SpecPxCache.
Did other things to that class: renamed fields, new constructors.
2015-06-04 11:29:16 -04:00
Paul Licameli
3e61ae0db5
Some simplified argument passing in drawing code
2015-06-03 11:26:22 -04:00
Paul Licameli
437e28db1a
Moved ValueOfPixel into global namespace, it wants to live next to its inverse
2015-06-02 19:16:05 -04:00
unknown
5f71e334dc
Bug999: top bin of spectrogram display
2015-06-01 22:58:20 -04:00
unknown
d74e995024
After drawing stripes, restore the pen
2015-06-01 22:58:20 -04:00
unknown
8aea663882
Lifted code that draws multi-tool sliders -- it's per track, not clip
2015-06-01 22:58:19 -04:00
unknown
29fb5a2ffe
Simplified passing of min/min/rmx/bl/where values for drawing waveforms
2015-06-01 22:58:18 -04:00
unknown
ecb97e9c58
Split apart the loops that update the spectrogram cache and that use it
2015-06-01 22:58:16 -04:00
unknown
8ef354aba0
Abstracted common code out of waveform and spectrum drawing routines
2015-06-01 22:41:56 -04:00
unknown
3752f3b4be
Simplified optional profiling code in TrackArtist
2015-06-01 22:41:41 -04:00
Paul Licameli
6a1227f039
zero-padding factor for spectrograms, internals
2015-05-31 16:43:09 -04:00
Steve Daulton
d1994e702e
Remove spectral selection edges when not in spectral selection.
2015-05-30 11:13:01 +01:00
Steve Daulton
26707aabfa
Return to gray highlighting for Spectrogram.
2015-05-30 11:04:45 +01:00
James Crook
88a9e434f5
Select Spectral Edit from Track DropDown
2015-05-30 11:04:45 +01:00
Paul Licameli
6810095509
Removed some functions never called, code never reached, fields never used
2015-05-29 00:13:50 -04:00
Paul Licameli
e6ccd51326
Use WaveTrackCache for spectrograms
...
Zooming-in of spectrograms (or other view changes that invalidate the
whole pixel cache of the WaveClip) used to do at least one opening and
closing of a block file for each column of pixels. With this change,
open each block file not more than once for each repopulation of the
cache.
Improved speed may be more noticeable on less powerful computers, or when
the audio file is in a slower storage device.
2015-05-26 20:02:38 -04:00
Paul Licameli
7c17d99ea5
Bug971: spectrogram display
2015-05-25 11:05:31 -04:00
Daniel Winzen
92d522132e
Variable cleanup
2015-04-23 18:30:38 +02:00
david avery
0319f6ea51
merging wx3 changes
2015-04-12 23:52:32 -06:00
stevethefiddle@gmail.com
807689b9b8
Bug 793. Fixes track name not showing in single right channel track.
2014-12-10 16:26:47 +00:00
stevethefiddle@gmail.com
7c3f355c7a
Fix for bug 791.
2014-11-24 18:03:33 +00:00
james.k.crook@gmail.com
b34d256e88
Don't show spectral selection in pitch view (patch by Paul Licameli).
2014-11-19 23:10:59 +00:00
stevethefiddle@gmail.com
233f43dd7d
Fix: Spectrogram gets the wrong default on first run.
2014-11-10 20:14:51 +00:00