Skip to content

Releases: CPJKU/partitura

Release 1.5.0

17 Jul 17:34
76f18c1
Compare
Choose a tag to compare

Release 1.5.0

The new version of Partitura includes some exciting new features!

Some highlights include Mei export, Kern import/export, export to WAV via fluidsynth, and import of DCML tabular format.

New features

  • DCML format input in #345
  • New kern import for faster and more robust in #344
  • Barebones Kern export in #344
  • MEI export in #347 and #351
  • Estimate symbolic durations update in #352
  • New harmony classes and checks for Roman numerals, Chord Symbols, Cadences and Phrases in #345
  • Intervals as partitura classes in #345
  • transposition of parts in #345
  • Export wav with fluidsynth #353

Other Changes

  • improved documentation
  • improved typing
  • New tests
  • optional dependency of pandas

Release 1.4.1

25 Oct 12:28
8812ca6
Compare
Choose a tag to compare

Bug Fixes

  • remove unnecessary escape character for correct parsing of sharp accidentals in nakamura match files.
  • don't consider the propriety doc_order for sorting notes in the matchfile_from_alignment function if it is not present. This propriety is only present in parts from musicxml scores and previously resulted in an exception for other score formats. This solves #326
  • during matchfile parsing, voice info is now parsed as follows: If there is no voice info, all notes get assigned voice number 1. If there is only voice info for the solo voice, the non-solo voiced notes get voice 2. If multiple notes have different voices, but not every note has a voice annotated, those with voice annotation get the annotated voice number and those without voice annotation get assigned the max voice+1 voice number. Previously all notes were assigned to voice 1 if there were any None voiced note
  • during matchfile parsing, all note classes are now matched correctly. Previously classes MatchSnoteTrailingScore and MatchSnoteNoPlayedNote were always marked as MatchSnoteDeletion and MatchHammerBounceNote, MatchTrailingPlayedNote, MatchTrillNote always ended up as MatchInsertionNote. This solves #286
  • during matchfile parsing, lines which can't be parsed are removed. Before they ended up as None in the output.

Release 1.4.0

26 Sep 08:47
ef67b95
Compare
Choose a tag to compare

New Features

  • new class for performed notes
  • minimal unfolding for part
  • updated Musescore parser for version 4
  • load_score auto-selects parser based on file type
  • new attributes for Score object for capturing meta information
  • new score note attributes in matchfile export (grace, voice_overlap)
  • new tempo_indication score property line in matchfile export

Bug Fixes

Other Changes

  • new unit test for cross-staff beaming for musicxml

Version 1.3.1

07 Jul 09:30
81d1884
Compare
Choose a tag to compare

New Features

  • (Partial) match note ID validation.
  • Normalization module and (partial) normalization defaults for note and performance features.

Bug Fixes

  • Fixed bug: #289
  • Fixed bug: #277
  • Fixed bug: #275
  • Fixed several bugs of fixed-size note feature array extraction: #270, #271, #272
  • Fixed bug: #269

Other Changes

  • Encoding of Dynamic Score Markings in note feature arrays changed to a simple ramp from 0 to 1, starting at the start position of the marking and ending at the end.
  • Refactor all alignment-related processing to performance_codec.

Release 1.3.0

10 Jun 09:50
2f20289
Compare
Choose a tag to compare

New Release 1.3.0 (new features)

This PR addresses release 1.3.0, it includes several bug fixes, code cleaning, documentation, and new functionality.

New Features

  • Enhanced Performance features in the same fashion as the note features. Use:
    partitura.musicanalysis.make_performance_features(score, performance, alignment, feature_functions);
  • Fixed-size option for Note features. Use:
    partitura.musicanalysis.make_note_features(score, force_fixed_size=True)
  • Create a score from a note array functionality. Call:
    partitura.musicanalysis.note_array_to_score(note_array);

New Optional Features

  • If music21 is installed : Import music21 to Partitura by calling partitura.load_music21(m21_score)
  • If MidiTok is installed : Export Partitura Score to Tokens by calling partitura.utils.music.tokenize(score_data, tokenizer)

Bug Fixes

Other Changes

  • Minor Changes to the Documentation
  • Addition of Docs link to the GitHub header
  • Upgraded Python version requirements to Python>= 3.7

Release 1.2.2

10 May 15:56
9834601
Compare
Choose a tag to compare

New features

  • slicing performed parts
  • roman numeral analysis
  • harmony class for part and export
  • staff with custom number of lines
  • transposition by intervals

Bug fixes

  • file naming bug in load_musicxml()
  • fixed bug in score part unfolding
  • bugfix for fine, ritenuto parsing and unfolding
  • bugfix for performance codec

Other changes

  • Improved documentation
  • Added contributing file

Release 1.2.1

09 Feb 11:42
Compare
Choose a tag to compare

Release date: 2023-02-09

This is an minor update with bug fixes.

Bug fixes

Release 1.2.0

01 Dec 18:26
aa4e2d6
Compare
Choose a tag to compare

Release date: 2022-12-01

This is an update with new features including I/O support of the newly released match file format version 1.0.0 (and all prior versions).

New features

  • Load and save alignments, performances, and scores stored in match files (.match) of all available versions
  • Support for mei loading via verovio (if installed)
  • PerformedPart notes store timing information in both ticks and seconds
  • Support for pitch class piano rolls
  • New MIDI time conversion functions

Bug fixes

  • Fix render via musescore (if installed)
  • Fix bug slowing down musicxml export
  • Fix consecutive tie bug in kern import
  • Gracefully handle slur mismatch in kern import
  • Fix metrical position flag in note arrays
  • Fix in MEI import and handling multiple staff groups inside the main staffGroup
  • Fix measure map for single measure parts

Other changes

Release 1.1.1

04 Nov 16:47
730e5a5
Compare
Choose a tag to compare

New features:

  • New minor feature : Adding midi pitch to freq for synthesizer add reference-based midi pitch to freq #163

Bug fixes:

  • Documentation Fix of ReadTheDocs
  • Bug fix Bug synthesizing scores with pickup measures #166 Synthesizing score with pick up measure
  • Bug Fix of kern import Kern import fix #160
  • Bug Fix of Musicxml import repeat infer Bug with musicxml Import #161
  • Bug fix Note array with empty voice Note array from note list with empty voice bug. #159
  • Fix synthesizing scores with pickup measures #167

Other changes:

  • Encoding declaration on all files.
  • Renaming master branch as main

1.1.0

05 Oct 06:52
5844ece
Compare
Choose a tag to compare

Release 1.1.0

Release date: 2022-10-04

This is a major update with some new features including sonification of score and performance, and meter estimation

New features

  • User can sonify performance and score using simple additive synthesis (exports wav using scipy);
  • Meter estimation method in music analysis using Automatic extraction of
    tempo and beat from expressive performances.
    Simon Dixon (2001).

Bug fixes

  • Unified method of importing and exporting scores and performance.

Other changes

  • Documentation has been updated with notebook tutorial on ReadTheDocs and outdated usage was removed;
  • Added Code of conduct to header;
  • Pytorch is added as an optional dependency for performance_codec encode to combine with onsetwise_to_notewise and notewise_to_onsetwise functions.