Reduce number of waveform options
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mixxx |
Confirmed
|
Low
|
Unassigned |
Bug Description
I love the new waveforms, but the preferences window for them is ugly and over-engineered. The number of bugs for various individual waveform implementations is also proliferating so reducing the options here will also reduce some of those issues.
I understand that many of these options allow users to fine-tune the waveform for their individual machine's capability, but I think we need to better balance the interests of debugging and the interest in not scaring our users. Most DJs don't know what OpenGL is, or why they'd want to use shaders or not... So the basic waveform settings have to be easily-grasped. Further complexity, for debugging, should be hidden or reduced.
In my ideal world there would be a single waveform dropdown, and it would contain:
* Off
* Simple
* Complex
* Complex (Hardware accelerated)
(where "hardware accelerated" means opengl)
Simple would be our simplest waveform running at a low fps, like 15fps.
Complex would be a pure-QT filtered waveform running at 30fps. This is our "compatibility mode" for fast systems that have graphics card issues with GL.
Complex (hardware accelerated) would our GL implementation, also running at 30.
As for the options, some of them are useful for debugging and development, but some seem unnecessary to me.
Debugging/Advanced elements:
Having the actual fps is ok for development but unnecessary for most users. If it's running slow they will drop down to Simple. I've been told some people like to boost this to 60 for ultra-smoothness.
99% of the time I don't care what my opengl status is.
Superfluous elements:
I think "visual gain" is unnecessary, and might have mostly been a workaround for some bugs in the analyzing code. I suggest we drop it completely. Perhaps we could replace it with an option to either fill the height with the waveform, or leave the height as a function of the gain.
We should just pick a default zoom. If the user changes the zoom, save that setting as the new default.
I'm not sure why waveform zooms wouldn't be synchronized.
RJ suggested an "advanced" tab... maybe we could have something like:
[ Waveform Dropdown ]
[+] Advanced
So the Advanced options are in a twirl-down section, not a tab, but they are hidden by default.
Changed in mixxx: | |
milestone: | none → 1.11.0 |
tags: | added: usability waveform |
Changed in mixxx: | |
importance: | Undecided → Low |
Changed in mixxx: | |
milestone: | 1.11.0 → 1.11.1 |
Changed in mixxx: | |
milestone: | 1.11.1 → none |
Agree that the waveform options is rather complex.
Some thoughts.
Actual rate: Drop completely
GL Status: Drop completely
Frame Rate: Leave it in, but decide on slider or stepper.
Synchronize: Drop completely. At least to my knowledge Traktor is the only major soft that allow deck independent zoom but probably only because they do not have parallel waveforms.
Also it allows us to have a global keyboard shortcut for zoom.
Visual gain: My vote is for leaving it in. It is probably not that useful for EDM or other popular music, but for some less bassy older music ( e.g. 70`s funk & dancehall) it`s nice to have an option to emphase some frequency ranges visually to make the most out of the waveforms. Mixxx users likely play out a wide variety of music and leaving Visual gain in as advanced option is reasonable and a unique selling point.
Also it could be useful if we`d choose to have a 3-band waveform somewhere in the feature, where the 3 ranges are displayed below each other just like in Scratch/Itch. In that said software i found it not that useful because it is a) not colored as in the standard view and b) the basses dont really stand out but it`s what is usually used for beatmatching.
Zoom factor: Current waveform zoom range is 1-6 where 1 is default and this is too close (Zoom steps are geeky too). We have less than 1 second of audio visible per default now in the standard skin. Better use something like 100%-10% in steps of 10 where 50% is default so we can use 3 not yet added zoom buttons (In/Out/Reset to default) per deck in the GUI.
Imo the waveform options should move to a separate tab in the Preferences just like crossfader/EQ. Would also make the preferences dialog shrink a bit from it`s current height.