v1.4.89 TInternal
This commit is contained in:
+2
-2
@@ -1,13 +1,13 @@
|
|||||||
cmake_minimum_required(VERSION 3.16.0)
|
cmake_minimum_required(VERSION 3.16.0)
|
||||||
project(pipedal
|
project(pipedal
|
||||||
VERSION 1.4.88
|
VERSION 1.4.89
|
||||||
DESCRIPTION "PiPedal Guitar Effect Pedal For Raspberry Pi"
|
DESCRIPTION "PiPedal Guitar Effect Pedal For Raspberry Pi"
|
||||||
HOMEPAGE_URL "https://rerdavies.github.io/pipedal"
|
HOMEPAGE_URL "https://rerdavies.github.io/pipedal"
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
|
execute_process( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
|
||||||
|
|
||||||
set (DISPLAY_VERSION "PiPedal v1.4.88-Experimental")
|
set (DISPLAY_VERSION "PiPedal v1.4.89-Experimental")
|
||||||
set (PACKAGE_ARCHITECTURE ${DEBIAN_ARCHITECTURE})
|
set (PACKAGE_ARCHITECTURE ${DEBIAN_ARCHITECTURE})
|
||||||
set (CMAKE_INSTALL_PREFIX "/usr/")
|
set (CMAKE_INSTALL_PREFIX "/usr/")
|
||||||
|
|
||||||
|
|||||||
@@ -9,11 +9,11 @@
|
|||||||
<img src="https://img.shields.io/github/downloads/rerdavies/pipedal/total?color=%23808080&link=https%3A%2F%2Frerdavies.github.io%2Fpipedal%2Fdownload.html"/>
|
<img src="https://img.shields.io/github/downloads/rerdavies/pipedal/total?color=%23808080&link=https%3A%2F%2Frerdavies.github.io%2Fpipedal%2Fdownload.html"/>
|
||||||
|
|
||||||
|
|
||||||
Download: <a href='https://rerdavies.github.io/pipedal/download.html'>v1.4.88</a>
|
Download: <a href='https://rerdavies.github.io/pipedal/download.html'>v1.4.89</a>
|
||||||
Website: [https://rerdavies.github.io/pipedal](https://rerdavies.github.io/pipedal).
|
Website: [https://rerdavies.github.io/pipedal](https://rerdavies.github.io/pipedal).
|
||||||
Documentation: [https://rerdavies.github.io/pipedal/Documentation.html](https://rerdavies.github.io/pipedal/Documentation.html).
|
Documentation: [https://rerdavies.github.io/pipedal/Documentation.html](https://rerdavies.github.io/pipedal/Documentation.html).
|
||||||
|
|
||||||
#### NEW version 1.4.88 Release. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details. New Phaser and Graphic Equalizer plugins.
|
#### NEW version 1.4.89 Release. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details. New Phaser and Graphic Equalizer plugins.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -13,18 +13,18 @@ page_icon: img/Install4.jpg
|
|||||||
|
|
||||||
Download the most recent Debian (.deb) package for your platform:
|
Download the most recent Debian (.deb) package for your platform:
|
||||||
|
|
||||||
- [Raspberry Pi OS bookworm (aarch64) v1.4.88](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_arm64.deb)
|
- [Raspberry Pi OS bookworm (aarch64) v1.4.89](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_arm64.deb)
|
||||||
- [Ubuntu 24.x (aarch64) v1.4.88](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_arm64.deb)
|
- [Ubuntu 24.x (aarch64) v1.4.89](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_arm64.deb)
|
||||||
- [Ubuntu 24.x (amd64) v1.4.88](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_amd64.deb)
|
- [Ubuntu 24.x (amd64) v1.4.89](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_amd64.deb)
|
||||||
|
|
||||||
|
|
||||||
Version 1.4.88 has been tested on Raspberry Pi OS bookworm, Ubuntu 24.04 (amd64), and Ubuntu 24.10 (aarch64). Download the appropriate package for your platform, and install using the following procedure:
|
Version 1.4.89 has been tested on Raspberry Pi OS bookworm, Ubuntu 24.04 (amd64), and Ubuntu 24.10 (aarch64). Download the appropriate package for your platform, and install using the following procedure:
|
||||||
|
|
||||||
```
|
```
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt upgrade
|
sudo apt upgrade
|
||||||
cd ~/Downloads
|
cd ~/Downloads
|
||||||
sudo apt-get install ./pipedal_1.4.88_arm64.deb
|
sudo apt-get install ./pipedal_1.4.89_arm64.deb
|
||||||
```
|
```
|
||||||
You MUST use `apt-get`. `apt` will not install downloaded packages; and `dpkg -i` will not install dependencies.
|
You MUST use `apt-get`. `apt` will not install downloaded packages; and `dpkg -i` will not install dependencies.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
# Release Notes
|
# Release Notes
|
||||||
|
|
||||||
|
## PiPedal 1.4.89 Internal
|
||||||
|
- Toob Crvb for testing.
|
||||||
|
|
||||||
## PiPedal 1.4.88 Alpha
|
## PiPedal 1.4.88 Alpha
|
||||||
- Ubuntu 25.04 experimental release.
|
- Ubuntu 25.04 experimental release.
|
||||||
- Ubutnu 24.04 Hotspot compatibility fix
|
- Ubutnu 24.04 Hotspot compatibility fix
|
||||||
|
|||||||
+4
-4
@@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
Download the most recent Debian (.deb) package for your platform:
|
Download the most recent Debian (.deb) package for your platform:
|
||||||
|
|
||||||
- [Raspberry Pi OS bookworm (aarch64) v1.4.88 Beta](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_arm64.deb)
|
- [Raspberry Pi OS bookworm (aarch64) v1.4.89 Beta](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_arm64.deb)
|
||||||
- [Ubuntu 24.x (aarch64) v1.4.88 Alpha](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_arm64.deb)
|
- [Ubuntu 24.x (aarch64) v1.4.89 Alpha](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_arm64.deb)
|
||||||
- [Ubuntu 24.x (amd64) v1.4.88 Alpha](https://github.com/rerdavies/pipedal/releases/download/v1.4.88/pipedal_1.4.88_amd64.deb)
|
- [Ubuntu 24.x (amd64) v1.4.89 Alpha](https://github.com/rerdavies/pipedal/releases/download/v1.4.89/pipedal_1.4.89_amd64.deb)
|
||||||
|
|
||||||
|
|
||||||
Install the package by running
|
Install the package by running
|
||||||
@@ -14,7 +14,7 @@ Install the package by running
|
|||||||
```
|
```
|
||||||
sudo apt update
|
sudo apt update
|
||||||
cd ~/Downloads
|
cd ~/Downloads
|
||||||
sudo apt-get install ./pipedal_1.4.88_arm64.deb
|
sudo apt-get install ./pipedal_1.4.89_arm64.deb
|
||||||
```
|
```
|
||||||
You MUST use `apt-get` to install the package. `apt install` will NOT install the package correctly. The message about missing permissions given by `apt-get` is
|
You MUST use `apt-get` to install the package. `apt install` will NOT install the package correctly. The message about missing permissions given by `apt-get` is
|
||||||
expected, and can be safely ignored.
|
expected, and can be safely ignored.
|
||||||
|
|||||||
+23
-2
@@ -104,6 +104,14 @@ Lv2Effect::Lv2Effect(
|
|||||||
auto uriNode = lilv_new_uri(pWorld, pedalboardItem.uri().c_str());
|
auto uriNode = lilv_new_uri(pWorld, pedalboardItem.uri().c_str());
|
||||||
const LilvPlugin *pPlugin = lilv_plugins_get_by_uri(plugins, uriNode);
|
const LilvPlugin *pPlugin = lilv_plugins_get_by_uri(plugins, uriNode);
|
||||||
|
|
||||||
|
for (auto&port : info->ports())
|
||||||
|
{
|
||||||
|
if (port->is_bypass())
|
||||||
|
{
|
||||||
|
this->bypassControlIndex = port->index();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
lilv_node_free(uriNode);
|
lilv_node_free(uriNode);
|
||||||
{
|
{
|
||||||
AutoLilvNode bundleUri = lilv_plugin_get_bundle_uri(pPlugin);
|
AutoLilvNode bundleUri = lilv_plugin_get_bundle_uri(pPlugin);
|
||||||
@@ -545,7 +553,13 @@ void Lv2Effect::Activate()
|
|||||||
this->activated = true;
|
this->activated = true;
|
||||||
this->AssignUnconnectedPorts();
|
this->AssignUnconnectedPorts();
|
||||||
lilv_instance_activate(pInstance);
|
lilv_instance_activate(pInstance);
|
||||||
this->BypassTo(this->bypass ? 1.0f : 0.0f);
|
if (this->bypassControlIndex == -1)
|
||||||
|
{
|
||||||
|
this->BypassDezipperSet(this->bypass ? 1.0f : 0.0f);
|
||||||
|
} else {
|
||||||
|
this->BypassDezipperSet(1.0f);
|
||||||
|
this->controlValues[this->bypassControlIndex] = this->bypass ? 1.0f: 0.0f;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Lv2Effect::UpdateAudioPorts()
|
void Lv2Effect::UpdateAudioPorts()
|
||||||
@@ -835,8 +849,15 @@ void Lv2Effect::ResetOutputAtomBuffer(char *data)
|
|||||||
header->size = pHost->GetAtomBufferSize() - 8;
|
header->size = pHost->GetAtomBufferSize() - 8;
|
||||||
header->type = urids.atom__Chunk;
|
header->type = urids.atom__Chunk;
|
||||||
}
|
}
|
||||||
|
void Lv2Effect::BypassDezipperSet(float targetValue)
|
||||||
|
{
|
||||||
|
this->targetBypass = targetValue;
|
||||||
|
this->currentBypass = targetValue;
|
||||||
|
this->currentBypassDx = 0;
|
||||||
|
this->bypassSamplesRemaining = 0;
|
||||||
|
}
|
||||||
|
|
||||||
void Lv2Effect::BypassTo(float targetValue)
|
void Lv2Effect::BypassDezipperTo(float targetValue)
|
||||||
{
|
{
|
||||||
this->targetBypass = targetValue;
|
this->targetBypass = targetValue;
|
||||||
double dx = targetValue - this->currentBypass;
|
double dx = targetValue - this->currentBypass;
|
||||||
|
|||||||
+11
-2
@@ -101,6 +101,7 @@ namespace pipedal
|
|||||||
std::vector<bool> isInputControlPort;
|
std::vector<bool> isInputControlPort;
|
||||||
std::vector<float> defaultInputControlValues;
|
std::vector<float> defaultInputControlValues;
|
||||||
std::vector<bool> isInputTriggerControlPort;;
|
std::vector<bool> isInputTriggerControlPort;;
|
||||||
|
int bypassControlIndex = -1;
|
||||||
|
|
||||||
virtual std::string GetUri() const { return info->uri(); }
|
virtual std::string GetUri() const { return info->uri(); }
|
||||||
|
|
||||||
@@ -185,6 +186,8 @@ namespace pipedal
|
|||||||
const void *data);
|
const void *data);
|
||||||
|
|
||||||
|
|
||||||
|
int GetBypassControlPort() const { return bypassControlIndex; }
|
||||||
|
|
||||||
void ResetInputAtomBuffer(char*data);
|
void ResetInputAtomBuffer(char*data);
|
||||||
void ResetOutputAtomBuffer(char*data);
|
void ResetOutputAtomBuffer(char*data);
|
||||||
|
|
||||||
@@ -202,7 +205,9 @@ namespace pipedal
|
|||||||
int actualAudioInputs = 0;
|
int actualAudioInputs = 0;
|
||||||
int actualAudioOutputs = 0;
|
int actualAudioOutputs = 0;
|
||||||
std::vector<std::vector<float>> outputMixBuffers;
|
std::vector<std::vector<float>> outputMixBuffers;
|
||||||
void BypassTo(float value);
|
void BypassDezipperTo(float value);
|
||||||
|
void BypassDezipperSet(float value);
|
||||||
|
|
||||||
bool borrowedEffect = false;
|
bool borrowedEffect = false;
|
||||||
bool activated = false;
|
bool activated = false;
|
||||||
|
|
||||||
@@ -329,7 +334,11 @@ namespace pipedal
|
|||||||
if (bypass != this->bypass)
|
if (bypass != this->bypass)
|
||||||
{
|
{
|
||||||
this->bypass = bypass;
|
this->bypass = bypass;
|
||||||
BypassTo(bypass? 1.0f: 0.0f);
|
if (bypassControlIndex == -1) {
|
||||||
|
BypassDezipperTo(bypass? 1.0f: 0.0f);
|
||||||
|
} else {
|
||||||
|
controlValues[bypassControlIndex] = bypass? 1.0f: 0.0f;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,6 +33,8 @@
|
|||||||
#include "JackConfiguration.hpp"
|
#include "JackConfiguration.hpp"
|
||||||
#include "lv2/urid/urid.h"
|
#include "lv2/urid/urid.h"
|
||||||
#include "lv2/ui/ui.h"
|
#include "lv2/ui/ui.h"
|
||||||
|
#include "lv2/core/lv2.h"
|
||||||
|
|
||||||
// #include "lv2.h"
|
// #include "lv2.h"
|
||||||
#include "lv2/atom/atom.h"
|
#include "lv2/atom/atom.h"
|
||||||
#include "lv2/time/time.h"
|
#include "lv2/time/time.h"
|
||||||
@@ -1224,6 +1226,7 @@ Lv2PortInfo::Lv2PortInfo(PluginHost *host, const LilvPlugin *plugin, const LilvP
|
|||||||
|
|
||||||
AutoLilvNode designationValue = lilv_port_get(plugin, pPort, host->lilvUris->core__designation);
|
AutoLilvNode designationValue = lilv_port_get(plugin, pPort, host->lilvUris->core__designation);
|
||||||
designation_ = nodeAsString(designationValue);
|
designation_ = nodeAsString(designationValue);
|
||||||
|
is_bypass_ = designation_ == LV2_CORE__enabled;
|
||||||
|
|
||||||
AutoLilvNode portGroup_value = lilv_port_get(plugin, pPort, host->lilvUris->portgroups__group);
|
AutoLilvNode portGroup_value = lilv_port_get(plugin, pPort, host->lilvUris->portgroups__group);
|
||||||
port_group_ = nodeAsString(portGroup_value);
|
port_group_ = nodeAsString(portGroup_value);
|
||||||
@@ -1957,6 +1960,7 @@ json_map::storage_type<Lv2PortInfo> Lv2PortInfo::jmap{
|
|||||||
MAP_REF(Lv2PortInfo, not_on_gui),
|
MAP_REF(Lv2PortInfo, not_on_gui),
|
||||||
MAP_REF(Lv2PortInfo, buffer_type),
|
MAP_REF(Lv2PortInfo, buffer_type),
|
||||||
MAP_REF(Lv2PortInfo, port_group),
|
MAP_REF(Lv2PortInfo, port_group),
|
||||||
|
MAP_REF(Lv2PortInfo, is_bypass),
|
||||||
MAP_REF(Lv2PortInfo, pipedal_ledColor),
|
MAP_REF(Lv2PortInfo, pipedal_ledColor),
|
||||||
|
|
||||||
json_map::enum_reference("units", &Lv2PortInfo::units_, get_units_enum_converter()),
|
json_map::enum_reference("units", &Lv2PortInfo::units_, get_units_enum_converter()),
|
||||||
|
|||||||
+5
-1
@@ -231,6 +231,7 @@ namespace pipedal
|
|||||||
std::string port_group_;
|
std::string port_group_;
|
||||||
|
|
||||||
std::string designation_;
|
std::string designation_;
|
||||||
|
bool is_bypass_ = false;
|
||||||
Units units_ = Units::none;
|
Units units_ = Units::none;
|
||||||
std::string comment_;
|
std::string comment_;
|
||||||
PiPedalUI::ptr piPedalUI_;
|
PiPedalUI::ptr piPedalUI_;
|
||||||
@@ -280,6 +281,7 @@ namespace pipedal
|
|||||||
LV2_PROPERTY_GETSET_SCALAR(min_value);
|
LV2_PROPERTY_GETSET_SCALAR(min_value);
|
||||||
LV2_PROPERTY_GETSET_SCALAR(max_value);
|
LV2_PROPERTY_GETSET_SCALAR(max_value);
|
||||||
LV2_PROPERTY_GETSET_SCALAR(default_value);
|
LV2_PROPERTY_GETSET_SCALAR(default_value);
|
||||||
|
LV2_PROPERTY_GETSET_SCALAR(is_bypass);
|
||||||
|
|
||||||
LV2_PROPERTY_GETSET_SCALAR(is_input);
|
LV2_PROPERTY_GETSET_SCALAR(is_input);
|
||||||
LV2_PROPERTY_GETSET_SCALAR(is_output);
|
LV2_PROPERTY_GETSET_SCALAR(is_output);
|
||||||
@@ -594,7 +596,9 @@ namespace pipedal
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
is_bypass_ = name_ == "bypass" || name_ == "Bypass" || symbol_ == "bypass" || symbol_ == "Bypass";
|
is_bypass_ =
|
||||||
|
pPort->is_bypass() ||
|
||||||
|
name_ == "bypass" || name_ == "Bypass" || symbol_ == "bypass" || symbol_ == "Bypass";
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -728,7 +728,7 @@ export class UiControl implements Deserializable<UiControl> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
isHidden(): boolean {
|
isHidden(): boolean {
|
||||||
return this.not_on_gui || (this.connection_optional && !this.is_input);
|
return this.is_bypass || this.not_on_gui || (this.connection_optional && !this.is_input);
|
||||||
}
|
}
|
||||||
isOnOffSwitch(): boolean {
|
isOnOffSwitch(): boolean {
|
||||||
return this.controlType === ControlType.OnOffSwitch;
|
return this.controlType === ControlType.OnOffSwitch;
|
||||||
|
|||||||
Reference in New Issue
Block a user