Hi Paul I was curious about your original question so tried to do a search and of course wanted to find search terms to define what an interval is. As Curry says it is likely each media type has a different definition.
I did find a retired QuickTime document for the MovieToolbox that explains the time coordinate system and defines a time base which is its current time and its rate. https://developer.apple.com/library/archive/documentation/QuickTime/RM/MovieInternals/MTTimeSpace/B-Chapter/2MovieTimeandSpace.html#//apple_ref/doc/uid/TP40000911-MovieTimeandSpace-WorkingWithMovieTime An interesting thing on this page about the time coordinate systems is the relation between the time scale and the maximum duration of the movie. ---------- Time coordinate systems have a finite maximum duration that defines the maximum time value for a time coordinate system (the minimum time value is always 0). Note that as a QuickTime movie is edited, the duration changes. As the value of the time scale increases (as the time unit for a coordinate system gets smaller in terms of absolute time), the maximum absolute time that can be represented in a time coordinate system decreases. For example, if a time value were represented as an unsigned 16-bit integer, its maximum value would be 65,535. In a time coordinate system with a time scale of 1, the maximum time value would represent 65,535 seconds. However, in a time coordinate system with a time scale of 5, the maximum time value would correspond to 13,107 seconds. Hence, a time coordinate system’s duration is limited by its time scale. QuickTime uses 32-bit and 64-bit quantities to represent time values, so you only need to worry about attaining a maximum absolute time in situations where a time coordinate system’s duration is very long or its time scale is very large. ---------- QuickTime is long gone and AVfoundation has taken its place and I found a description of how it handles intervals which is seems to now call just timescale. https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/06_MediaRepresentations.html#//apple_ref/doc/uid/TP40010188-CH2-SW3 It has an explanation of a rationale for using 600 timescale. I considered that too for my application timescale but went with 1000 instead. Perhaps using this would avoid rounding errors. --------- CMTime <https://developer.apple.com/documentation/coremedia/cmtime> is a C structure that represents time as a rational number, with a numerator (an int64_t value), and a denominator (an int32_t timescale). Conceptually, the timescale specifies the fraction of a second each unit in the numerator occupies. Thus if the timescale is 4, each unit represents a quarter of a second; if the timescale is 10, each unit represents a tenth of a second, and so on. You frequently use a timescale of 600, because this is a multiple of several commonly used frame rates: 24 fps for film, 30 fps for NTSC (used for TV in North America and Japan), and 25 fps for PAL (used for TV in Europe). Using a timescale of 600, you can exactly represent any number of frames in these systems. In addition to a simple time value, a CMTime structure can represent nonnumeric values: +infinity, -infinity, and indefinite. It can also indicate whether the time been rounded at some point, and it maintains an epoch number. -------- I tried looking for references for WMV I wasn’t able to find anything. I am sure as Curry says each media framework uses different terminology so I was probably not finding the right terms. Regards, Martin Koob > On Feb 18, 2020, at 5:58 PM, Curry Kenworthy via use-livecode > <use-livecode@lists.runrev.com> wrote: > > > In your own case (Paul) luckily there is probably very little cause for > concern - because your files have other context available, allowing us to > either convert/confirm, or else entirely replace the most important interval > values. And I don't consider this difficult to tame sufficiently for > practical purposes, again in your own case. > > But as a larger issue of depending on LC intervals - yep, it's huge! Really a > stunning eye-opener to see the different values for the different files. We > should give a quick tip to all LC developers: DON'T use intervals for > permanently storing media time values. :) > > As for the original question: Given their arbitrary nature per OS/Media > framework, I actually think "interval" may be the best choice of word! An > arbitrary slice of time. Perfectly named, but utterly problematic if treated > as anything other than arbitrary and temporary. > > Best wishes, > > Curry Kenworthy > > Custom Software Development > "Better Methods, Better Results" > LiveCode Training and Consulting > http://livecodeconsulting.com/ > > _______________________________________________ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode