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
Ubuntu users can install required dependencies like this:
sudo apt install ffmpeg python3-chardet python3-tqdm
Usage
From Command Line
ffcuesplitter -i IMPUTFILE
[-h]
[--version]
[-f {wav,flac,mp3,ogg,copy}]
[-o OUTPUTDIR]
[-ow {ask,never,always}]
[--ffmpeg_url URL]
[--ffmpeg_loglevel {error,warning,info,verbose,debug}]
[--ffmpeg_add_params 'PARAMS ...']
[-p {tqdm,mymet,standard}]
[--ffprobe_url 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ffcuesplitter-1.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 42c1423a844601cf4a52f6fd469857b73f00d79378263efe446d97428d696195 |
|
MD5 | cbfaf3dc7368446390531e3e0f423b15 |
|
BLAKE2b-256 | 272f3f16dc3c79da59d02623bb1ff7a498f7d3d56a9645c2b41bbe0ff5ec66aa |