Skip to main content

FFmpeg based audio splitter for audio CD images supplied with CUE sheet files.

Project description

FFcuesplitter - FFmpeg based audio splitter for audio CD images supplied with .cue sheet files.

FFcuesplitter is a multi-platform CUE sheet splitter entirely based on FFmpeg. Splits big audio tracks and automatically embeds tags using the information contained in the associated "CUE" sheet. It supports many input formats (due to FFmpeg), including APE format, without need installing extra audio libs or packages. automatically support multiple CUE sheet encodings. Can be used both as a Python module (API) and in command line mode.

Features

  • It supports many input formats.
  • Supported formats to output: wav, flac, ogg, mp3.
  • Ability to copy codec without re-encoding.
  • Auto-tag from .cue file data.
  • Supports multiple .cue file encodings.
  • Works on Linux, MacOs, FreeBSD, Windows.
  • Can be used both as a Python module and in command line mode.

Requires

Usage

From Command Line

ffcuesplitter -i IMPUTFILE
             [-h] 
             [--version] 
             [-f {wav,flac,mp3,ogg,copy}] 
             [-o OUTPUTDIR]
             [-ow {ask,never,always}] 
             [--ffmpeg_cmd URL]
             [--ffmpeg_loglevel {error,warning,info,verbose,debug}]
             [--ffmpeg_add_params 'PARAMS ...'] 
             [-p {tqdm,mymet,standard}]
             [--ffprobe_cmd URL] 
             [--dry]

Examples

ffcuesplitter -i 'inputfile.cue'

To split and convert several audio formats into the relative individual flac format audio tracks.

ffcuesplitter -i '/User/music/collection/inputfile.cue' -f wav -o 'my-awesome-tracklist'

To splits the individual audio tracks into wav format and saves them in the 'my-awesome-tracklist' folder.

From Python Interpreter

>>> from ffcuesplitter.cuesplitter import FFCueSplitter

Splittings:

>>> split = FFCueSplitter(filename='/home/user/my_file.cue')
>>> split.open_cuefile()
>>> split.do_operations()

Get data tracks and FFmpeg args:

>>> data = FFCueSplitter('/home/user/other.cue', dry=True)
>>> data.open_cuefile()
>>> data.audiotracks  # trackdata
>>> data.cue.meta.data  # cd_info
>>> data.ffmpeg_arguments()

Only processing one track:

>>> f = FFCueSplitter('/home/user/my_file.cue', progress_meter='tqdm')
>>> f.open_cuefile()
>>> f.kwargs['tempdir'] = '/tmp/mytempdir'
>>> f.ffmpeg_arguments()
>>> f.processing(myfile.arguments[2], myfile.seconds[2])  # track three
>>> f.move_files_to_outputdir()

More details are described in the __doc__ strings of FFCueSplitter class or by typing help(FFCueSplitter) in the Python console, or by reading the ffcuesplitter man page.

Installation

python3 -m pip install ffcuesplitter

License and Copyright

Copyright © 2022 Gianluca Pernigotto
Author and Developer: Gianluca Pernigotto
Mail: jeanlucperni@gmail.com
License: GPL3 (see LICENSE file in the docs folder)

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

ffcuesplitter-1.0.6.tar.gz (63.9 kB view details)

Uploaded Source

Built Distribution

ffcuesplitter-1.0.6-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file ffcuesplitter-1.0.6.tar.gz.

File metadata

  • Download URL: ffcuesplitter-1.0.6.tar.gz
  • Upload date:
  • Size: 63.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/30.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.3.0 rfc3986/1.5.0 colorama/0.4.4 CPython/3.9.2

File hashes

Hashes for ffcuesplitter-1.0.6.tar.gz
Algorithm Hash digest
SHA256 ef49a5a331c5ab6f8953edac120043d6c42bce125bc0a4711d0073aa28d53c56
MD5 32ac8f81fef5b400cc2de160ea6897c6
BLAKE2b-256 976fbea9dab5c2d83955b0c04d1fe19b308b6f020efe0696052f36af6e77acd1

See more details on using hashes here.

File details

Details for the file ffcuesplitter-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: ffcuesplitter-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 32.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/30.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.3.0 rfc3986/1.5.0 colorama/0.4.4 CPython/3.9.2

File hashes

Hashes for ffcuesplitter-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f811377c501dc36311141b13b6d4a921a86303d4bc23c96df3fbf97c3576b37b
MD5 ab5f6b0baf3fede2accce31a490499cb
BLAKE2b-256 08e111efd40b8e5b7aef4ca6376d3aed883e73a4907c3ce53cd6e9120b6dd208

See more details on using hashes here.

Supported by

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