mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 06:44:57 +01:00
Timecode: fix subframe rounding
if sub-frames are used, frames are rounded up for the later half of a sub-frame. e.g. @48KSPS, 25fps, 100 subframes per frame audio-samples >=1910 already yield 00:00:00:01
This commit is contained in:
parent
976fc86811
commit
f5c52f500a
1 changed files with 2 additions and 2 deletions
|
|
@ -806,7 +806,7 @@ sample_to_timecode (
|
|||
double timecode_frames_fraction;
|
||||
int64_t timecode_frames_left;
|
||||
const double frames_per_timecode_frame = sample_frame_rate / timecode_frames_per_second;
|
||||
const int64_t frames_per_hour = (int32_t)(3600 * rint(timecode_frames_per_second) * frames_per_timecode_frame);
|
||||
const int64_t frames_per_hour = (int64_t)(3600 * rint(timecode_frames_per_second) * frames_per_timecode_frame);
|
||||
|
||||
timecode.hours = offset_sample / frames_per_hour;
|
||||
|
||||
|
|
@ -818,7 +818,7 @@ sample_to_timecode (
|
|||
timecode.subframes = (int32_t) rint(timecode_frames_fraction * subframes_per_frame);
|
||||
timecode_frames_left = (int64_t) floor (timecode_frames_left_exact);
|
||||
|
||||
if (timecode.subframes == subframes_per_frame) {
|
||||
if (use_subframes && timecode.subframes == subframes_per_frame) {
|
||||
timecode_frames_left++;
|
||||
timecode.subframes = 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue