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

Une bibliothèque Python puissante et unifiée pour lire et écrire des métadonnées audio dans plusieurs formats (ID3v1, ID3v2, Vorbis, RIFF).

Quand on travaille avec des fichiers audio, des tags cohérents rendent la recherche, les playlists et la gestion des droits bien moins pénibles. AudioMeta Python est open source : utilisez-le dans vos propres projets, lisez le code, ouvrez des issues et envoyez des patchs comme pour toute bibliothèque maintenue par la communauté. Il se concentre sur une lecture/écriture prévisible à travers les schémas de conteneurs et de tags courants — que vous l'exécutiez depuis le shell, un script ou votre propre service — afin que ID3, les commentaires Vorbis et RIFF INFO restent accessibles sans que chaque outil ne réinvente les mêmes cas particuliers dans son coin.

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.mp3

Full README on GitHub

Pour qui

Développeurs Python qui intègrent la lecture/écriture de tags dans des applications, scripts ou services — et toute personne qui préfère le terminal : le CLI audiometa couvre l'inspection et l'édition sans écrire de Python.

Fonctionnalités principales

  • Lecture et écriture de métadonnées audio dans plusieurs formats
  • Support ID3v1, ID3v2, Vorbis et RIFF
  • Utilisable depuis des scripts, des services ou avec la démo dans le navigateur

Interface navigateur pour les mêmes workflows de métadonnées : 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.