Skip to main content

A easy wrapper for mutagen

Project description

http://img.shields.io/pypi/v/phrydy.svg https://travis-ci.org/Josef-Friedrich/phrydy.svg?branch=master

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-1.2.4.tar.gz (41.6 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: phrydy-1.2.4.tar.gz
  • Upload date:
  • Size: 41.6 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.3

File hashes

Hashes for phrydy-1.2.4.tar.gz
Algorithm Hash digest
SHA256 83393c5b5be35e258dc63f84f2bea3341f22d5d27695b5df36dcd31f4b88f872
MD5 67428127bb30c9f7250681a1e4b36139
BLAKE2b-256 4e95b3846ad94a7e2c46251088d58f8ba9f7b92e734624589f8c32212f228d8c

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