Changelog¶
Version 4.4 (2022-03-09)¶
BREAKING: remove empty segments in Timeline.__init__
BREAKING: Timeline.extent() returns Segment(0.0, 0.0) for empty timelines
feat: add “duration” option to Annotation.discretize
fix: handle various corner cases in 1D pdist and cdist
fix: fix documentation of {Timeline | Annotation}.__bool__
test: check robustness to Segment.set_precision
Version 4.3 (2021-10-11)¶
feat: add support for visualizing 3D SlidingWindowFeatures (#66)
feat: add Annotation.discretize (#65)
Version 4.2.1 (2021-09-27)¶
fix: fix automatic deployment of documentation
Version 4.2 (2021-09-24)¶
feat: add Segment.set_precision to automatically round start/end timestamps (@kimdwkimdw)
feat: add methods {Timeline|Annotation}.{extrude|get_overlap} (@hadware)
feat: add support for Segment in one_hot_encoding
feat: make notebook visualization support an optional installation via the [notebook] extra_requires (@hadware)
setup: add [doc] and [testing] extra_requires (@hadware)
fix: several type annotation fixes (@kimdwkimdw, @PaulLerner)
Version 4.1 (2020-05-27)¶
feat: add “must_link_method” option to “pool” clustering
Version 4.0 (2020-05-15)¶
feat: add support for cannot/must link constraints in “pool” clustering
BREAKING: make one_hot_encoding return SlidingWindowFeature with labels
feat: add “labels” optional attribute to SlidingWindowFeature
Version 3.7.1 (2020-03-23)¶
fix: fix corner case in pyannote.core.utils.numpy.one_hot_encoding
Version 3.7 (2020-03-21)¶
feat: add new method SlidingWindowFeature.align
Version 3.6 (2020-03-03)¶
feat: add collar argument to Timeline.support (@nryant)
feat: add new method Timeline.covers (@PaulLerner)
fix: check for spaces before writing with RTTM or UEM format (@PaulLerner)
improve: speed up Annotation.{from_df | from_json} (@nryant)
Version 3.5 (2020-01-23)¶
feat: add align_last option to SlidingWindow.__call__
Version 3.4 (2020-01-21)¶
feat: add SlidingWindow.__call__ to slide over a specific support
feat: add pyannote.core.utils.random
Version 3.3 (2020-01-08)¶
BREAKING: remove pyannote.core.Scores
fix: fix legend corner case with empty Annotation instances
fix: fix {Timeline|Annotation}.crop with overlapping segments in support
Version 3.2.2 (2020-01-06)¶
fix: fix Segment.__bool__ return type
Version 3.2 (2019-12-13)¶
feat: add type hints (@hadware)
chore: Python3-ize code base (@hadware)
Version 3.1.10 (2019-12-12)¶
feat: add Annotation.write_rttm and Timeline.write_uem (@PaulLerner)
feat: add numpy interface to SlidingWindowFeature (experimental)
feat: setup continuous integration
improve: speed up SlidingWindowFeature plotting
doc: update notebooks to Python 3 (@PaulLerner)
BREAKING: remove deprecated Segment.pretty()
Version 3.0 (2019-06-24)¶
BREAKING: Annotation.__mul__ now returns np.ndarray instance
BREAKING: remove Annotation methods (that were deprecated version 1.0)
BREAKING: Scores.retrack has been renamed rename_tracks
improve: remove six and xarray dependencies
BREAKING: remove pyannote.core.time module
Version 2.2.2 (2019-04-18)¶
improve: speed-up several `
- Segment` methods
improve: decrease one_hot_encoding memory usage
feat: add support for “fixed” option in all cropping modes
setup: switch to scipy 1.1
Version 2.1 (2019-01-17)¶
feat: add basic implementation of Chinese Whispers clustering
feat: add “utils.hierarchy.fcluster_auto” parameter-free “fcluster”
Version 2.0.3 (2018-11-23)¶
BREAKING: move pyannote.core.util to pyannote.core.utils.generators
BREAKING: remove support for Python 2
feat: add one_hot_{encoding | decoding} functions
feat: add get_class_by_name utiltiy function
feat: add custom pdist and cdist
feat: add custom hierachical clustering “linkage” function
setup: add scipy dependency
Version 1.4.1 (2018-09-13)¶
feat: add unit tests for feature cropping
fix: fix out-of-bounds feature cropping
Version 1.4 (2018-07-09)¶
feat: expose SlidingWindow.closest_frame
Version 1.3.2 (2018-06-12)¶
feat: add support for multi-dimensional SlidingWindowFeatures
setup: switch to sortedcontainers 2.x
fix: update SWF.crop docstring
chore: remove support for “segment” option in Annotation.argmax
Version 1.3.1 (2017-12-14)¶
feat: add “return_ranges” option to SlidingWindow.crop
improve: faster SlidingWindowFeature.crop
fix: fix documentation
Version 1.2 (2017-10-05)¶
BREAKING: remove all things “Transcription”
feat: add return_data parameter to SlidingWindowFeature.crop (SWF)
feat: add support for len(SWF)
feat: add ylim parameter to plot_feature
fix: fix corner case where notebook.crop is larger than SWF extent
Version 1.1 (2017-09-19)¶
feat: make iterators out of SlidingWindowFeature instances
improve: make Annotation.__mul__ (much) faster
Version 1.0.5 (2017-09-13)¶
fix: make iterators out of SlidingWindow instances
Version 1.0.4 (2017-07-18)¶
fix: add missing import
fix: fix corner case in Timeline.crop_iter
Version 1.0.2 (2017-07-15)¶
fix: use Timeline.support() instead of .coverage()
Version 1.0.1 (2017-07-04)¶
improve: switch from banyan to sortedcontainers
feat: add Timeline.{remove|discard|overlapping_iter} methods
BREAKING: Timeline.__init__ now raises ValueError in case of empty segment
BREAKING: Timeline.crop now raises ValueError for bad mode
BREAKING: rename “mapping” arguments to “returns_mapping” in Timeline.crop
test: add more tests
Version 0.13.3 (2017-06-29)¶
fix: fix SlidingWindowFeature.iterfeatures()
Version 0.13.2 (2017-03-29)¶
setup: add dependencies for notebook visualization
Version 0.13.1 (2017-02-20)¶
fix: fix Annotation.rename_labels
Version 0.13 (2017-02-05)¶
improve: faster Annotation.subset and Annotation.rename_labels
Version 0.12.1 (2017-30-01)¶
fix: fix Annotation.uri setter
Version 0.12 (2017-29-01)¶
feat: add Timeline.to_annotation()
Version 0.11.1 (2017-25-01)¶
fix: fix (deprecated) “smooth” method
Version 0.11 (2017-24-01)¶
feat: add (Sphinx-based) documentation
chore: move sample notebooks to /notebook
feat: add unit tests
BREAKING: rename some Timeline and Annotation methods
Version 0.10 (2017-18-01)¶
feat: add ‘copy’ parameter to Annotation.{label|get}_timeline()
improve: speed-up Timeline.extent()
chore: move tests at root directory
chore: remove support for Unknown labels
Version 0.9 (2017-01-17)¶
improve: speed up Timeline and Annotation
Version 0.8 (2016-11-05)¶
feat: add “copy” option to Annotation.update
Version 0.7.3 (2016-11-01)¶
feat: SlidingWindowFeature notebook display
Version 0.7.2 (2016-07-12)¶
feat: new SlidingWindow.{samples|crop} methods
feat: new ‘mode’ parameter to SlidingWindowFeature.crop method
doc: updated notebooks for SlidingWindow and SlidingWindowFeature
Version 0.6.6 (2016-06-23)¶
fix: force internal timeline update after copy
Version 0.6.5 (2016-06-13)¶
BREAKING: make segmentToRange deterministic wrt. segment duration
Version 0.6.4 (2016-06-06)¶
fix: Python 3 support in pyannote.core.features
Version 0.6.3 (2016-03-29)¶
setup: versioneer 0.15
Version 0.6.1 (2016-03-20)¶
fix: prevent adding empty segments in Annotation and Scores
Version 0.6 (2016-02-25)¶
BREAKING: pyannote.core.json.{load|dump} expects file handles
feat: load_from, dump_to
Version 0.5.2 (2016-02-19)¶
feat: Annotation * Annotation returns cooccurrence matrix
fix: Annotation.itertracks would raise a UnicodeDecodeError in some cases
Version 0.5.1 (2016-02-17)¶
improve: notebook display
improve: Annotation.anonymize_{tracks|labels} no longer use Unknown instances
improve: empty segments are now printed as “[]”
Version 0.4.7 (2016-02-04)¶
feat: deterministic order in Annotation.co_iter
fix: LabelMatrix.argmax corner case
setup: update dependencies
Version 0.4.4 (2015-11-02)¶
feat: Travis continuous integration
Version 0.4.3 (2015-10-28)¶
fix: Python 2/3 notebook representations
fix: bug in Scores with integer-values segments
Version 0.4.1 (2015-10-27)¶
fix: update Scores.from_df to pandas 0.17
Version 0.4 (2015-10-26)¶
feat: Python 3 support
feat: pytest test suite
fix: Annotation comparison
fix: deterministic order in Annotation.itertracks
Version 0.3.6 (2015-05-06)¶
feat: LabelMatrix save/load methods
Version 0.3.4 (2015-03-04)¶
fix: MAJOR bug in Annotation lazy-update
Version 0.3.3 (2015-02-27)¶
fix: Scores IPython display
Version 0.3.1 (2015-01-26)¶
feat: new Annotation.update method
improve: Annotation.subset support for any label iterable
Version 0.3 (2014-12-04)¶
refactor: rewrote Scores internals
setup: use pandas 0.15.1+
Version 0.2.5 (2014-11-21)¶
setup: use pyannote-banyan 0.1.6
Version 0.2.4 (2014-11-18)¶
fix: extent of empty Timeline
Version 0.2.3 (2014-11-14)¶
fix: force revert to pandas 0.13.1 for Scores to work again…
Version 0.2.2 (2014-11-12)¶
setup: use banyan 0.1.5.1 from GitHub
Version 0.2.1 (2014-10-30)¶
feat: pyannote/core Docker image
feat(Timeline): add from_df constructor
Version 0.2 (2014-10-24)¶
breaking change: new PyAnnote JSON format
Version 0.1 (2014-08-05)¶
fix(Transcription): fix potential edge/key conflict during alignment
Version 0.0.5 (2014-07-23)¶
feat(SlidingWindow): add durationToSamples (and vice-versa)
fix(Transcription): fix loading from JSON
fix(Transcription): fix cropping corner cases
docs: add installation instruction for IPython display support
docs(Scores): add IPython documentation for Scores
Version 0.0.3 (2014-06-02)¶
feat(Annotation): add ‘collar’ param to .smooth()
refactor(Annotation): remove support for >> operator
maintain(Mapping): remove label mapping data structure
feat(LabelMatrix): add IPython display
improve(LabelMatrix): 10x faster cooccurrence matrix
feat(Scores): add IPython display
feat(Transcription): add edge timerange prediction
feat(Transcription): add node temporal sort
fix(Transcription): make label_timeline return a copy
fix(Transcription): fix IPython display
docs(Transcription): add IPython documentation for Transcription
Version 0.0.2 (2014-05-06)¶
feat: Transcription data structure (annotation graph)
Version 0.0.1 (2014-05-02)¶
first public version