Warning
FL Studio 2024 or earlier is requried. This tool does not support project files made in FL Studio 2025 or higher.
This tool can be used to slice BMS samples and copy note data from the stems of a song using FL Studio. Mostly as an alternative to woslicerII.
Future version may include MIDI-support with some extra steps.
⚠️ Installation will be simpler in the future using PIP or an optional installer which includes a GUI tool
- Install Python 3.10 (later versions are not supported by pyflp 2.2.1)
- Install ffmpeg and make sure it's accessible from a terminal
- Clone the repo using git or download and extract the source code and navigate to the folder in a terminal
- Optionally create and activate a virtual environment
- Install packages using pip
$ pip install -r requirements.txt
- Export stems for your finished and mixed track by separating every sound that should be keysounded
- Create a new project and add your stems to each track
⚠️ You can also create a new arrangement in your song's project file, but the tool might encounter problems when loading it. The tool uses the current arrangement used when saving by default - Use the slice tool to slice every stem and delete silent parts
⚠️ The tool currently doesn't support trimming silence, so you're encouraged to do it manually in the project file - Optionally optimise your exported samples by re-using slices for your stems. Use this for repeated patterns/loops and percussion
- Enable every track you want to include as keysounds
🗣️ You can disable tracks for stems that you may want to keep in the background. This is useful if you've exceeded the limit of samples you can use in a BMS file. Simply move them to a disabled track, or disable the track entirely
- Save the file
Here's what your project file should look like. All stems in this one are enabled and will be exported by default.
Run the tool with a path to the FLP:
$ python3 -m flpslicer path/to/project.flp
The exported stems will be saved to the same folder as the FLP file. See Parameters for alternatives.
You can copy and paste the note data output into iBMSC-derived editors. See Parameters for alternatives.
Add the --output parameter to export the files to a different folder:
$ python3 -m flpslicer path/to/.flp -o bms-samples
Add --to-file to save the note data to a file, such as clipboard.txt
$ python3 -m flpslicer path/to/.flp --to-file clipboard.txt
If your samples can't be accessed using their original path (in case you're using WSL like I did), use --samples-dir to point to a folder where the original samples are located:
$ python3 -m flpslicer path/to/.flp --samples-dir flp-samples
For other parameters, use the tool with --help:
$ python3 -m flpslicer --help
