Merge from default branch

This commit is contained in:
Chris Cannam
2024-10-02 11:17:11 +01:00
7 changed files with 44 additions and 37 deletions

View File

@@ -220,7 +220,7 @@ RubberBandLivePitchShifter::getDescriptor(unsigned long index)
const LV2_Descriptor
RubberBandLivePitchShifter::lv2DescriptorMono =
{
"http://breakfastquay.com/rdf/lv2-rubberband-live#mono",
"http://breakfastquay.com/rdf/lv2-rubberband#livemono",
instantiate,
connectPort,
activate,
@@ -233,7 +233,7 @@ RubberBandLivePitchShifter::lv2DescriptorMono =
const LV2_Descriptor
RubberBandLivePitchShifter::lv2DescriptorStereo =
{
"http://breakfastquay.com/rdf/lv2-rubberband-live#stereo",
"http://breakfastquay.com/rdf/lv2-rubberband#livestereo",
instantiate,
connectPort,
activate,

View File

@@ -220,7 +220,7 @@ RubberBandR3PitchShifter::getDescriptor(unsigned long index)
const LV2_Descriptor
RubberBandR3PitchShifter::lv2DescriptorMono =
{
"http://breakfastquay.com/rdf/lv2-rubberband-r3#mono",
"http://breakfastquay.com/rdf/lv2-rubberband#r3mono",
instantiate,
connectPort,
activate,
@@ -233,7 +233,7 @@ RubberBandR3PitchShifter::lv2DescriptorMono =
const LV2_Descriptor
RubberBandR3PitchShifter::lv2DescriptorStereo =
{
"http://breakfastquay.com/rdf/lv2-rubberband-r3#stereo",
"http://breakfastquay.com/rdf/lv2-rubberband#r3stereo",
instantiate,
connectPort,
activate,

View File

@@ -2,7 +2,7 @@
project(
'Rubber Band Library',
'c', 'cpp',
version: '3.3.0',
version: '4.0.0',
license: 'GPL-2.0-or-later',
default_options: [
'cpp_std=c++11',
@@ -15,7 +15,7 @@ project(
meson_version: '>= 0.53.0'
)
rubberband_dynamic_library_version = '2.3.0'
rubberband_dynamic_library_version = '3.0.0'
system = host_machine.system()
architecture = host_machine.cpu_family()

View File

@@ -23,10 +23,10 @@
#ifndef RUBBERBAND_LIVE_SHIFTER_H
#define RUBBERBAND_LIVE_SHIFTER_H
#define RUBBERBAND_LIVE_VERSION "0.0.1"
#define RUBBERBAND_LIVE_API_MAJOR_VERSION 0
#define RUBBERBAND_LIVE_API_MINOR_VERSION 0
#define RUBBERBAND_VERSION "4.0.0"
#define RUBBERBAND_API_MAJOR_VERSION 3
#define RUBBERBAND_API_MINOR_VERSION 0
#undef RUBBERBAND_LIVE_DLLEXPORT
#ifdef _MSC_VER
@@ -49,8 +49,9 @@ namespace RubberBand
*
* RubberBand::RubberBandLiveShifter is an interface to the Rubber
* Band Library designed for applications that need to perform
* pitch-shifting only, without time-stretching, and to do so with the
* shortest available processing delay.
* pitch-shifting only, without time-stretching, and to do so in a
* straightforward block-by-block process with the shortest available
* processing delay.
*
* RubberBandLiveShifter has a much simpler API than the general
* RubberBandStretcher. Its process function, called
@@ -67,15 +68,15 @@ namespace RubberBand
* it only needs to be queried once and then fixed-size buffers may be
* passed.
*
* Using RubberBandLiveShifter also gives a substantially shorter
* processing delay than a typical buffering setup using
* RubberBandStretcher, making it a useful choice for some live
* situations, although it is still not a low-latency effect (and
* never will be) with a delay of 50ms or more between input and
* output signals depending on configuration. The actual value may be
* queried via RubberBandLiveShifter::getStartDelay(). The shifter is
* real-time safe in the sense of avoiding allocation, locking, or
* blocking operations in the processing path.
* Using RubberBandLiveShifter also gives a shorter processing delay
* than a typical buffering setup using RubberBandStretcher, making it
* a useful choice for some streamed or live situations. However, it
* is still not a low-latency effect, with a delay of 50ms or more
* between input and output signals depending on configuration. (The
* actual value may be queried via
* RubberBandLiveShifter::getStartDelay().) The shifter is real-time
* safe in the sense of avoiding allocation, locking, or blocking
* operations in the processing path.
*
* ### Thread safety
*

View File

@@ -24,9 +24,9 @@
#ifndef RUBBERBAND_STRETCHER_H
#define RUBBERBAND_STRETCHER_H
#define RUBBERBAND_VERSION "3.3.0"
#define RUBBERBAND_API_MAJOR_VERSION 2
#define RUBBERBAND_API_MINOR_VERSION 8
#define RUBBERBAND_VERSION "4.0.0"
#define RUBBERBAND_API_MAJOR_VERSION 3
#define RUBBERBAND_API_MINOR_VERSION 0
#undef RUBBERBAND_DLLEXPORT
#ifdef _MSC_VER
@@ -53,13 +53,16 @@ namespace RubberBand
*
* ### Summary
*
* The Rubber Band Library API is contained in the single class
* RubberBand::RubberBandStretcher.
* The primary Rubber Band Library API is contained in the class
* RubberBand::RubberBandStretcher. This class can perform both pitch
* shifting and time stretching and supports every feature of the
* library. A simpler, more limited alternative API that supports only
* pitch-shifting can be found in RubberBand::RubberBandLiveShifter.
*
* The Rubber Band stretcher supports two processing modes, offline
* and real-time, and two processing "engines", known as the R2 or
* Faster engine and the R3 or Finer engine. The choices of processing
* mode and engine are fixed on construction: see
* RubberBandStretcher supports two processing modes, offline and
* real-time, and two processing "engines", known as the R2 or Faster
* engine and the R3 or Finer engine. The choices of processing mode
* and engine are fixed on construction: see
* RubberBandStretcher::RubberBandStretcher. The two engines work
* identically in API terms, and both of them support both offline and
* real-time modes as described below.

View File

@@ -28,10 +28,10 @@
#ifdef __cplusplus
extern "C" {
#endif
#define RUBBERBAND_VERSION "3.3.0"
#define RUBBERBAND_API_MAJOR_VERSION 2
#define RUBBERBAND_API_MINOR_VERSION 8
#define RUBBERBAND_VERSION "4.0.0"
#define RUBBERBAND_API_MAJOR_VERSION 3
#define RUBBERBAND_API_MINOR_VERSION 0
#undef RB_EXTERN
#ifdef _MSC_VER

View File

@@ -27,9 +27,10 @@
This is a single-file compilation unit for Rubber Band Library.
To use the library in your project without building it separately,
include in your code either rubberband/RubberBandStretcher.h for
use in C++ or rubberband/rubberband-c.h if you need the C
interface, then add this single C++ source file to your build.
include in your code either rubberband/RubberBandStretcher.h
and/or rubberband/RubberBandLiveShifter.h for use in C++, or
rubberband/rubberband-c.h if you need the C interface, then add
this single C++ source file to your build.
Don't move this file into your source tree - keep it in the same
place relative to the other Rubber Band code, so that the relative
@@ -79,7 +80,9 @@
#include "../src/faster/R2Stretcher.cpp"
#include "../src/faster/StretcherProcess.cpp"
#include "../src/finer/R3Stretcher.cpp"
#include "../src/finer/R3LiveShifter.cpp"
#include "../src/RubberBandStretcher.cpp"
#include "../src/RubberBandLiveShifter.cpp"
#include "../src/rubberband-c.cpp"