Files
lmms/include
regulus79 2db75bd5d9 Fix Sample Clips Getting Out of Sync (#8183)
Fixes #8182

When #7454 was merged, the frameOffset variable inside Song::PlayPos which kept track of the actual frame position which the song was playing at relative to the last tick, was moved to Timeline. In the process, the type was inadvertently changed from float to f_cnt_t.

This caused the frame offset to be truncated ever time it was updated in Song::processNextBuffer, causing the song playback to slowly drift back ever so slightly, just a handful of frames every bar. This caused any new sample clips spawned to be created slightly late, becoming out of sync with any existing playing samples.

This PR fixes the issue by reverting the frameOffset variable type to be float again, allowing it to track sub-sample offsets over time.
2025-12-29 09:29:19 -05:00
..
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2025-10-20 22:20:01 -04:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2024-08-11 12:20:02 +02:00
2025-11-03 11:58:15 -06:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2023-11-11 18:09:38 -05:00
2025-11-03 11:58:15 -06:00
2025-11-03 11:58:15 -06:00
2023-11-19 00:44:15 -05:00
2025-06-15 14:41:23 -04:00
2025-11-03 11:58:15 -06:00
2023-08-24 19:16:02 +01:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2025-08-14 10:08:04 -04:00
2023-01-05 17:58:49 -05:00
2025-11-03 11:58:15 -06:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2023-08-24 19:16:02 +01:00
2023-01-05 17:58:49 -05:00
2025-03-20 01:30:29 -04:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2025-11-03 11:58:15 -06:00
2025-11-03 11:58:15 -06:00
2023-09-28 20:23:35 -04:00
2025-11-03 11:58:15 -06:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2008-07-22 11:36:50 +00:00
2023-01-05 17:58:49 -05:00
2023-11-19 00:44:15 -05:00
2025-10-20 22:20:01 -04:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2025-10-20 22:20:01 -04:00
2025-06-08 20:15:16 -04:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2024-07-08 23:02:49 +02:00
2023-08-24 19:16:02 +01:00
2023-01-05 17:58:49 -05:00
2025-11-03 11:58:15 -06:00
2023-01-05 17:58:49 -05:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-08-24 19:16:02 +01:00
2023-08-24 19:16:02 +01:00
2023-07-22 23:03:31 +02:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-06-02 22:17:03 +02:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2025-10-20 22:20:01 -04:00
2024-06-01 12:09:47 +02:00
2023-01-05 17:58:49 -05:00
2023-11-19 00:44:15 -05:00
2023-01-05 17:58:49 -05:00
2024-02-25 13:49:56 -05:00
2025-11-03 11:58:15 -06:00
2024-07-08 23:02:49 +02:00
2023-01-05 17:58:49 -05:00
2023-08-24 19:16:02 +01:00
2025-10-20 22:20:01 -04:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2025-10-20 22:20:01 -04:00
2023-07-16 14:11:24 +02:00
2023-01-05 17:58:49 -05:00
2025-11-03 11:58:15 -06:00
2023-01-05 17:58:49 -05:00
2023-08-24 19:16:02 +01:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2023-01-05 17:58:49 -05:00
2024-02-25 13:49:56 -05:00