Hello Chuck,
good idea to introduce Pipewire -- it seems to be the way to go in future.
Recently, I saw an interview with its author and Pipewire, as an additional layer
above Alsa, Pulseaudio, Jack... , seems to facilitate the task of managing audio setups.
From your previous video and your remarks concerning the timing...
# Define constants for timing calculations
DIT_DURATION_CONSTANT = 1200
DAH_DURATION_MULTIPLIER = 3.00
INTER_ELEMENT_SPACE_MULTIPLIER = .70
INTER_CHARACTER_SPACE_MULTIPLIER = .50
WORD_SPACE_MULTIPLIER = 2.00# Define constants for timing calculations
DIT_DURATION_CONSTANT = 1200
DAH_DURATION_MULTIPLIER = 3.00
INTER_ELEMENT_SPACE_MULTIPLIER = .70
INTER_CHARACTER_SPACE_MULTIPLIER = .50
WORD_SPACE_MULTIPLIER = 2.00
.. there are lots of factors.
Some of those multipliers may go back to the intention to correct for the fall time of the succeeding band pass filter.
I think, it would be better to leave the duration of DITs, DAHs, element space, character space and word space according to the normal, Paris-based standard (1 dit, 3 dit, 1 dit, 3 dit and 7 dit) and to avoid multipliers/correction factors.
Seen that the audio is transferred to the sound card by an array, it should be possible to replace the entries for DITs and DAHs
in the array to take account of the fall time of the band pass filter in use.
So -- instead of having a DIT in the array defined like [1,1,1,1,1,1,1,1,1,1,1,1] it would be defined like
[0,0,0,0,1,1,1,1,1,1,1,1]
where the number of zeros replacing the 1s at the start is determined by the sample rate and the fall time of the band pass filter.
That solution would be speed-independant. For sure - it comes at a price - the output will be delayed by the fall time.
But I think, for a CW keyboard and even for paddle input, a delay of about 5 to 8 ms does not really matter.
One might think about the introduction of a "compensation slider", having a range of 0 to 15 ms, which would just reduce the
keyed time of DITs and DAHs. Automagically the
element space, character space and word space would remain normal.
GL, 73
Tom