Re: [Csnd-dev] [EXTERNAL] [Csnd-dev] More Daisy help
Dave Seidel <[email protected]> Sun, 14 Sep 2025 16:22:56 -0400
| Newsgroups | gmane.comp.audio.csound.devel |
|---|---|
| Message-ID | <CAMnrweA6StvHr0dCddB8vuJycetaMBx+z_-QL1rt_Ho7JVQU9Q@mail.gmail.com> |
Thanks, I will try these things. On Sun, Sep 14, 2025, 4:12 PM Victor Lazzarini < [email protected]> wrote: > Ok, so I suspect that you'll get the pitch shifter working alright. I > wonder if the pitchamdf is draining cpu cycles, it's a bit expensive. > > Try running the pitchshifter without pitch tracking, just setting the > delay time fixed to some small value like 50ms and see if it works. > In other words, keep the UDO but simplify the instrument, get the audio > in, put it into the UDO and send it out, without any extra processing. > > best > Prof. Victor Lazzarini > Maynooth University > Ireland > > On 14 Sep 2025, at 19:48, Dave Seidel <[email protected]> wrote: > > > Ah yes, sorry. I tried both the processing example and generative example > and they worked on the Versio. > > On Sun, Sep 14, 2025 at 2:43 PM Victor Lazzarini < > [email protected]> wrote: > >> What I was asking is whether the Daisy Csound processing example works in >> your system. If it doesn't then there is something else needed there. The >> example was tested and ran ok in the Daisy Pod. >> >> Prof. Victor Lazzarini >> Maynooth University >> Ireland >> >> On 14 Sep 2025, at 19:29, Dave Seidel <[email protected]> wrote: >> >> >> Yes, the book example works fine on my RPi. On the Versio/Daisy it is >> noisy, similar to the result I got from my original code. This is why I am >> now thinking that possibly something needs to change in the C code to work >> properly on this particular Daisy platform. So I will study the published >> Versio example (which is entirely C) and see if I can spot the >> difference(s). We may need different boilerplate code for Csound on Versio. >> >> On Sun, Sep 14, 2025 at 2:22 PM Victor Lazzarini < >> [email protected]> wrote: >> >>> and the Csound processing example, how does that do in your setup? Does >>> it work well. >>> >>> The delay line shifter code is fairly low in cost, so I would think it >>> should run well. It should even allow for small ksmps/blocksize. I had a >>> variable delay code running here with ksmps=8, and audio block size set to >>> ksmps. >>> >>> Prof. Victor Lazzarini >>> Maynooth University >>> Ireland >>> >>> On 14 Sep 2025, at 19:07, Dave Seidel <[email protected]> wrote: >>> >>> >>> Identical to DaisyCsoundProcess, the only difference being the name of >>> the file and the name of the included header. >>> >>> On Sun, Sep 14, 2025 at 1:25 PM Victor Lazzarini < >>> [email protected]> wrote: >>> >>>> And the C program you used? >>>> Prof. Victor Lazzarini >>>> Maynooth University >>>> Ireland >>>> >>>> On 14 Sep 2025, at 18:18, Dave Seidel <[email protected]> wrote: >>>> >>>> >>>> Still haven't found my book, but I do have a (purchased) PDF of the >>>> Springer Csound book by Victor et al. This contains the same pitchshifter >>>> code along with the explanation. >>>> >>>> (BTW, the window used in the book is a triangle. Any reason to prefer >>>> Hanningh over triangle?) >>>> >>>> In any case, this pitchy shifter code doesn't work well on my Daisy >>>> either -- still a lot of noise overlaying the generated output. But this is >>>> a Versio, so perhaps it requires something different in the >>>> setup/initialization? Next step, I guess, is to compare the code in the >>>> Versio example in DaisyExamples to the boilerplate C++ code used in the >>>> DaisyCsound examples. >>>> >>>> I've attached my header file with the Csound code in it. The same >>>> Csound code works just fine on my Raspberry Pi. >>>> >>>> >>>> On Fri, Sep 12, 2025 at 4:19 PM Victor Lazzarini < >>>> [email protected]> wrote: >>>> >>>>> I think the second pvsynth in this code might be pushing it >>>>> Prof. Victor Lazzarini >>>>> Maynooth University >>>>> Ireland >>>>> >>>>> On 12 Sep 2025, at 20:18, Dave Seidel <[email protected]> wrote: >>>>> >>>>> >>>>> Rory, this was running in Daisy? >>>>> >>>>> On Fri, Sep 12, 2025 at 3:13 PM Rory Walsh <[email protected]> wrote: >>>>> >>>>>> I've used ksmps=256 and fftsize=1024 and it's worked Ok for me. I've >>>>>> been using pvsmooth and pvsynth. Not very heavy stuff, but nice results all >>>>>> the same. >>>>>> >>>>>> On Fri, 12 Sept 2025 at 20:11, Dave Seidel <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Great, thanks very much! Still looking for the book... :-) >>>>>>> >>>>>>> On Fri, Sep 12, 2025 at 1:56 PM Victor Lazzarini < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Essentially this >>>>>>>> https://github.com/csound/book/blob/master/part4/chapter13/13.12.csd >>>>>>>> >>>>>>>> Prof. Victor Lazzarini >>>>>>>> Maynooth University >>>>>>>> Ireland >>>>>>>> >>>>>>>> On 12 Sep 2025, at 18:41, Dave Seidel <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> Thanks, Victor. I'll try those things, though I already tried >>>>>>>> ksmps=256 and FFT size 1024 -- didn't work, but it did reduce the noise >>>>>>>> somewhat, so I think that reinforces your theory. >>>>>>>> >>>>>>>> The delay-based approach might be fine, thanks for the suggestion. >>>>>>>> I know I have the book around somewhere, I just need to find it.... >>>>>>>> >>>>>>>> On Fri, Sep 12, 2025 at 1:17 PM Victor Lazzarini < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi Dave, >>>>>>>>> >>>>>>>>> this is probably because the Daisy can't compute audio in time for >>>>>>>>> the interrupt. >>>>>>>>> It could be that the FFTs are too much for it. >>>>>>>>> There's a few things you could try: >>>>>>>>> >>>>>>>>> increase ksmps to 256 >>>>>>>>> decrease FFT size to 1024 >>>>>>>>> >>>>>>>>> keep ksmps at 128 >>>>>>>>> decrease FFT size to 512 >>>>>>>>> >>>>>>>>> I have not yet tested spectral processing to see what the limits >>>>>>>>> are. I can't do any testing at the moment because my Daisy seed is faulty, >>>>>>>>> I'm waiting on a replacement. >>>>>>>>> >>>>>>>>> An alternative to doing pvs-based pitch shifting is to use a delay >>>>>>>>> line pitch shifter, which might just work ok in your case. Russell >>>>>>>>> Pinkston's chapter in the Csound Book has an example you could use. >>>>>>>>> >>>>>>>>> Otherwise I can send you some code. >>>>>>>>> >>>>>>>>> best >>>>>>>>> Prof. Victor Lazzarini >>>>>>>>> Maynooth University >>>>>>>>> Ireland >>>>>>>>> >>>>>>>>> On 12 Sep 2025, at 16:38, Dave Seidel <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> *Warning* >>>>>>>>> >>>>>>>>> This email originated from outside of Maynooth University's Mail >>>>>>>>> System. Do not reply, click links or open attachments unless you recognise >>>>>>>>> the sender and know the content is safe. >>>>>>>>> Hi Victor, >>>>>>>>> >>>>>>>>> I have a tiny project that essentially duplicates the >>>>>>>>> DaisyCsoundProcess example, the only differences in the code being the >>>>>>>>> changes names and the contents of csdText. >>>>>>>>> >>>>>>>>> Here's the UDO I'm using, which works fine with standalone Csound. >>>>>>>>> It takes an input signal and turns it into a stereo output signal with a >>>>>>>>> binaural beat. When it's executed on the Daisy, I can sort of hear the >>>>>>>>> output, but it's very noisy. Is there anything in this code that you would >>>>>>>>> not expect to work on the Daisy? >>>>>>>>> >>>>>>>>> opcode binauralize, aa, ak >>>>>>>>> ain,kdiff xin >>>>>>>>> >>>>>>>>> ; take it apart >>>>>>>>> fsig pvsanal ain, 2048, 2048/4, 2048, 1 >>>>>>>>> >>>>>>>>> ; determine pitches >>>>>>>>> ; kcent, kamp pvspitch fsig, 0.1 >>>>>>>>> kcent pvscent fsig >>>>>>>>> >>>>>>>>> if (kcent > 0) && (kdiff > 0) then >>>>>>>>> kdiff /= 2 >>>>>>>>> krat1 = (kcent + kdiff) / kcent >>>>>>>>> krat2 = (kcent - kdiff) / kcent >>>>>>>>> else >>>>>>>>> krat1 = 1 >>>>>>>>> krat2 = 1 >>>>>>>>> endif >>>>>>>>> >>>>>>>>> ; create derived streams with shifted pitches >>>>>>>>> fsig2 = fsig >>>>>>>>> fbinL pvscale fsig, krat1, 0 >>>>>>>>> fbinR pvscale fsig2, krat2, 0 >>>>>>>>> >>>>>>>>> ; put it back together >>>>>>>>> aoutL pvsynth fbinL >>>>>>>>> aoutR pvsynth fbinR >>>>>>>>> >>>>>>>>> xout aoutL, aoutR >>>>>>>>> endop >>>>>>>>> >>>>>>>>> <daisyCsoundVersio.h> >>>> >>>>