Skip to content

Releases: axelberndt/MPM-Toolbox

MPM Toolbox v0.1.7

21 Dec 13:24
Compare
Choose a tag to compare

v0.1.7

  • Little edit in method mpmToolbox.gui.score.ScoreDisplayPanel.mouseMoved() that changes the mouse cursor to hand symbol when moved to a clickable overlay element.
  • Fixed potential division-by-zero bug in mpmToolbox.gui.syncPlayer.SyncPlayer.PlaybackRunnable.run().
  • Reorganized some classes, i.e., classes Score, ScoreNote, ScorePage moved from package mpmToolbox.gui.score to package mpmToolbox.projectData.score.
  • Added "Hide Overlay" button to the score widget (classes mpmToolbox.gui.score.ScoreDocumentData and ScoreDisplayPanel) that allows to show the score without the overlays.
  • Addition to the spectrogram context menu to switch between normalized and non-normalized display.
  • New method getPart() in classes mpmToolbox.gui.msmTree.MsmTreeNode and mpmToolbox.gui.mpmTree.MpmTreeNode to retrieve the MSM part element that the node belongs to.
  • New package mpmToolbox.supplementary.avlTree that implements the AVL Tree data structure.
  • New package mpmToolbox.projectData.alignment with several new classes that serve to associate measurements in audio recordings with MSM data, display them as piano roll and interact with it.
  • Alignment data is stored in mpr project files.
  • Added class mpmToolbox.gui.audio.PianoRollPanel which is also the basis for the classes WaveformPanel and SpectrogramPanel in the same package.
  • Several optimizations when editing Performance names, adding and removing Performance or Audio objects from and to the project in order to reduce update traffic between the widgets and the re-rendering of performances for overlay display in the audio widget.
  • Added button "Align Frequencies with MIDI Pitches" to the spectrogram specs. These set the min. and max frequency of the spectrogram. Use these to align it vertically with the piano roll.
  • Added combobox and sub-class PartChooserItem to class mpmToolbox.gui.audio.AudioDocumentData to choose the musical part or select all parts to be displayed by the piano roll overlay.

MPM Toolbox v0.1.6

26 Aug 18:06
Compare
Choose a tag to compare

v0.1.6

  • Class mpmToolbox.ProjectData moved into the newly added package mpmToolbox.projectData.
  • New Class mpmToolbox.projectData.Audio. It extends the eponymous class from meico and replaces all its occurrences in the code.
  • Communication of classes mpmToolbox.gui.audio.AudioDocumentData, WaveformPanel and SpectrogramPanel has been redone.
  • The spectrogram display is now properly synchronized to the waveform display and optimized.
  • Added a GUI in the spectrogram panel to specify the parameters for the spectrogram computation.
  • Expanded the SyncPlayer's triggeredPlayback() methods to jump to specific playback positions. With this we can start playback from within the waveform and spectrogram panel (via right click).

MPM Toolbox v0.1.5

18 Aug 08:32
Compare
Choose a tag to compare

v0.1.5

  • Code simplification in class mpmToolbox.gui.syncPlayer.
  • Updated meico to v0.8.26.
  • Removed rsyntaxtextarea-3.1.1.jar from the externals. It was never used so far.
  • Class mpmToolbox.gui.msmTree.MsmTree has been expanded. It now provides its own instance of a WebDockableFrame. A simple getter method makes it easier to be used in class mpmToolbox.gui.ProjectPane. Thus, some code optimizations have been applied there.
  • New class mpmToolbox.gui.mpmTree.MpmDockableFrame has been added. This simplifies some code in class mpmToolbox.gui.ProjectPane.
  • New method toXml() in class mpmToolbox.gui.score.ScorePage. It exports the image data and concordances that are stored in MPM Toolbox's project files (.mpr).
    • The same code was previously performed by method mpmToolbox.gui.score.Score.toXml(). It has been simplified accordingly and invokes the ScorePage's toXml() now instead.
    • Two new attributes were added to the generated page element, width.pixels and height.pixels. If the page image gets replaced by another with a different resolution, the coordinates of the concordances can be scaled on this basis.
  • Added another constructor to class mpmToolbox.gui.score.ScorePage to be used by the constructor of class mpmToolbox.gui.score.Score that reads the data from a project file (.mpr). The new ScorePage constructor checks if the image resolution changed and, if so, scales the concordance coordinates accordingly.
  • Some first preparations for the audio analysis component.
    • Interactive waveform and CQT spectrogram display, incl.
      • resize,
      • zoom with mouse wheel,
      • pan by mouse drag,
      • precise mouse click to sample index mapping,
      • context menu to switch between displaying all audio channels or only one.
    • All interactions are performed synchronous on both, waveform and spectrogram. However, the spectrogram display is not yet properly aligned with the waveform!
  • Bugfix in classes mpmToolbox.ProjectData, mpmToolbox.score.Score: Path separators encoded as "\\" were replaced by File.separator to function on all operating systems. Thanks to pfefferniels for this bug report! The same "inter-OS-operability" has been added to the parsing of the .mpr project files in class ProjectData.

MPM Toolbox v0.1.4

14 Jun 08:45
Compare
Choose a tag to compare

v0.1.4

  • Double-click on MPM elements ...
    • in the MPM tree widget will immediately open its editor dialog, provided it has one. This function is added to leaf nodes only and not to nodes that expand by double click. Element distribution.list is an exception to this rule, so this functionality can also be used in the score display, see next bullet point.
    • in the score display widget does the same as the above. It immediately opens the corresponding editor dialog.
  • Bugfix: The SyncPlayer's performance chooser did not update when the MPM file is changes. This is fixed.
  • Enhancement in the score display: The zoom factor of the score image now initializes so that it matches the size of the panel.

MPM Toolbox v0.1.3

20 Apr 06:29
Compare
Choose a tag to compare

v0.1.3

  • Added new operations to map elements in the MPM tree widget. Maps can now be moved and copied from one dated environment to another - effectively to another part or global environment in the same or any other performance.
    • When copied, the ID of each map element will be changed in the copy to ensure unique IDs throughout the MPM document.
    • It is not valid to have two maps of the same type within one and the same dated environment. Hence, if the target environment has already a map of the same type as the origin map, the contents will be merged into it.
  • The same functionality is also added to individual MPM map entries.
  • Bugfix in method mpmToolbox.gui.mpmEditingTools.editDialogs.TempoEditor.edit(). When editing a tempo transition with a numeric value for transition.to the meanTempoAtwas not initialized from the source.
  • Enhancement of method mpmToolbox.gui.score.ScorePage.addEntry(). If an element to be added has no xml:id attribute, which is required to be linked to a score position, the method generates a random ID and adds the attribute to the element.
  • Layout related fix in method mpmToolbox.gui.mpmEditingTools.editDialogs.EditDialog.addIdInput() to ensure that the ID input field has a fixed width and does not break the layout.

MPM Toolbox v0.1.2

13 Apr 15:35
Compare
Choose a tag to compare

v0.1.2

  • Some refactoring in package mpmToolbox.gui.syncPlayer.
  • The SyncPlayer's MIDI output can now be streamed to any other MIDI port available on the host system. Thus, users are no longer limited to the internal Gervill synthesizer and the soundbank loaded into it.

MPM Toolbox v0.1.1

24 Mar 10:12
Compare
Choose a tag to compare

v0.1.1

  • initial release
  • PDF score import added. The pages of a PDF file are extracted and stored as PNG files with 300dpi (following the DFG Practical Guidelines on Digitisation) in a subfolder of the source directory.
  • The window title will now print the title of the currently opened project.