4 stable releases

2.1.0 Oct 23, 2020
2.0.0 Mar 27, 2020
1.0.1 Feb 23, 2020

#609 in Audio

Download history 122/week @ 2024-07-22 334/week @ 2024-07-29 226/week @ 2024-08-05 57/week @ 2024-08-12 79/week @ 2024-08-19 31/week @ 2024-08-26 172/week @ 2024-09-02 60/week @ 2024-09-09 69/week @ 2024-09-16 60/week @ 2024-09-23 235/week @ 2024-09-30 198/week @ 2024-10-07 36/week @ 2024-10-14 15/week @ 2024-10-21 22/week @ 2024-10-28 67/week @ 2024-11-04

143 downloads per month
Used in 4 crates

MIT/Apache

1MB
15K SLoC

Rust-LV2's URID handling library.

URI <-> URID mapping utilities used by rust-lv2, a safe, fast, and ergonomic framework to create LV2 plugins for audio processing, written in Rust.

LV2 often uses URIs to identify types. However, comparing strings isn't particularly performant. Therefore, every URI can be mapped to a URID (basically a u32) by the host, which can be efficiently compared. This concept is implemented by the urid crate and this crate adapts it for the use by an LV2 plugin or host.

Documentation

The original LV2 API (in the C programming language) is documented by "the LV2 book". This book is in the process of being translated to Rust along with the development of rust-lv2 (link) and describes how to properly use rust-lv2.

Features

Like any other crate of rust-lv2, this crate has the optional host feature. Some of the types defined by some crates are only useful for testing or LV2 hosts. Since the goal of this framework is to provide an easy way to create plugins, these aren't necessary and therefore gated behind that feature.

License

Licensed under either of

at your option.

Dependencies

~1.5MB
~37K SLoC