Posts

Lilv 0.24.4

Lilv 0.24.4 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Don't attempt to load remote or non-Turtle files
  • Fix saving state when broken links are encountered
  • Gracefully handle plugins with missing binary URIs
  • Install Python bindings when configured without tests (thanks Clement Skau)
  • Remove use of deprecated readdir_r
  • lv2apply: Activate plugin before running
  • lv2apply: Use default values when they are not nan
  • lv2bench: Improve support for plugins with sequence ports
  • lv2bench: Support running a single plugin given on the command line

Lilv 0.24.2

Lilv 0.24.2 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Fix comparison of restored states with paths
  • Fix saving state to paths that contain URI delimiters (#, ?, etc)

Lilv 0.24.0

Lilv 0.24.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add LILV_URI_ATOM_PORT and LILV_URI_CV_PORT defines
  • Add lilv_state_set_metadata() for adding state banks/comments/etc (based on patch from Hanspeter Portner)
  • Add lilv_world_get_symbol()
  • Add lv2apply utility for applying plugins to audio files
  • Add new hand-crafted Pythonic bindings with full test coverage
  • Check lv2:binary predicate for UIs
  • Do not instantiate plugin when data fails to parse
  • Fix crash when NULL predicate is passed to lilv_world_find_nodes()
  • Fix crash when state contains non-POD properties
  • Fix documentation installation
  • Fix loading dyn-manifest from bundles with spaces in their path
  • Fix outdated comment references to lilv_uri_to_path()
  • Fix state file versioning
  • Replace bundles if bundle with newer plugin version is loaded (based on patch from Robin Gareus)
  • Support re-loading plugins
  • Unload contained resources when bundle is unloaded

Lilv 0.22.0

Lilv 0.22.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add lilv_file_uri_parse() for correct URI to path conversion
  • Add lilv_free() for systems picky about such things
  • Add lilv_node_get_path() for convenient file URI path access
  • Add lilv_state_delete() for deleting user saved presets
  • Add lilv_state_emit_port_values() for special port value handling
  • Add lilv_state_get_uri()
  • Configure based on compiler target OS for cross-compilation
  • Expose lilv_world_load_specifications() and lilv_world_load_plugin_classes()
  • Fix a few minor/unlikely memory errors
  • Fix bindings for Python 3
  • Fix creation of duplicate manifest entries when saving state
  • Fix directory walking on some systems (thanks Matt Fischer)
  • Fix lilv_realpath() on pre-POSIX-2008 systems
  • Fix lilv_world_ask() to work with wildcards
  • Fix loading files with spaces in their path
  • Load discovered owl ontologies as specifications
  • Minor documentation improvements
  • Preserve absolute paths in state if no link directory is given
  • Tolerate passing NULL to lilv_state_restore()
  • Upgrade to waf 1.8.14
  • Windows fixes (thanks John Emmas)

Lilv 0.20.0

Lilv 0.20.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add convenient lilv_new_file_uri for creating file URIs
  • Add lilv_world_unload_bundle() and lilv_world_unload_resource()
  • Call lv2_lib_descriptor separately for different bundle paths (fix loading several dynamic plugins like Ingen at once)
  • Don't load files multiple times if they are listed as rdfs:seeAlso for several plugins
  • Fix issues with lilv_plugin_get_author_name and friends (thanks Filipe Coelho)
  • Fix several minor memory leaks
  • Fix use of lv2info -m and -p options to write plugin data (useful for porting plugins bridges with NASPRO)
  • Improve test coverage
  • Improved/working lv2_apply.py to apply plugin to a .wav (thanks Joe Button)
  • Tolerate calling lilv_node_as_uri or lilv_node_as_blank on NULL
  • Upgrade to waf 1.7.16

Lilv 0.18.0

Lilv 0.18.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add lilv_port_get_node() for using world query functions with ports
  • Add support for running plugins from Python by Kaspar Emanuel
  • Allow lilv_state_restore() to be used without passing an instance, for restoring port values via a callback only
  • Allow passing NULL port_class to lilv_plugin_get_port_by_designation
  • Call GetProcAddress with correct calling convention on Windows
  • Clean up after test suite so multiple runs are successful
  • Fix unlikely memory leak in lilv_plugin_instantiate()
  • Support denoting latency ports with lv2:designation lv2:latency
  • lilvmm.hpp: Add wrappers for UI API
  • lv2info: Don't display invalid control maxes and defaults (patch from Robin Gareus)

Lilv 0.16.0

Lilv 0.16.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add lilv_nodes_merge()
  • Add lilv_world_ask() for easily checking if a statement exists
  • Add lilv_world_get() and lilv_port_get() for easily getting one value
  • Add va_list variant of lilv_plugin_get_num_ports_of_class()
  • Correctly depend on serd at build time (fix compilation in odd cases)
  • Disable timestamps in HTML documentation for reproducible build
  • Fail gracefully when lilv_state_new_from_string() is called on NULL
  • Fix several plugin functions that failed to load data if called first
  • Ignore state ports with no value instead of printing an error
  • Make lilv_plugin_get_port_by_designation() return a const pointer
  • Make state loading functions fall back to lv2:default for port values, so a plugin description can be loaded as default state
  • Require a URI for lilv_state_to_string() and fail gracefully otherwise
  • Support atom:supports in lilv_port_supports_event()
  • Update to waf 1.7.8 and autowaf r90 (install docs to versioned directory)
  • lilvmm.hpp: Add several missing methods
  • lilvmm.hpp: Support varargs for Plugin::get_num_ports_of_class()

Lilv 0.14.4

Lilv 0.14.4 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add lv2bench utility
  • Add option to build utilities as static binaries
  • Deprecate old flawed Lilv::Instance constructors
  • Do not require a C++ compiler to build
  • Fix crash when lv2info is run with an invalid URI argument
  • Fix documentation for ui_type parameter of lilv_ui_is_supported()
  • Fix various hyper-strict warnings
  • Gracefully handle failure to save plugin state and print error message
  • Make all 'zix' symbols private to avoid symbol clashes in static builds
  • Reduce memory usage (per node)
  • Simpler node implementation always backed by a SordNode
  • Upgrade to waf 1.7.2
  • lilvmm.hpp: Add Lilv::Instance::get_extension_data()
  • lilvmm.hpp: Add Lilv::Instance::get_handle()
  • lilvmm.hpp: Make Lilv::Instance handle features and failed instantiations

Lilv 0.14.2

Lilv 0.14.2 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Fix dynmanifest support

Lilv 0.14.0

Lilv 0.14.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.

Changes:

  • Add LilvState API for handling plugin state. This makes it simple to save and restore plugin state both in memory and on disk, as well as save presets in a host-sharable way since the disk format is identical to the LV2 presets format.
  • Add lilv_plugin_get_extension_data
  • Add lilv_plugin_get_port_by_designation() and lilv_port_get_index() as an improved generic alternative to lilv_plugin_get_latency_port_index().
  • Add lilv_plugin_get_project() and get author information from project if it is not given directly on the plugin.
  • Add lilv_plugin_get_related to get resources related to plugins that are not directly rdfs:seeAlso linked (e.g. presets)
  • Add lilv_world_load_resource for related resources (e.g. presets)
  • Fix compilation on BSD
  • Fix lilv_world_find_nodes to work with wildcard subjects
  • Install man page to DATADIR (e.g. PREFIX/share/man, not PREFIX/man)
  • Make Lilv::uri_to_path static inline (fix linking errors)
  • Only load dynmanifest libraries once per bundle, not once per plugin
  • Print presets in lv2info
  • Remove locale smashing kludges and use new serd functions for converting nodes to/from numbers.
  • Remove use of wordexp.
  • Support compilation as C++ under MSVC++.
  • Update old references to lv2_list (now lv2ls)
  • Use correct URI for dcterms:replaces (for hiding old plugins): "http://purl.org/dc/terms/replaces"
  • Use path variables in pkgconfig files

« Page 2 / 3 »