]> git.sesse.net Git - vlc/blobdiff - modules/audio_output/audiotrack.c
postproc: reduce lock contention in callback
[vlc] / modules / audio_output / audiotrack.c
index 125a201c1d19a4550c4eaa0544241519f41b9e84..7b16cdda4a4665a16f71d5bc0851df6f059d05ac 100644 (file)
@@ -206,19 +206,17 @@ static int TimeGet(audio_output_t *p_aout, mtime_t *restrict delay)
     if (p_sys->at_getRenderPosition(&hal, &dsp, MUSIC))
         return -1;
 
-    hal = (uint32_t)((uint64_t)hal * p_sys->rate / 44100);
-
     if (p_sys->samples_written == 0) {
-        p_sys->initial = hal;
+        p_sys->initial = dsp;
         return -1;
     }
 
-    hal -= p_sys->initial;
-    if (hal == 0)
+    dsp -= p_sys->initial;
+    if (dsp == 0)
         return -1;
 
     if (delay)
-        *delay = ((mtime_t)p_sys->samples_written - hal) * CLOCK_FREQ / p_sys->rate;
+        *delay = ((mtime_t)p_sys->samples_written - dsp) * CLOCK_FREQ / p_sys->rate;
 
     return 0;
 }