Merge lp://qastaging/~mixxxdevelopers/mixxx/features_trackbeats into lp://qastaging/~mixxxdevelopers/mixxx/trunk

Proposed by Phillip Whelan
Status: Superseded
Proposed branch: lp://qastaging/~mixxxdevelopers/mixxx/features_trackbeats
Merge into: lp://qastaging/~mixxxdevelopers/mixxx/trunk
Diff against target: 793 lines (+451/-23)
12 files modified
mixxx/build/depends.py (+1/-0)
mixxx/res/schema.xml (+8/-0)
mixxx/src/analyserbpm.cpp (+25/-0)
mixxx/src/analyserbpm.h (+1/-0)
mixxx/src/library/dao/trackdao.cpp (+53/-9)
mixxx/src/library/trackcollection.cpp (+1/-1)
mixxx/src/trackbeats.cpp (+235/-0)
mixxx/src/trackbeats.h (+53/-0)
mixxx/src/trackinfoobject.cpp (+16/-0)
mixxx/src/trackinfoobject.h (+12/-0)
mixxx/src/waveform/waveformrenderbeat.cpp (+41/-13)
mixxx/src/waveform/waveformrenderbeat.h (+5/-0)
To merge this branch: bzr merge lp://qastaging/~mixxxdevelopers/mixxx/features_trackbeats
Reviewer Review Type Date Requested Status
Mixxx Development Team Pending
Review via email: mp+47143@code.qastaging.launchpad.net

This proposal has been superseded by a proposal from 2011-02-04.

Description of the change

This branch adds the TrackBeats data type for tracking beats as sample offsets. This version uses SoundTouch to derive the beats. A future version will work with aubio, possibly only in the Analyse pane.

To post a comment you must log in.
2527. By Phillip Whelan

Adding a method to TrackBeats for ascertaining if a sample range has a beat. Wishlist #699971.

2528. By Phillip Whelan

Minor fixes to TrackBeats: pass samples/seconds QLists by reference and fix the parameter names for hasBeatsSamples.

2529. By Phillip Whelan

FIX: get waveformrenderbeat to use the samples QList from TrackBeats by reference.

2530. By Phillip Whelan

FIX: get TrackBeatsPointer to correctly work and have it be freed automatically, just as it should.

2531. By Phillip Whelan

FIX: change setTrackBeats call in AnalyserBPM.

2532. By Phillip Whelan

Cleaning up the order of TrackBeats and creating the few remaining Seconds equivalent functions.

2533. By Phillip Whelan

Commenting of functions and addition of the last seconds equivalent functions. Also adding removeBeatSample function and it's seconds equivalent.

2534. By Phillip Whelan

Removing unecessary white space.

2535. By Phillip Whelan

Tweaks to adding and removing samples.

2536. By RJ Skerry-Ryan

Add Beats abstract interface with a BeatGrid implementation.

2537. By RJ Skerry-Ryan

Tighten up the Beats/BeatGrid interface a little bit. Add a reimplementation of TrackBeats as BeatMatrix

2538. By RJ Skerry-Ryan

Remove TrackBeats. Change TIO, Analyser, and Waveform to use Beats generic interface instead. Add versioned serialization to TrackDAO. Move creation/destruction of the Beats variants into a BeatFactory class. Most awesome class name, ever.

2539. By RJ Skerry-Ryan

Fix lack of deletion of RenderObjects in WaveformRenderer

2540. By RJ Skerry-Ryan

Add destructor traces for TIO. Delete the WaveformRenderer.

2541. By RJ Skerry-Ryan

Tracks are no longer being deleted. Turning on deletion print in TrackDAO. Clear the track cache when TrackDAO is destroyed.

2542. By RJ Skerry-Ryan

Fix SQL statement that got munged by a merge.

2543. By RJ Skerry-Ryan

Rephrase :wavesummaryhex binding to match :beats

2544. By RJ Skerry-Ryan

Doh. Forgot to add BeatFactory files

2545. By Phillip Whelan

FIX: error in ternary syntax.

2546. By Phillip Whelan

FIX: generate BeatGrid if we do not have a beatgrid but we have detected the BPM of the song already.

2547. By Phillip Whelan

Various changes will bring the new Beats classes into feature parity with the
old trackbeats code.

  * beatfactory.cpp: include beatgrid.h and beatmatrix.h because forward
                     declaration proved to not be enough.
  * beats.h, beatgrid.h, beatmatrix.h: adding findNthBeat method.
  * beatgrid.cpp: many changes and fixes, including adding findNthBeat.
      - implement findNthBeat. calculate the beat using m_dFirstBeat.
      - reimplement findPrevBeat and findNextBeat using findNthBeat.
      - replace all other beat calculations with calls to findNextBeat.
  * beatmatrix.cpp:
      - implement findNthBeat.
      - reimplement findPrevBeat and findNextBeat using findNthBeat.

2548. By RJ Skerry-Ryan

Add language to beats.h that makes clear the behavior of findNextBeat and findPrevBeat when dSamples refers to the location of a beat.

2549. By RJ Skerry-Ryan

BeatMatrix::findNthBeat fixes for going in the negative direction. Changed variable from offset to n and updated comments to reflect that.

2550. By RJ Skerry-Ryan

Fixup BeatGrid::findNextBeat a little bit. It wasn't doing the previous direction correctly.

2551. By RJ Skerry-Ryan

Add some parameter checks to BeatGrid.

2552. By RJ Skerry-Ryan

Move BeatGrid legacy check from AnalyserBpm to TrackDAO so that any track loaded from DB will get a BeatGrid if it does not have one already and already has a BPM (or if the file metadata has a stored BPM)

2553. By Phillip Whelan

Merging from trunk.

2554. By RJ Skerry-Ryan

Move beat-related classes to track/

2555. By Phillip Whelan

Merging from Repository.

2556. By Phillip Whelan

Use a struct for (de)serializing the beat, for beatgrid, from the database.

2557. By Phillip Whelan

Undo application of SSE3 patch (not the time nor the place for it).

2558. By Phillip Whelan

Make the QByteArray argument to readByteArray and both Beat classes a const.

2559. By Albert Santoni

Rename struct to BeatGridData and fixed QByteArray pointer leak in TrackDAO.

2560. By Albert Santoni

Merge from trunk

2561. By Albert Santoni

Merge from trunk

2562. By Phillip Whelan

FIX: change track beats code to use sample offsets instead of frame offsets. this way the code fits in with the rest of the codebase.

2563. By Phillip Whelan

Comments for beatgrid units, contributed by Albert Santoni.

2564. By Phillip Whelan

Change beatgrid to serialize in frame offsets but use sample offsets at runtime.

2565. By Phillip Whelan

Cleaning up some cruft left over from earlier shift to using sample offsets at runtime.

Unmerged revisions

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.

Subscribers

People subscribed via source and target branches