🎵 Audio Splitter

Python 3.8+ FFmpeg License: GPLv3 Docker

Split audio files into tracks using a flexible tracklist format.

A powerful command‑line tool that reads a tracklist (with timestamps) and splits an audio file into individual tracks. Supports multiple audio/video containers, metadata writing, and fully customisable input/output formats.


📖 Documentation

Full documentation – including all CLI options, tracklist formats, deployment guides, and architecture details – is available in the Wiki.

✨ Features

  • Flexible tracklist parsing – Define your own format with placeholders (%ts, %tn, %an, %al, %date, %ext)
  • Timestamp support – Handle both start-only (00:00) and start:end (00:00-01:30) timestamps
  • Multiple stream support – Preserve audio, video, and subtitle streams (or drop them selectively)
  • Metadata writing – Write title, artist, album, date, track, and comment to output files
  • Custom output filenames – Define your own naming template using placeholders (%an-%tn.%ext)
  • Character replacement – Replace problematic filename characters with a custom character
  • Dry‑run mode – Preview parsed tracks without splitting
  • Skip existing files – Avoid overwriting already‑extracted tracks
  • Delete original – Optionally remove the input file after successful splitting
  • Docker image – Run without installing dependencies; simple one‑line commands

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

For bug reports or feature requests, please open an issue.


📄 License

Distributed under the GNU General Public License v3 (or later). See the LICENSE file for more details.


🙏 Acknowledgements

  • FFmpeg – the powerhouse behind audio processing
  • Python – the language that makes it all possible
  • gosu – privilege dropping for Docker

📬 Contact

Maintainer: Maxim Vershinin Project Link: https://git.vmn.su/max/audio_splitter

S
Description
No description provided
Readme GPL-3.0 10 MiB
Languages
Python 57.1%
TypeScript 38.7%
Dockerfile 2.7%
Shell 1%
HTML 0.3%
Other 0.2%