cklicking on the woverwiew for a now position produces audible pops

Bug #1091873 reported by Daniel Schürmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Undecided
Unassigned

Bug Description

When I click on the Woverwiew. To jump to a new position while the track is playing I can sometimes hear a pop.
The cursor seems to jump to a random position before it final jumps to the click position.
It hears like the audio output does the same.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

I put a printline in EngineBuffer::slotControlSeek and I only see one seek per click on WOverview.

Is it a full engine under-run? I.e. do you hear other tracks skip as well as the seeking track? If so then the most likely explanation is that the seek blocked the callback by locking m_engineLock in setNewPlaypos. This is fixed in the engine-control-refactor branch which prevents any thread other than the engine thread from touching EngineBuffer and gets rid of these locks.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

After some investigations, things are getting clear.
This issue are mainly two:

* Jumping cursor: It is caused by a play position update which might be delayed on a queue from before the seek.
* The pops my caused by a race condition between EngineBuffer::setNewPlaypos and EngineBuffer::process.
The are called from different threads but are both using non thread save EnginebufferScale.

Unfortunately I have no test for to proof the last one.

The attached patch is more a hack to check it out. It is on Top of Bug #1094149 patch.
But I can still hear pops with the wav from test folder.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

we now crossfade

Changed in mixxx:
status: New → Fix Committed
milestone: none → 1.12.0
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/6794

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.