GUI lag with hidden waveforms in Tango & Deere, using integrated Intel graphics

Bug #1758660 reported by Takeshi Soejima on 2018-03-25
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Mixxx
2.1
Medium
ronso0
2.2
Medium
ronso0

Bug Description

Scrolling and tabbing of the library list become too slow when waveform is hidden on Tango. It seems that symptons are the same as what MK-42 have reported at https://github.com/mixxxdj/mixxx/pull/1512

* my linux laptop (intel i5 1.8G, intel HD 4000) --> slowdown, except not using GL or GLSL for waveform type, or using "skin.xml" reverted before the commit "Tango: load waveforms as Singleton, display it with zero height below decks 1/2 to allow end-of-track warning when waveforms in splitter are hidden" contained in Pull #1512.

* my linux desktop (intel i3 2.6G, radeon HD 6459) --> no slowdown

Mixxx (current Master 2018-3-25) is build on my desktop (Debian GNU/Linux 9 stretch).

Depends: libasound2 (>= 1.0.16), libc6 (>= 2.22), libchromaprint1 (>= 1.3.2), libflac8 (>= 1.3.0), libgcc1 (>= 1:3.0), libgl1-mesa-glx | libgl1, libglib2.0-0 (>= 2.12.0), libglu1-mesa | libglu1, libhidapi-libusb0 (>= 0.8.0~rc1+git20140201.3a66d4e+dfsg), libid3tag0 (>= 0.15.1b), libmad0 (>= 0.15.1b-3), libogg0 (>= 1.0rc3), libopus0 (>= 1.1), libopusfile0 (>= 0.5), libportaudio2 (>= 19+svn20101113), libportmidi0, libprotobuf-lite10, libqt4-dbus (>= 4:4.5.3), libqt4-network (>= 4:4.5.3), libqt4-opengl (>= 4:4.6.1), libqt4-script (>= 4:4.7.0~beta1), libqt4-scripttools (>= 4:4.5.3), libqt4-sql (>= 4:4.5.3), libqt4-svg (>= 4:4.5.3), libqt4-test (>= 4:4.5.3), libqt4-xml (>= 4:4.5.3), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.8.0), librubberband2, libshout3, libsndfile1 (>= 1.0.20), libsoundtouch1 (>= 1.9.2), libsqlite3-0 (>= 3.5.9), libstdc++6 (>= 5.2), libtag1v5 (>= 1.11), libupower-glib3 (>= 0.99.0), libusb-1.0-0 (>= 2:1.0.8), libvamp-hostsdk3v5, libvamp-sdk2v5, libvorbis0a (>= 1.2.3), libvorbisenc2 (>= 1.1.2), libvorbisfile3 (>= 1.1.2), libx11-6, libqt4-xmlpatterns, libqt4-sql-sqlite

ronso0 (ronso0) wrote :

Thanks for reporting this.
On ubuntu studio 14.04 using a rt kernel I don't have any issues, and no change of CPU usage when toggling waveforms (RGB GL).

You use debian, so please test an official beta build (.deb) from the repository just to exclude any compiler/source-related issue.
If the issue persist, please check out the other skins, i.e. drag the waveform/deck splitter to zero in LateNight or Deere.
Also try to drag the unmaximized window up (keep Alt pressed and drag with mouse pointer) so that the waveforms are out of sight.

Takeshi Soejima (sohet) wrote :

> You use debian, so please test an official beta build (.deb) from the repository just to exclude any compiler/source-related issue.

It is a bit difficult to install the offical builds to Debian Stretch because of the dependencies. Stretch is devoid of librubberband2v5. But librubberband2 (1.8.1-7) seems to be compatible with it, I forced to install mixxx-2.1.0-beta1-2.1-git6574-release-zesty-amd64.deb to my laptop.

> If the issue persist,

yes,

> please check out the other skins,

Deere suffers as the same way, but LateNight doesn't,

> Also try to drag the unmaximized window up

slowdown as before.

ronso0 (ronso0) wrote :

I could reproduce this with an Thinkpad which also has an Intel graphics card.

Changed in mixxx:
status: New → Confirmed
ronso0 (ronso0) on 2018-06-03
summary: - Slowdown scrolling library when waveform is hidden on Tango
+ GUI lag with hidden waveforms in Tango & Deere, using integrated Intel
+ graphics
ronso0 (ronso0) wrote :

I don't know how to fix this in C++, but I tried a hack. Please test if the lag still occurs with the two skins attached.
Just extract them to your skins directory, see https://www.mixxx.org/wiki/doku.php/creating_skins#skin_faq

ronso0 (ronso0) wrote :
Takeshi Soejima (sohet) wrote :

I confirm that Tango-waveform-framerate-fix avoids GUI lag of my laptop when waveforms are hidden. The lag remains when waveforms are out of sight by dragging, but I never do so on play.

ronso0 (ronso0) wrote :

Great! Could you do me a favour and test the attached Deere-waveform-framerate-fix, too?
choose Deere, enable 'Stacked waveforms', drag the splitter up so that the waveforms appear collapsed

ronso0 (ronso0) wrote :

Additionally, can you confirm that 'end-of-track' warnings still show up in the track overview?

Takeshi Soejima (sohet) wrote :

> Additionally, can you confirm that 'end-of-track' warnings still show up in the track overview?

I can see it!

> Could you do me a favour and test the attached Deere-waveform-framerate-fix, too?

Where is Deere-waveform-framerate-fix?

ronso0 (ronso0) wrote :

Deere-waveform-framerate-fix is in post #4
https://bugs.launchpad.net/mixxx/+bug/1758660/comments/4

ronso0 (ronso0) wrote :

fixes for affected skins are in https://github.com/mixxxdj/mixxx/pull/1704
Please test.

Takeshi Soejima (sohet) wrote :

> Deere-waveform-framerate-fix is in post #4

Sorry for overlooking it.

> Could you do me a favour and test the attached Deere-waveform-framerate-fix, too?

I also confirm that the lag dissapears with Deere-waveform-framerate-fix on my laptop.

ronso0 (ronso0) wrote :

Great, thank you!

ronso0 (ronso0) on 2018-06-07
Changed in mixxx:
assignee: nobody → ronso0 (ronso0)
ronso0 (ronso0) wrote :

Is this bug still poping up with 2.2-alpha or master respectively?

Takeshi Soejima (sohet) wrote :

I have tested master before https://github.com/mixxxdj/mixxx/pull/1704 (12 Jun), and 2.2-alpha today (13 Sep). Both lacks the lag on my linux laptop.

RJ Skerry-Ryan (rryan) wrote :

Based on PR discussions, it sounds like we're not merging this in 2.1.x and it's fixed in 2.2.x?

Changed in mixxx:
importance: Undecided → Medium
status: Confirmed → Fix Committed
no longer affects: mixxx
Changed in mixxx:
assignee: nobody → ronso0 (ronso0)
status: New → Fix Committed
importance: Undecided → Medium
tags: added: wave
tags: added: waveform
removed: wave
ronso0 (ronso0) wrote :

@RJ This is correct.
I confirm it now works perfectly in 2.2 with an Intel Thinkpad where it lagged before.

For a WontFix, the milestone is good documentation for when we WontFix'ed
it. It doesn't hurt to have WontFix/Invalid/etc. bugs in an old milestone.

On Wed, Oct 31, 2018 at 5:26 PM Daniel Schürmann <email address hidden>
wrote:

> ** Changed in: mixxx/2.1
> Milestone: 2.1.5 => None
>
> --
> You received this bug notification because you are a member of Mixxx
> Development Team, which is subscribed to Mixxx.
> https://bugs.launchpad.net/bugs/1758660
>
> Title:
> GUI lag with hidden waveforms in Tango & Deere, using integrated Intel
> graphics
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/mixxx/+bug/1758660/+subscriptions
>

no longer affects: mixxx
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers