/pyFLAC

Real-time lossless audio compression in Python

Primary LanguageCApache License 2.0Apache-2.0

https://raw.githubusercontent.com/sonos/pyFLAC/develop/assets/logo-white-background.jpg https://readthedocs.org/projects/pyflac/badge https://img.shields.io/pypi/pyversions/pyFLAC

A simple Pythonic interface for libFLAC.

FLAC stands for Free Lossless Audio Codec, an audio format similar to MP3, but lossless, meaning that audio is compressed in FLAC without any loss in quality. This is similar to how Zip works, except with FLAC you will get much better compression because it is designed specifically for audio.

pyFLAC allows you to encode and decode raw audio data directly to/from a file, or in real-time using callbacks.

Installation

You can use pip to download and install the latest release with a single command.

pip3 install pyflac

Note

pyFLAC depends on libsndfile, which requires an extra install step on Linux distributions. See the SoundFile documentation for more information.

Supported platforms

  • macOS (Intel/Apple Silicon)
  • Linux (x86_64/arm64)
  • RPi Zero/2/3/4
  • Windows 8/10/11

CLI

pyFLAC comes bundled with a command line tool to quickly convert between WAV and FLAC files. For more information, print the help info.

pyflac --help

Note

If you didn't install pyFLAC globally then the command line tool will not be installed on your PATH. However you should still be able to access the tool with python3 -m pyflac.