Metadata-Version: 2.4
Name: eyeD3
Version: 0.9.9
Summary: Python audio data toolkit (ID3 and MP3)
Author-email: Travis Shirk <travis@pobox.com>
Project-URL: homepage, https://eyed3.readthedocs.io/
Project-URL: repository, https://github.com/nicfit/eyeD3
Keywords: id3,mp3,python
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: Topic :: Multimedia :: Sound/Audio :: Editors
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Intended Audience :: Developers
Classifier: Operating System :: POSIX
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: <4.0,>=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: AUTHORS.rst
Requires-Dist: filetype>=1.2.0
Requires-Dist: deprecation>=2.1.0
Provides-Extra: yaml-plugin
Requires-Dist: PyYAML>=6.0.2; extra == "yaml-plugin"
Provides-Extra: art-plugin
Requires-Dist: Pillow>=11.3.0; extra == "art-plugin"
Requires-Dist: pylast>=5.5.0; extra == "art-plugin"
Requires-Dist: requests>=2.32.4; extra == "art-plugin"
Provides-Extra: test
Requires-Dist: pytest>=8.3.5; extra == "test"
Requires-Dist: coverage>=7.8.0; extra == "test"
Requires-Dist: tox>=4.25.0; extra == "test"
Requires-Dist: factory-boy>=3.3.3; extra == "test"
Requires-Dist: pytest-cov>=6.1.1; extra == "test"
Requires-Dist: check-manifest>=0.50; extra == "test"
Requires-Dist: flake8>=7.2.0; extra == "test"
Provides-Extra: dev
Requires-Dist: twine>=6.1.0; extra == "dev"
Requires-Dist: Sphinx>=7.4.7; extra == "dev"
Requires-Dist: sphinx-rtd-theme>=3.0.2; extra == "dev"
Requires-Dist: sphinx-issues>=5.0.1; extra == "dev"
Requires-Dist: cogapp>=3.5; extra == "dev"
Requires-Dist: Paver>=1.3.4; extra == "dev"
Requires-Dist: nicfit-py[cookiecutter]>=0.8.7; extra == "dev"
Requires-Dist: regarding>=0.2.0; extra == "dev"
Dynamic: license-file

Status
------
.. image:: https://img.shields.io/pypi/v/eyeD3.svg
   :target: https://pypi.python.org/pypi/eyeD3/
   :alt: Latest Version
.. image:: https://img.shields.io/pypi/l/eyeD3.svg
   :target: https://pypi.python.org/pypi/eyeD3/
   :alt: License
.. image:: https://img.shields.io/pypi/pyversions/eyeD3.svg
   :target: https://pypi.python.org/pypi/eyeD3/
   :alt: Supported Python versions
.. image:: https://img.shields.io/pypi/dm/eyeD3?style=plastic&label=PyPI%20Downloads
   :target: https://pypi.org/project/eyeD3/
   :alt: PyPI - Downloads
.. image:: https://img.shields.io/github/downloads/nicfit/eyeD3/total?style=plastic&label=GitHub%20Downloads
   :target: https://github.com/nicfit/eyeD3/releases
   :alt: GitHub Downloads (all assets, all releases)
.. image:: https://img.shields.io/github/stars/nicfit/eyeD3?style=plastic&label=GitHub%20Stars
   :target: https://github.com/nicfit/eyeD3/stargazers
   :alt: GitHub Repo stars


About
-----
eyeD3_ is a Python tool for working with audio files, specifically MP3 files
containing ID3_ metadata (i.e. song info).

It provides a command-line tool (``eyeD3``) and a Python library
(``import eyed3``) that can be used to write your own applications or
plugins that are callable from the command-line tool.

For example, to set some song information in an mp3 file called
``song.mp3``::

  $ eyeD3 -a Integrity -A "Humanity Is The Devil" -t "Hollow" -n 2 song.mp3

With this command we've set the artist (``-a/--artist``), album
(``-A/--album``), title (``-t/--title``), and track number
(``-n/--track-num``) properties in the ID3 tag of the file. This is the
standard interface that eyeD3 has always had in the past, therefore it
is also the default plugin when no other is specified.

The results of this command can be seen by running the ``eyeD3`` with no
options.

::

  $ eyeD3 song.mp3
  song.mp3	[ 3.06 MB ]
  -------------------------------------------------------------------------
  ID3 v2.4:
  title: Hollow
  artist: Integrity
  album: Humanity Is The Devil
  album artist: None
  track: 2
  -------------------------------------------------------------------------

The same can be accomplished using Python.

::

  import eyed3

  audiofile = eyed3.load("song.mp3")
  audiofile.tag.artist = "Token Entry"
  audiofile.tag.album = "Free For All Comp LP"
  audiofile.tag.album_artist = "Various Artists"
  audiofile.tag.title = "The Edge"
  audiofile.tag.track_num = 3

  audiofile.tag.save()

eyeD3_ is written and maintained by `Travis Shirk`_ and is licensed under
version 3 of the GPL_.

Features
--------

* Python package (`import eyed3`) for writing applications and plugins.
* `eyeD3` : Command-line tool driver script that supports plugins.
* Easy ID3 editing/viewing of audio metadata from the command-line.
* Plugins for: Tag to string formatting (display), album fixing (fixup),
  cover art downloading (art), collection stats (stats),
  and json/yaml/jabber/nfo output formats, and more included.
* Support for ID3 versions 1.x, 2.2 (read-only), 2.3, and 2.4.
* Support for the MP3 audio format exposing details such as play time, bit
  rate, sampling frequency, etc.
* Abstract design allowing future support for different audio formats and
  metadata containers.

Get Started
-----------

Python >= 3.10 is required.

For `installation instructions`_ or more complete `documentation`_ see
https://eyed3.readthedocs.io/

Please post feedback and/or defects on the `issue tracker`_, or `mailing list`_.

.. _eyeD3: https://eyed3.readthedocs.io/
.. _Travis Shirk: travis@pobox.com
.. _issue tracker: https://github.com/nicfit/eyeD3/issues
.. _mailing list: https://groups.google.com/forum/?fromgroups#!forum/eyed3-users
.. _installation instructions: https://eyed3.readthedocs.io/en/latest/installation.html
.. _documentation: https://eyed3.readthedocs.io/
.. _GPL: http://www.gnu.org/licenses/gpl-2.0.html
.. _ID3: http://id3.org/

