Skip to main content

FL Studio project file parser

Project description


PyFLP is an unofficial parser for FL Studio project and preset files written in Python.

CI Documentation Build Status pre-commit-ci
PyPI PyPI - Package Version PyPI - Supported Python Versions PyPI - Supported Implementations PyPI - Wheel
Activity Maintenance PyPI - Downloads
QA codecov CodeFactor Grade Checked with mypy pre-commit Security Status
Other License GitHub top language Code Style: Black covenant

From a very general point-of-view, this is the state of what is currently implemented. Click on a link to go to the documentation for that feature.

Group Feature Issues
open arrangement-general issues closed arrangement-general issues
🎼 Playlist open arrangement-playlist issues closed arrangement-playlist issues
🎞️ Tracks open arrangement-track issues closed arrangement-track issues
Channel Rack
open channel-general issues closed channel-general issues
📈 Automations open channel-automation issues closed channel-automation issues
🎹 Instruments channel-instrument issues closed channel-instrument issues
📚 Layer open channel-layer issues closed channel-layer issues
📁 Sampler open channel-sampler issues closed channel-sampler issues
open mixer-general issues closed mixer-general issues
🎚️ Inserts open mixer-insert issues closed mixer-insert issues
🎰 Effect slots open mixer-slot issues closed mixer-slot issues
🎶 Patterns
open pattern-general issues closed pattern-general issues
🎛 Controllers open pattern-controller issues closed pattern-controller issues
🎵 Notes open pattern-note issues closed pattern-note issues
🚩 Timemarkers open timemarker issues closed timemarker issues
Plugins Native - 8 effects, 1 synth open plugin-native issues closed plugin-native issues
VST 2/3 plugin-3rdparty issues closed plugin-3rdparty issues
Project - Settings and song metadata open project-general issues closed project-general issues

⏬ Installation

CPython 3.8+ / PyPy 3.8+ required.

python -m pip install -U pyflp

▶ Usage

Load a project file:

import pyflp
project = pyflp.parse("/path/to/parse.flp")

If you get any sort of errors or warnings while doing this, please open an issue.

Save the project:, "/path/to/save.flp")

It is advised to do a backup of your projects before doing any changes. It is also recommended to open the modified project in FL Studio to ensure that it works as intended.

Check the reference for a complete list of useable features.

🙏 Acknowledgements

✨ Contributors

All Contributors

Thanks goes to these wonderful people:




🐛 📖


📖 💻 🚧

This project follows the all-contributors specification. Contributions of any kind are welcome!

Please see the contributor's guide for more information about contributing.

📧 Contact

You can contact me either via issues and discussions or through email via demberto(at)proton(dot)me.

© License

The code in this project has been licensed under the GNU Public License v3.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyflp-2.2.0.tar.gz (1.5 MB view hashes)

Uploaded source

Built Distribution

pyflp-2.2.0-py3-none-any.whl (79.1 kB view hashes)

Uploaded py3

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