Aller au contenu
Tous les projets
AudioMeta app icon

AudioMeta Python

  • PyPI package version
  • Total PyPI downloads (all time, via Pepy)
  • Supported Python versions on PyPI
  • GitHub stars for BehindTheMusicTree/audiometa
Actif et disponible

A powerful, unified Python library for reading and writing audio metadata across multiple formats (ID3v1, ID3v2, Vorbis, RIFF).

When you work with audio files, consistent tags make search, playlists, and rights a lot less painful. AudioMeta Python is open source: use it in your own projects, read the code, open issues, and send patches like any community-maintained library. It focuses on predictable read/write across common container and tag schemes—whether you run it from the shell, a script, or your own service—so ID3, Vorbis comments, and RIFF INFO stay approachable without every tool reinventing the same edge cases in private.

Demos rapides

Code snippets

Short examples from the project README, with illustrative output (not run in the browser). See the repository for real validation, formats, and the full API.

Library — full read (unified + technical + headers)

from audiometa import get_full_metadata, UnifiedMetadataKey

full_metadata = get_full_metadata(
    "bohemian_rhapsody.mp3",
    include_headers=True,
    include_technical=True,
    include_raw_binary_data=False,
)

um = full_metadata["unified_metadata"]
print("Title:", um.get(UnifiedMetadataKey.TITLE))
print("Artists:", um.get(UnifiedMetadataKey.ARTISTS))

tech = full_metadata["technical_info"]
print("Duration (s):", tech["duration_seconds"])
print("Bitrate (bps):", tech["bitrate_bps"])
print("Sample rate (Hz):", tech["sample_rate_hz"])
print("Channels:", tech["channels"])
print("File size (bytes):", tech["file_size_bytes"])

id3 = full_metadata["headers"]["id3v2"]
print("ID3v2 present:", id3["present"], "version:", id3.get("version"))

Example output

Title: Bohemian Rhapsody
Artists: ['Queen']
Duration (s): 354.00
Bitrate (bps): 320000
Sample rate (Hz): 44100
Channels: 2
File size (bytes): 14160000
ID3v2 present: True version: (2, 4, 0)

CLI — install, full read, write

pip install audiometa-python
audiometa read bohemian_rhapsody.mp3 --format yaml
audiometa write bohemian_rhapsody.mp3 --title "Bohemian Rhapsody (Remastered)" --artist "Queen"

Example output

Successfully installed audiometa-python.

unified_metadata:
  title: Bohemian Rhapsody
  artists:
    - Queen
  album: A Night at the Opera
technical_info:
  duration_seconds: 354.00
  bitrate_bps: 320000
  sample_rate_hz: 44100
  channels: 2
  file_size_bytes: 14160000
headers:
  id3v2:
    present: true
    version: [2, 4, 0]

Metadata updated for bohemian_rhapsody.mp3

Full README on GitHub

Pour qui

Python developers integrating tag read/write in apps, scripts, or services—and anyone who prefers the terminal: the audiometa CLI covers inspect and edit flows without writing Python.

Fonctionnalites principales

  • Reading and writing audio metadata across multiple formats
  • ID3v1, ID3v2, Vorbis, and RIFF support
  • Use from scripts, services, or alongside the browser demo

Browser UI for the same metadata workflows: AudioMeta Webapp.

Documentation technique

L'installation, les API, l'architecture et les workflows de contribution sont documentes dans les README de chaque depot (et ressources liees). Cette page se concentre sur l'histoire produit et sa place dans l'ecosysteme.