https://github.com/atsushieno/aap-lv2-sfizz
sfizz plugin for AAP using aap-lv2
https://github.com/atsushieno/aap-lv2-sfizz
aap aap-lv2 android audio-plugin lv2
Last synced: 4 months ago
JSON representation
sfizz plugin for AAP using aap-lv2
- Host: GitHub
- URL: https://github.com/atsushieno/aap-lv2-sfizz
- Owner: atsushieno
- License: mit
- Created: 2020-12-23T09:57:52.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-08-31T19:07:34.000Z (10 months ago)
- Last Synced: 2025-08-31T21:16:52.303Z (10 months ago)
- Topics: aap, aap-lv2, android, audio-plugin, lv2
- Language: Kotlin
- Homepage:
- Size: 206 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aap-lv2-sfizz: sfizz plugin port to AAP using aap-lv2
This repository is an example port of sfizz LV2 plugin to [Audio Plugins For Android](https://github.com/atsushieno/aap-core), using [aap-lv2](https://github.com/atsushieno/aap-lv2).
Right now there is no way to specify SFZ file from the plugin at run time. It has to be specified at build time. Take it more like a proof of concept right now.
## Building
`make` should take care of the builds. See our [GitHub Actions script](.github/workflows/actions.yml). for the normative setup.
## Hacking
You can edit `external/sfizz/lv2/sfizz.c` to alter `DEFAULT_SFZ_FILE` to any other `.sfz` file. Note that since Android 11 you have quite limited access to local storage, so you should probably just put your sfz contents as assets. It will be automatically copied into local data storage area (as there is no alternative mechanism to load sfz and audio files by other means).
Our `aap_metadata.xml` is generated by `aap-import-lv2-metadata` tool but it is done manually. So every time sfizz submodule is updated, chances are that the metadata needs to be regenerated (or manually fixed). Run `make update-metadata` to regenerate it from the latest sources (though note that the resources may be relocated; they sometimes do).
`app` directory directly references sfizz's own `CMakeLists.txt` from `build.gradle`. Though note that sfizz itself is patched at build time (by `make`).
## Licensing notice
`aap-lv2-sfizz` itself is distributed under the MIT license.
LV2 (repository for the headers) is under the ISC license.
`sfizz` is distributed under the MIT license, but it has dependencies that are under the Apache License 2.0 etc. See [the project repository](https://github.com/sfztools/sfizz) for details. As of v0.1.6, AAP Sfizz does not depend on libsndfile anymore.
`AAP Sfizz` apk bundles sample external sfz from [sfzinstruments/SplendidGrandPiano](https://github.com/sfzinstruments/SplendidGrandPiano) whose samples are Public Domain.
The entire plugin application bundles `androidaudioplugin-lv2` AAR module from `aap-lv2`, and `androidaudioplugin` AAR module, and is packaged into one application.