AudioMeta Python
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.
Démos 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.mp3Pour 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.
Fonctionnalités principales
- Reading and writing audio metadata across multiple formats
- ID3v1, ID3v2, Vorbis, and RIFF support
- Use from scripts, services, or alongside the browser demo
Projets liés
Browser UI for the same metadata workflows: AudioMeta Webapp.
Documentation technique
L'installation, les API, l'architecture et les workflows de contribution sont documentés dans les README de chaque dépôt (et ressources liées). Cette page se concentre sur l'histoire produit et sa place dans l'écosystème.