Skip to content

Releases: axelberndt/MPM-Toolbox

MPM Toolbox v0.1.27

20 Nov 15:22
Compare
Choose a tag to compare

v0.1.27

  • Added package msmEditingTools with class MsmEditingTools to create context menu popups when right-clicking the MSM tree.
  • Right now there is only one such context menu for the MSM root node that offers to apply every sequencingMap to the affected MSM and MPM maps.
    • The sequencingMaps are then deleted from the MSM as they are no longer valid.
    • It is recommended to operate this functionality BEFORE making any entries in the graphical score as they will get lost in the process.

MPM Toolbox v0.1.26

08 May 09:31
Compare
Choose a tag to compare

v0.1.26

  • Dependency updates
    • WebLaF Core v1.2.13 to v1.2.14
    • WebLaF UI v1.2.13 to v1.2.14
    • junit Jupiter API v5.10.2
    • xstream v1.4.20

MPM Toolbox v0.1.25

21 Nov 15:29
Compare
Choose a tag to compare

v0.1.25

  • Added method init() to class mpmToolbox.projectData.ProjectData. It makes sure that a project, that is not yet stored manually to the file system, nonetheless has a default path and is able to store related data, such as audio recordings.

MPM Toolbox v0.1.24

24 Jun 14:09
Compare
Choose a tag to compare

v0.1.24

  • Meico update to v0.9.0.
  • Added an audio recorder to the SyncPlayer. The recording will be stored in the project path under the recordings subdirectory. It will also be added automatically to the project.
  • Bugfix in method mpmToolbox.gui.audio.PianoRollPanel.getContextMenu() that prevented the context menu to be created when there is no MPM in the project.
  • Addition to method mpmToolbox.gui.audio.AudioDocumentData.makePerf2AlignButton(), to generate an MPM if the project has none.
  • Added TreeSelectionListener to class mpmToolbox.gui.msmTree.MsmTree, so, when a note is clicked, it will be played even if no visual score is present.

MPM Toolbox v0.1.23

24 Feb 11:00
Compare
Choose a tag to compare

v0.1.23

  • Meico update to v0.8.48.

MPM Toolbox v0.1.22

15 Feb 14:50
Compare
Choose a tag to compare

v0.1.22

  • Added method mpmToolbox.projectData.alignment.Alignment.repositionAll().
  • Enhancement to method mpmToolbox.gui.MpmToolbox.closeProject(), when the project is closed or a new project is loaded while playback is running, the playback will now stop properly.
  • Enhanced class mpmToolbox.projectData.alignment.AbstractAlignmentComputation and updated class mpmToolbox.gui.audio.AudioDocumentData accordingly. The latter has two additional buttons to select an alignment algorithm and execute it.
    • Also class mpmToolbox.projectData.alignment.PlaceholderAligner has been added to illustrate the usage of the abstract class. This is basically a tutorial for developers who wish to integrate a new alignment method into MPM Toolbox.
    • Enhancement in class mpmToolbox.gui.audio.AudioDocumentData. Some buttons on the bottom are disabled when they are not useful, e.g. when the piano roll displays a performance instead of an audio alignment or no audio is displayed.
  • Based on the above preparations, a first fully-fledged audio-to-score alignment algorithm has been integrated with class mpmToolbox.projectData.alignment.basicPitchLcsAligner.BasicPitchLCSAligner and all related sub-classes in the same package; many thanks to Vladimir Viro from Peachnote!
  • Minor optimizations in class mpmToolbox.gui.syncPlayer.PlaybackRunnable.
  • Method mpmToolbox.projectData.alignment.Alignment.updateTimingTransformation() has been made more stable against alignments with "unreasonable" values.
  • Enhanced tempoMap visualization in class mpmToolbox.gui.audio.TempoMapPanel.
    • New class added, mpmToolbox.gui.audio.utilities.TempoMapPanelElement.
    • Added configuration attribute tempoCurveTesselation in class mpmToolbox.gui.Settings to control the draw quality of continuous tempo transitions.
    • The curve segments are now correctly scaled, also when the beatLength basis changes throughout the tempomap.
    • The tempo instructions in the visualization are fully interactive. Double click opens the editor dialog. Right click opens the same context menu as for the tempo instructions in the MPM tree widget.
    • A new operation has been added to the tempo instruction's context menu, "Replace by Continuous Transition". It removes the instruction from the tempoMap and edits the preceding tempo instruction so that the timing of the next instruction is kept intact.
    • A similar new operation is added to the context menu of tempoMap nodes in the MPM tree and as a button in the audio panel: Simplify TempoMap. It reduces monotonous and constant sequences of tempo instructions to a single continuous or constant instruction.
  • Removed the TreeSelectionListener from classes mpmToolbox.gui.msmTree.MsmTree and mpmToolbox.gui.mpmTree.MpmTree. These listeners are now created by classes mpmToolbox.gui.score.ScoreDisplayPanel and mpmToolbox.gui.audio.TempoMapPanel which do actually react on those interactions in the trees.
  • MPM Toolbox can import MIDI files with filename extensions .mid (as before) and .midi (this is new).
  • Panning and zooming in the Score tab (class mpmToolbox.gui.score.ScoreDisplayPanel) is now possible in all interaction modes without the need for holding CTRL down.

MPM Toolbox v0.1.21

14 Nov 12:42
Compare
Choose a tag to compare

v0.1.21

  • When initializing an Alignment (in the audio tab) not only will the last note be fixed but now also the first note. So wherever we start shifting notes, it will act more comprehensible now.
  • Alignment to Performance conversion now also works when no global time signature data is available. Method mpmToolbox.projectData.alignment.Alignment.exportTiming() will then use the first timeSignatureMap to be found in an MSM part and, if still nothing was found, assume beat length of a quarter note as fallback.
  • Added handling/conversions of dates if the pulses per quarter value of the MSM and the performance differ. This addresses issue 14. There are, however, still some "nitpicks" left with the TempoMap panel.
  • Added default initialization to the Timing Basis field in the Performance Editor dialog, so it matches the pulsesPerQuarter value of the MSM.
  • Added abstract class mpmToolbox.projectData.alignment.AbstractAlignmentComputation.
  • Added method getNoteSequenceInTicks() to classes mpmToolbox.projectData.alignment.Alignment and mpmToolbox.projectData.alignment.Part.
  • Complete integration of ornamentation which was added to MPM with v2.1.3.

MPM Toolbox v0.1.20

09 Sep 09:48
Compare
Choose a tag to compare

v0.1.20

  • The MIDI player of the mpmToolbox.gui.ProjectPane has been moved to class mpmToolbox.gui.MpmToolbox, so it does not have to be reinitialized when loading a new project. The same has been done with the mpmToolbox.gui.syncPlayer.SyncPlayer's MIDI player. When loading a soundfont, only the latter will change. The MSM tree's MIDI player does play only with piano sounds anyway.
  • Minor bugfix in method mpmToolbox.gui.MpmToolbox.loadFile().
  • Another minor fix in method mpmToolbox.gui.ProjectPane.setMpm(), so the SyncPlayer's list of performances no longer contains elements for a previous MPM after loading another MPM into the project.

MPM Toolbox v0.1.19

31 Aug 07:31
Compare
Choose a tag to compare

v0.1.19

  • Meico update v0.8.41.

MPM Toolbox v0.1.18

30 Aug 11:34
Compare
Choose a tag to compare

v0.1.18

  • Adaptations to meico update v0.8.40.