tenacityteam / tenacity-legacy

THIS REPO IS NOT MAINTAINED ANYMORE. Please see https://codeberg.org/tenacityteam/tenacity for Tenacity, which is maintained.
https://tenacityaudio.org
Other
6.75k stars 255 forks source link

Add Proper JACK Implementation #737

Open Turtley12 opened 2 years ago

Turtley12 commented 2 years ago

Guidelines

Is your feature request related to a problem? Please describe.

The Audacity/Tenacity JACK implementation is technically functional, but it is different from most other jack clients, and as some people have described it: "A perfect example of how not to implement a jack client.

Current Behavior

When "JACK Audio Connection Kit" is selected in the Host drop-down, The recording and playback device show the clients currently connected to the jack audio server. Nothing else happens until you start recording.

When you start recording, Tenacity automatically connects to the jack clients that were selected. It is then possible to switch the connections to other ports, but since Tenacity is already recording you end up having to cut the first part of the recording and it makes it hard to record that track alongside other tracks. This makes it difficult to use Tenacity with anything more than the most basic jack setups.

Describe the solution you'd like

Expected Behavior

When "JACK Audio Connection Kit" is selected as the audio host, Tenacity should connect to jack, and register input and output ports, but it should not automatically connect to anything. Then the user can connect Tenacity to other jack devices, and when they start recording, Tenacity will respect these connections. Same with playback.

Describe alternatives you've considered

Additional context

This is a problem in the Audacity issue tracker, but the maintainers basically said it was usable how it is and they weren't going to fix it, So I created this in hope that there will be more support for a better jack implementation here.

Applicable Audacity Issues: https://github.com/audacity/audacity/issues/3553 https://github.com/audacity/audacity/issues/711 https://github.com/audacity/audacity/issues/710

If there is anything I can help with related to this issue, please let me know.

(This issue is a duplicate, just not a duplicate of an existing Tenacity Issue.)

This issue is not a duplicate