skillfed

pyannote-core

Advanced data structures for handling temporal segments with attached labels

pyannote-core v6.0.1 2.7M downloads/30d#2,912 on PyPI
License unclear AGING released

What it is and what it does

pyannote.core is a library for working with temporal segments and their associated labels—the core data abstraction for speaker diarization, audio annotation, and time-based event tracking. It builds on numpy, pandas, and sortedcontainers to provide efficient handling of overlapping and non-overlapping time intervals, making it a foundation for speech processing pipelines and annotation workflows.

The package is part of the larger pyannote ecosystem and is typically used as a dependency rather than standalone. It offers both programmatic APIs for manipulating temporal data and optional Jupyter notebook visualization support. With low install friction and support for modern Python versions, it integrates readily into existing scientific Python stacks.

Use it for:

  • Build speaker diarization pipelines that track speaker identity across time intervals in audio
  • Manage time-based annotations and labels for audio or video processing workflows
  • Represent and query overlapping or adjacent temporal segments in event-driven systems
  • Visualize temporal data and segment boundaries in Jupyter notebooks for exploratory analysis
  • Integrate temporal data handling into speech processing or audio analysis frameworks

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides data structures for representing and manipulating temporal segments with labels, designed for tasks like speaker diarization and time-based annotation workflows.

Yes, if you are building speaker diarization or audio annotation systems. The package provides essential data structures for temporal segment handling and integrates well with the scientific Python ecosystem. However, verify the license status before use, and note that maintenance appears to be in a slower phase (332 days since last release)—acceptable for stable infrastructure but worth monitoring if you depend on active development.

Install

pyannote-core on PyPI

pip

pip install pyannote-core

uv

uv add pyannote-core

poetry

poetry add pyannote-core

Installing pyannote-core

Before you install

Low install friction with a pure-Python wheel distribution. Maintenance status is aging (332 days since last release), though the package has been in development since 2014 and supports current Python versions (>=3.10).

License in practice

License treatment is unclear—no SPDX identifier or raw license text is available in the package metadata. Verify the actual license before use in proprietary or restricted contexts.

Quickstart

pip install pyannote.core

import pyannote.core
# Create and work with temporal segments and labels
# See documentation for specific API usage

Requires Python >=3.10

Verify before relying

  • Actual license identifier and terms (metadata shows 'unclear' treatment)
  • Whether graphical visualization in Jupyter requires additional system dependencies beyond the [notebook] extra
  • Current maintenance status and roadmap given 332 days since last release

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — numpy, pandas, sortedcontainers
Maintenance aging — 332 days since the last release
First released
Downloads 2,740,521/month — #2,912 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyannote_core-6.0.1-py3-none-any.whl

Tags

temporal segments with labelsspeaker diarization data structurestime interval annotationlabeled timeline handlingaudio annotation frameworksegment-based timelinetemporal data structures
audio-processingtemporal-dataspeaker-diarization

More Information Analysis packages