Merge lp://qastaging/~vrince/mixxx/waveform-2.0_pure-gl into lp://qastaging/~mixxxdevelopers/mixxx/trunk

Proposed by Thomas Vincent
Status: Merged
Merged at revision: 3167
Proposed branch: lp://qastaging/~vrince/mixxx/waveform-2.0_pure-gl
Merge into: lp://qastaging/~mixxxdevelopers/mixxx/trunk
Diff against target: 3454 lines (+1509/-1139)
39 files modified
mixxx/build/depends.py (+12/-3)
mixxx/res/skins/Deere1280x800-WXGA/skin.xml (+10/-448)
mixxx/src/engine/cuecontrol.cpp (+0/-2)
mixxx/src/engine/cuecontrol.h (+2/-0)
mixxx/src/skin/legacyskinparser.cpp (+2/-3)
mixxx/src/waveform/renderers/glslwaveformrenderersignal.cpp (+21/-7)
mixxx/src/waveform/renderers/glslwaveformrenderersignal.h (+4/-8)
mixxx/src/waveform/renderers/glwaveformrendererfilteredsignal.cpp (+177/-324)
mixxx/src/waveform/renderers/glwaveformrendererfilteredsignal.h (+4/-34)
mixxx/src/waveform/renderers/glwaveformrenderersimplesignal.cpp (+120/-185)
mixxx/src/waveform/renderers/glwaveformrenderersimplesignal.h (+4/-21)
mixxx/src/waveform/renderers/qtwaveformrendererfilteredsignal.cpp (+346/-0)
mixxx/src/waveform/renderers/qtwaveformrendererfilteredsignal.h (+36/-0)
mixxx/src/waveform/renderers/qtwaveformrenderersimplesignal.cpp (+223/-0)
mixxx/src/waveform/renderers/qtwaveformrenderersimplesignal.h (+31/-0)
mixxx/src/waveform/renderers/waveformmark.cpp (+0/-4)
mixxx/src/waveform/renderers/waveformrendererendoftrack.cpp (+4/-0)
mixxx/src/waveform/renderers/waveformrendererfilteredsignal.cpp (+107/-34)
mixxx/src/waveform/renderers/waveformrendererfilteredsignal.h (+7/-12)
mixxx/src/waveform/renderers/waveformrenderersignalbase.cpp (+83/-0)
mixxx/src/waveform/renderers/waveformrenderersignalbase.h (+38/-0)
mixxx/src/waveform/renderers/waveformrendermark.cpp (+43/-5)
mixxx/src/waveform/renderers/waveformrendermark.h (+1/-0)
mixxx/src/waveform/renderers/waveformwidgetrenderer.cpp (+9/-3)
mixxx/src/waveform/renderers/waveformwidgetrenderer.h (+1/-1)
mixxx/src/waveform/waveformwidgetfactory.cpp (+31/-23)
mixxx/src/waveform/widgets/glsimplewaveformwidget.cpp (+2/-6)
mixxx/src/waveform/widgets/glsimplewaveformwidget.h (+0/-3)
mixxx/src/waveform/widgets/glslwaveformwidget.cpp (+4/-4)
mixxx/src/waveform/widgets/glslwaveformwidget.h (+1/-1)
mixxx/src/waveform/widgets/glwaveformwidget.cpp (+3/-2)
mixxx/src/waveform/widgets/qtsimplewaveformwidget.cpp (+57/-0)
mixxx/src/waveform/widgets/qtsimplewaveformwidget.h (+30/-0)
mixxx/src/waveform/widgets/qtwaveformwidget.cpp (+56/-0)
mixxx/src/waveform/widgets/qtwaveformwidget.h (+30/-0)
mixxx/src/waveform/widgets/softwarewaveformwidget.cpp (+3/-2)
mixxx/src/waveform/widgets/softwarewaveformwidget.h (+1/-1)
mixxx/src/waveform/widgets/waveformwidgettype.h (+3/-1)
mixxx/src/widget/wwaveformviewer.cpp (+3/-2)
To merge this branch: bzr merge lp://qastaging/~vrince/mixxx/waveform-2.0_pure-gl
Reviewer Review Type Date Requested Status
RJ Skerry-Ryan Pending
Review via email: mp+105570@code.qastaging.launchpad.net

Description of the change

Add pure OpenGL line-based waveform to get back 1.10 rendering performances and try to make 1.11 usable.
Fix end of track for track not long enougth.

To post a comment you must log in.
Revision history for this message
Albert Santoni (gamegod) wrote :

Hey Thomas,

Have you considered using display lists or VBOs for the waveform
instead of immediate mode? I expect that would give you a fairly
significant drop in CPU usage. (Maybe you're already using VBOs for
the GLSL code?)

Thanks,
Albert

Revision history for this message
Thomas Vincent (vrince) wrote :

In GLSL version I don't even need VBO, waveform data is stored in a
texture. But we can switch to VBO.
For the pure-gl version I wanted to make a version that work for any
configure even old ones (Opengl < 1.5).
But of course we can test if ARB_vertex_buffer_object is available and
send data in a continuous chunk.
Should be faster and CPU depend should decrease.
Tom

2012/5/13 Albert Santoni <email address hidden>:
> Hey Thomas,
>
> Have you considered using display lists or VBOs for the waveform
> instead of immediate mode? I expect that would give you a fairly
> significant drop in CPU usage. (Maybe you're already using VBOs for
> the GLSL code?)
>
> Thanks,
> Albert
>
> --
> https://code.launchpad.net/~vrince/mixxx/waveform-2.0_pure-gl/+merge/105570
> You are the owner of lp:~vrince/mixxx/waveform-2.0_pure-gl.

2787. By Thomas Vincent

Add central waveform axe (and 'AxesColor' in skin) in all waveform renderer. Line is display under the signal.
Use 'AxesColor' to draw vertical line too.

2788. By Thomas Vincent

Some comments

2789. By Thomas Vincent

Waveform interactive zoom in accessible everywhere in the waveform viewer

2790. By Thomas Vincent

Add DefaulMark support (see example in <visual> of Deere1280x800 skin)
Add protection again multiple declaration of hotcue in skin

2791. By Thomas Vincent

Change defaul zoom to 3 (33%)
Fix zoom propagation of wavfeom type change

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.