In audio tracks we already do that, and I think that is the only sensible thing to do.
What we don’t currently do when “Snap To” is not enabled, is to snap the selection (hence labels) to sample periods. Quantizing the selection to “sample time” is more problematic because there may be more than one sample rate at play. Consider if we were selecting in two tracks. One has a sample rate of 44100 Hz, one has a sample rate of 48000 Hz and the Project rate is 100000 Hz. Which sample rate “should” we snap to, or should we snap to 1/44100th second in one track, 1/48000th second in the other track, and 1/100000th second in the Timeline and label tracks? Currently, when “Snap To” is enabled we snap to the Project Rate.
The problem that we have when considering very short time periods, is that there is a discrepancy between “analogue time” and “digital time”.
Consider a digital watch that displays seconds - there is nothing to distinguish the difference between the start of a second, the middle of a second and the end of a second. Unless we bias measurements and calculations based on our own (analogue) sense of time, the maximum precision of calculations will be 1 second.
In digital audio we usually represent samples as “dots”, which in one sense is misleading because a digital “sample” has exactly the same value in both “magnitude” and “sample number” from start to end. In fact it makes little sense to think of “start and end” of a sample because “1 sample period” is the smallest quantum of time, so the properties of a sample are not “start time, start value, end time, end value”, but simply “sample value and sample number”. The value and number define what a sample “is”.
When considering what the samples “represent”, the picture is slightly different. Assuming “perfect” conversion between digital and analogue, the sample values represent points on a curve and the curve will pass through each sample as plotted on a graph as amplitude / time. This is how samples are represented in audio tracks in Audacity (and many other audio editors).
It is arguable whether the “dots” should be at the start of the sample period, or the middle of the sample period (currently we put them at the start), and it is arguable whether to snap the selection to the dots, or mid way between the dots (we snap between dots). The important thing is that it must be entirely consistent so as to avoid “off by one” errors. We can see the drawback of selecting “between dots” in examples posted previously in this topic. Selecting “on the dot” has it’s own drawback in that it is ambiguous whether a sample that is “on the line” is “in” the selection or “outside” the selection (which is not ambiguous if we select “between” dots).
Blind users will probably wonder what all this fuss is about, because they are not thrown off by the visual appearance. If we disregard the graphical representation, what we are left with is a list of numbers representing a sequence of sample values. When we “make a selection”, we are selecting a sub-sequence from that list. An item from the list is either within the bounds of our selection, or not within the selection and there is no grey area.