Skip to main content

Lightweight CUE sheet toolkit for Python

Project description

CueTools

PyPI version License Python
Coverage Status Tests

Lightweight CUE sheet toolkit for Python
Parsing Cue Sheets (.cue files) into Pydantic data models and validating fields
Serialising data models into Cue Sheets (.cue files)

Note: This is an independent Python library. The name cuetools reflects the purpose of the library (handling CUE files) and is not intended to imply any association with other projects of the same name.

Features

  • Parse .cue files into Pydantic models with built-in validation
  • Generate .cue file content from data
  • Simple and intuitive API like json standard library
  • Lightweight — no external dependencies other than Pydantic
  • Fully type-annotated — compatible with MyPy
  • Supports Python 3.10+

Changes

For a full list of updates, see the CHANGELOG.

Note: Version 1.0.0 includes breaking changes and is not backward compatible with earlier versions, please review the CHANGELOG.

Cue Sheet specification

QuickStart

Installation of the library

Via pip

pip install cuetools

Via poetry

poetry add cuetools

Using of the library

import cuetools

cue_string = """
FILE "track01.flac" WAVE
  TRACK 01 AUDIO
    TITLE "Intro"
    PERFORMER "Artist"
    INDEX 01 00:00:00
"""

cue_sheet = cuetools.loads(cue_string) 
#cue_sheet is instance of AlbumData class with parsed cue_string

track = cue_sheet.tracks[0]
#track is instance of TrackData class with parsed track data

print(track.file)      # Result: track01.flac
print(track.title)     # Result: Intro
print(track.performer) # Result: Artist
print(track.index00.string) # Result: 00:00:00

License

MIT

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

cuetools-1.0.2.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cuetools-1.0.2-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file cuetools-1.0.2.tar.gz.

File metadata

  • Download URL: cuetools-1.0.2.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.19 Linux/6.11.0-1018-azure

File hashes

Hashes for cuetools-1.0.2.tar.gz
Algorithm Hash digest
SHA256 68b7b2a6bc3f98de49e372acdbc9ee164e3b68638c1f6c454d3905c8fa162c07
MD5 c74005e4d1dea4c31918c4a603236a71
BLAKE2b-256 02969ebd656ccfd0b84816bbe71d52181c60e7b44279cb9acf34d76f343ec9cf

See more details on using hashes here.

File details

Details for the file cuetools-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: cuetools-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.19 Linux/6.11.0-1018-azure

File hashes

Hashes for cuetools-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 420ed22593ef8d2369154654f538d900ba1a4b5e9b34f21b076a053042090958
MD5 f0bf55f71c174b121ae8c343985db69a
BLAKE2b-256 4b63823f71b892e8f10812a504ed6e551ee0dacb2939042371ad56456ea89768

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