Reading latency

Hello everyone.

I’ve found some tutorials on how to set recording latency… although I didn’t get to the end.

But that’s not the latency I want to control.
What I want is to synchronize the position of the cursor on the waveform of the track being listened to and the signal emitted by the speakers.

Is this possible, and how?

Thanks in advance.
Best regards,
André Blanquer

By default, Audacity has a 100ms output buffer. This means that any signal to the speakers will be delayed by 100ms.

If you are using Bluetooth, this delay will be increased, perhaps significantly.

You can change the size of Audacity’s buffer in Edit > Preferences > Audio Settings > Latency > Buffer length, but as you decrease the buffer size, the audio may tend to get choppy, depending on what else is running on your machine.

If you are using Bluetooth, all bets are off.

Thank you Jademan for your reply.

It’s not the delay in starting playback that bothers me, but the time lag between each “instant” of this playback and the “instant” indicated by the playback cursor. I’d prefer it to be of the order of zero seconds.
Is this possible? And how?

But aren’t these the same things ? To confirm this, I set the buffer length to 2000ms, then started playback. The cursor started moving immediately, but I heard no audio until 2 seconds later.

Hello from Paris, France, Jademan.

I believe I have understood that ‘Audio Settings Preferences / Latency / Buffer length’ is set by default to 100 ms, and that this value should not be lowered, as it may disrupt the analysis Audacity performs before starting playback.

I experimented with the buffer value:

  • For 2,000 ms, the playback start indeed has a 2-second delay, but the cursor scanning the waveform is significantly ahead.
  • For 0 ms, nothing starts.
  • For 15 ms, playback begins, but it’s only noise.
  • For 20 ms, playback starts with some crackling at the very beginning, then seemingly without troubles: the cursor and playback appear ‘sufficiently simultaneous.’
    I will adopt this 20 ms buffer for my clip cutting operations. I will increase this value based on any encountered issues.

This buffer seems to manage the playback-listening process and the cursor tracking on the waveform. Therefore, I would expect playback and cursor to start at the same time. This does not seem to be the case.

In summary, I observe that Audacity does not sync the moment when the cursor starts its movement on the waveform with the moment it starts playing the track. Sound processing and cursor management are separate, or at least I think so, and syncing the second with the first should be possible, even if it requires using two buffers!

To conclude, two questions:

  1. What have I misunderstood?
  2. Is it possible and feasible to make the start of playback and cursor movement simultaneous for Audacity 50.0.0 or even earlier?

Best regards.
André Blanquer

Hello Jademan

I have resumed cutting my clips, and the experience proves that the influence of the buffer value, whether it is 20 ms or 100 ms, is not entirely what I thought I saw.

I have observed that, for both mentioned buffer values, if you start playback of the same passage twice in a row, the first time the cursor and playback are offset, but they are simultaneous the second time.

This is a workaround that suits me well, even if it is only a workaround and not a clean and definitive solution. My two previous questions remain relevant.

Best ragards,
André Blanquer

I am glad you found a solution to your issue. :grinning:

So Audacity uses audio facilities provided directly by the operating system. In Windows, there are three such facilities available provided by Microsoft: MME, DirectSound, WASAPI, in order by release date. macOS provides CoreAudio which may have reduced latency.

There is a facility written by Steinberg called ASIO which can be used on WIndows in lieu of those provided by Microsoft. It has reduced latency. Most if not all professional DAWs use this ASIO package. Audacity does not ship with it solely because of licensing issues (Audacity is open source and ASIO is not). I know, it is silly - but we have to live with that at least for a while. If you want you can compile your own version of Audacity that you can use at home (or office) that includes ASIO. Instructions (and further discussions) are here: Add ASIO build feature to About dialog · Issue #5553 · audacity/audacity · GitHub, but you cannot distribute it without providing the source code, which of course is not available. (At least I think that is the restriction).

The speaker/headphones presentation is always different from the timeline/cursor? How do you edit?

I have to get rid of a lip smack in my reading. Where in that forest of blue squiggles is that smack?


Hello, Jademan

Finally, my workaround was not effective.

The issue persists: the cursor that moves along the waveform doesn’t position itself at the “intended” point but rather “quite a while” after.

If this flaw, because it is one, has not been fixed for years, I assume it’s because it’s impossible. Except for minimizing latency by compiling Audacity with ASIO. However, I don’t feel capable of undertaking this task, which also appears to circumvent the license.

But I find it hard to believe that the management of this cursor is delegated to Windows and not to this highly renowned program itself.

Please let me know if the “flaw” will persist or if the “deficiency” can be rectified by Audacity.

Best ragards,
André Blanquer

Hello Koz.
I confirm that what I hear on the speakers is an offset from the timeline/waveform cursor.
My editing work is limited to processing music clips borrowed from YouTube or the Internet Archive: I cut out excessively long beginnings and endings, adjust levels and reduce noise if it doesn’t alter the sound too much. And I record in FLAC or OGG format.
Best regards
André Blanquer

I have already answered your question in detail and I have nothing further to add.

This topic was automatically closed after 30 days. New replies are no longer allowed.