Skip to main content

A easy wrapper for mutagen

Project description

This package on the Python Package Index Continuous integration Documentation Status

phrydy

This package originates from the file beets/mediafile.py of the beets project.

Handles low-level interfacing for files’ tags. Wraps Mutagen to automatically detect file types and provide a unified interface for a useful subset of music files’ tags.

Installation

From Github

git clone git@github.com:Josef-Friedrich/phrydy.git
cd phrydy
python setup.py install

From PyPI

pip install phrydy
easy_install phrydy

Usage

Basic usage:

>>> from phrydy import MediaFile
>>> f = MediaFile('Lucy.mp3')
>>> f.title
u'Lucy in the Sky with Diamonds'
>>> f.artist = 'The Beatles'
>>> f.save()

List all available fields of a media file:

from phrydy import MediaFile

media_file = MediaFile('test/files/full.mp3')

for key in MediaFile.readable_fields():
    value = getattr(media_file, key)
    if key != 'art' and value:
        print('{}: {}'.format(key, value))

A field will always return a reasonable value of the correct type, even if no tag is present. If no value is available, the value will be false (e.g., zero or the empty string).

Internally MediaFile uses MediaField descriptors to access the data from the tags. In turn MediaField uses a number of StorageStyle strategies to handle format specific logic.

Development

Test

tox

Publish a new version

git tag 1.1.1
git push --tags
python setup.py sdist upload

Package documentation

The package documentation is hosted on readthedocs.

Generate the package documentation:

python setup.py build_sphinx

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phrydy-2.0.0.tar.gz (42.4 kB view details)

Uploaded Source

File details

Details for the file phrydy-2.0.0.tar.gz.

File metadata

  • Download URL: phrydy-2.0.0.tar.gz
  • Upload date:
  • Size: 42.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for phrydy-2.0.0.tar.gz
Algorithm Hash digest
SHA256 3d59f87624fbd29945c29f7cfe77afa443e6f2469a3bc244514bba64929f91fd
MD5 e12656ffcd7c87425c4b86b467fbe40c
BLAKE2b-256 af55658dd2d7df225be6cddc29dc04438517a1ace18e47ae456aaf603a9711cc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page