usbaudio: send through dsp (new)

Does not seem to affect UI usability, but allowable DSP loads will vary
based on device and playback sample rate.

To-Do (someday):
- Add dedicated DSP channel
- How to apply DSP settings to above new channel? (UI)
- How to lock out timestretch from being enabled?

Change-Id: Ia24d1055340354e2c32e6008e7e2b03a8e88867d
This commit is contained in:
Dana Conrad 2025-11-02 00:02:02 +00:00
parent 7c4293af64
commit c533222851
12 changed files with 94 additions and 31 deletions

View file

@ -444,7 +444,7 @@ static inline void synthbuf(void)
dst.remcount = 0;
dst.bufcount = available;
dst.p16out = (int16_t *)outptr;
rb->dsp_process(dsp, &src, &dst);
rb->dsp_process(dsp, &src, &dst, true);
if (dst.remcount > 0)
{
outptr += dst.remcount;

View file

@ -665,7 +665,7 @@ static void audio_thread(void)
}
dst.bufcount = size / (2 * sizeof (int16_t));
rb->dsp_process(td.dsp, &td.src, &dst);
rb->dsp_process(td.dsp, &td.src, &dst, true);
if (dst.remcount > 0)
{

View file

@ -230,7 +230,7 @@ static int process_dsp(const void *ch1, const void *ch2, int count)
while (1)
{
int old_remcount = dst.remcount;
rb->dsp_process(ci.dsp, &src, &dst);
rb->dsp_process(ci.dsp, &src, &dst, true);
if (dst.bufcount <= 0 ||
(src.remcount <= 0 && dst.remcount <= old_remcount))