GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - LDPF/LDPF-Examples: Examples for LDPF (Lua GUI for DISTRHO Plugin Framework)

BranchesTags
Open more actions menu

Latest commit

 

History

15 Commits
15 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
dpf @ 4d6774f
dpf @ 4d6774f
 
 
ldpf @ 31bd05e
ldpf @ 31bd05e
 
 
plugins
plugins
 
 
thirdparty
thirdparty
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
config.mk
config.mk
 
 

Repository files navigation

LDPF - Lua GUI for DISTRHO Plugin Framework

build status

LDPF is an extension for DPF (DISTRHO Plugin Framework) that makes it possible to implement the GUI of audio plugins using the Lua scripting language.

This repository contains example plugins and demonstrates the usage of LDPF.

  • ldpf-example01 mute/unmute plugin using LPugl Gui with the Cairo backend.
  • ldpf-example02 mute/unmute plugin using LPugl Gui with lua-nanovg for rendering to the OpenGL backend.
  • ldpf-example03 mute/unmute plugin demonstrating simple lwtk widgets using ldpfgui.

The first two examples are using the very low level basic ldpf api. The third example uses the more comfortable ldpfgui api which is a wrapper around the low level ldpf api and is an extension to lwtk (Lua Widget Toolkit).

Introduction

The example plugins have been tested under Linux, Windows and MacOS. However LDPF is still work in progress and not every possible functionality is implemented and/or tested yet.

To build the examples plugins you need typical GNU build tools e.g. C-Compiler and GNU-Make. Windows build has been tested using MSYS2. For MacOS brew has been used.

  • Checkout the repository:

    $ git clone --recurse-submodules [email protected]:LDPF/LDPF-Examples.git
  • For Windows and MacOS: Download source code for additional required components:

    $ cd LDPF-Examples
    $ make download-components

    This downloads source code for the components that are needed for the plugins that are listed in the toplevel Makefile.

    The plugins will be statically linked to these components. For Windows and MacOS these components include Cairo and related libraries (pixman, libpng and zlib). For Linux these libraries are taken from the system installation, i.e. the plugins are linked dynamically to these libraries.

    All possible components have to be listed in config.mk, but only the components that are needed for the plugins listed in the toplevel Makefile are downloaded. This is calculated from the listed dependencies in files called info.mk in each plugin's/component's directory.

    The needed component's source code is downloaded to the directory thirdparty/$COMPONENT_NAME. The download for a component is skipped if this directory already exists. Some components don't need a download (e.g. ldpfgui has its source code included; lpugl_cairo and lpugl_openl are sharing the source code with component lpugl).

    The source code for components that are required for all three platforms are already contained as git submodules in the thirdparty directory.

  • Build the plugins. You may use the -jN option to speed up build time by using N processes in parallel, e.g.

    $ make -j4
  • As with normal DPF plugins the build results are in the directory ./bin

About

Examples for LDPF (Lua GUI for DISTRHO Plugin Framework)

Topics

dpflinux-audiolv2lv2-pluginvst

Resources

Readme
License
Activity
Custom properties

Stars

5 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.