element icon indicating copy to clipboard operation
element copied to clipboard

[BUG] MIDI Program Change Commands Not Responding in CONTROL Input Plugins

Open Riebeck-one opened this issue 1 year ago • 2 comments

Describe the bug There are several issues with MIDI Program Change (PC) commands when controlling plugins with CONTROL input ports.

To Reproduce Steps to reproduce the behavior:

  1. Insert a plugin that has a CONTROL INPUT port.
  2. Link the plugin to a MIDI device.
  3. Send MIDI PC commands from the MIDI device.
  4. The plugin does not respond to the MIDI program changes.
  5. Enabling the midi-input node makes the plugin respond to the MIDI program changes, even though it's not connected to it.

Expected behavior Plugins should change their MIDI program when PC commands are received.

Screenshots

https://github.com/user-attachments/assets/ba7f3108-aa9d-4e96-b8fe-854dfeba3fd8

Element version Latest Git version

Desktop (please complete the following information):

                -`                     david@archlinux
                 .o+`                    ---------------
                `ooo/                    OS: Arch Linux x86_64
               `+oooo:                   Host: MS-7C84 (1.0)
              `+oooooo:                  Kernel: Linux 6.11.0-1-cachyos
              -+oooooo+:                 Uptime: 1 hour, 24 mins
            `/:-:++oooo+:                Packages: 1723 (pacman), 2 (flatpak), 2 (snap)
           `/++++/+++++++:               Shell: zsh 5.9
          `/++++++++++++++:              Display (HDMI): 1920x1080 @ 60 Hz in 16″ [External]
         `/+++ooooooooooooo/`            Display (LS49AG95): 5120x1440 @ 240 Hz in 49″ [External] [HDR] *
        ./ooosssso++osssssso+`           DE: KDE Plasma 6.1.5
       .oossssso-````/ossssss+`          WM: KWin (Wayland)
      -osssssso.      :ssssssso.         WM Theme: Breeze
     :osssssss/        osssso+++.        Theme: Breeze (MaterialYouDark) [Qt], Breeze-Dark [GTK2], Breeze [GTK3/4]
    /ossssssss/        +ssssooo/-        Icons: breeze-dark [Qt], breeze-dark [GTK2/3/4]
  `/ossssso+/:-        -:/+osssso+-      Font: Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4]
 `+sso+:-`                 `.-/+oso:     Cursor: breeze (24px)
`++:.                           `-/+/    Terminal: konsole 24.8.1
.`                                 `/    Terminal Font: MesloLGM Nerd Font (10pt)
                                         CPU: AMD Ryzen 7 5800X (16) @ 4.85 GHz
                                         GPU: AMD Radeon RX 7900 XTX [Discrete]
                                         Memory: 5.61 GiB / 62.72 GiB (9%)
                                         Swap: Disabled
                                         Disk (/): 188.61 GiB / 444.21 GiB (42%) - xfs
                                         Disk (/home/data): 261.68 GiB / 931.51 GiB (28%) - btrfs
                                         Local IP (enp38s0): 192.168.50.214/24
                                         Locale: fr_FR.UTF-8

Standalone or Plugin This issue occurs in the standalone version.

Riebeck-one avatar Sep 25 '24 13:09 Riebeck-one

Thanks for the detailed report on this. Will check it out as soon as I can.

mfisher31 avatar Sep 25 '24 13:09 mfisher31

Hey @Riebeck-one , if you get a chance, would you mind trying this from the cmake branch. I've removed my internal LV2 host in place of the JUCE provided one. Along with that I also reverted some MIDI <-> Atom automatic conversion stuff in the graph building backend. This should be resolved.

mfisher31 avatar Dec 06 '25 11:12 mfisher31

This ought to be resolved in the next beta coming out. If you are able, potential fix is in the main branch as well. Note, that this project has moved to CMake (probably for the better).

mfisher31 avatar Dec 22 '25 19:12 mfisher31