From kennethflak at protonmail.com Mon Jun 12 22:59:47 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 05:59:47 +0000 Subject: [CM] Getting snd to work with conjure/neovim Message-ID: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Hi, I am trying to get the neovim plugin conjure (https://github.com/Olical/conjure/wiki/Quick-start:-Scheme-(stdio)) to talk to snd. So far I am succesfully opening snd whenever I open a .scm file, but I can't get the communication going between the two. Has anybody tried anything similar, or do you spot something in this that would make it possible? As far as I understand snd listens to stdin, so it _should_ be doable... At the moment I am running these lua commands on startup: vim.g['conjure#client#scheme#stdio#command'] = "snd" vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" Any help is much appreciated! Best, Kenneth -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club From chris.actondev at gmail.com Tue Jun 13 02:40:29 2023 From: chris.actondev at gmail.com (Christos Vagias) Date: Tue, 13 Jun 2023 11:40:29 +0200 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: There's a typo in "stdio" in the prompt pattern line. The docs AFAIU say that conjure will wait for the configured regexp till it can send more commands, so a misconfiguration there could explain the hanging/not sending commands On Tue, 13 Jun 2023, 08:00 Kenneth Flak, wrote: > Hi, > > I am trying to get the neovim plugin conjure ( > https://github.com/Olical/conjure/wiki/Quick-start:-Scheme-(stdio)) to > talk to snd. So far I am succesfully opening snd whenever I open a .scm > file, but I can't get the communication going between the two. Has anybody > tried anything similar, or do you spot something in this that would make it > possible? As far as I understand snd listens to stdin, so it _should_ be > doable... At the moment I am running these lua commands on startup: > > vim.g['conjure#client#scheme#stdio#command'] = "snd" > vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" > > Any help is much appreciated! > > Best, > Kenneth > > -- > Roosna & Flak - Contemporary Dance & Music > Web: roosnaflak.com > Code: {github,gitlab}.com/kflak > Mastodon: @kf at sonomu.club > > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > https://cm-mail.stanford.edu/mailman/listinfo/cmdist > -------------- next part -------------- An HTML attachment was scrubbed... URL: From kennethflak at protonmail.com Tue Jun 13 03:12:24 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 10:12:24 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: Hi Christos, Well spotted! Unfortunately correcting the error still doesn't result in anything showing up in the snd listener when I evaluate an expression in the .scm buffer. Of course, it's very possible that something's being sent, I just don't see the result? Or should the listener always mirror whatever input is received through stdin? K -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 11:40, Christos Vagias wrote: >There's a typo in "stdio" in the prompt pattern line. The docs AFAIU say that >conjure will wait for the configured regexp till it can send more commands, so >a misconfiguration there could explain the hanging/not sending commands > >On Tue, 13 Jun 2023, 08:00 Kenneth Flak, wrote: > > Hi, > > I am trying to get the neovim plugin conjure (https://github.com/Olical/ > conjure/wiki/Quick-start:-Scheme-(stdio)) to talk to snd. So far I am > succesfully opening snd whenever I open a .scm file, but I can't get the > communication going between the two. Has anybody tried anything similar, or > do you spot something in this that would make it possible? As far as I > understand snd listens to stdin, so it _should_ be doable... At the moment > I am running these lua commands on startup: > > vim.g['conjure#client#scheme#stdio#command'] = "snd" > vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" > > Any help is much appreciated! > > Best, > Kenneth > > -- > Roosna & Flak - Contemporary Dance & Music > Web: roosnaflak.com > Code: {github,gitlab}.com/kflak > Mastodon: @kf at sonomu.club > > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > https://cm-mail.stanford.edu/mailman/listinfo/cmdist > From kennethflak at protonmail.com Tue Jun 13 09:14:20 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 16:14:20 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: I suppose I need to get the prompt right in order for this to work. Doing something like cat test.scm | snd swarm_norm.wav where test.scm consists of (scale-channel 2.0) works as expected. So if I could only get conjure to send the correct prompt, then everything should be fine, I suppose? Looking at the s7 documentation it seems as though the prompt might be "\n> ", so I tried setting vim.g['conjure#client#scheme#stdio#prompt_pattern'] = "\n> " Which had precizely zero effect... Best, Kenneth -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 10:12, Kenneth Flak wrote: > >Hi Christos, > >Well spotted! > >Unfortunately correcting the error still doesn't result in anything showing up in the snd listener when I evaluate an expression in the .scm buffer. Of course, it's very possible that something's being sent, I just don't see the result? Or should the listener always mirror whatever input is received through stdin? > >K >-- >Roosna & Flak - Contemporary Dance & Music >Web: roosnaflak.com >Code: {github,gitlab}.com/kflak >Mastodon: @kf at sonomu.club >On 13 Jun 2023 11:40, Christos Vagias wrote: >>There's a typo in "stdio" in the prompt pattern line. The docs AFAIU say that >>conjure will wait for the configured regexp till it can send more commands, so >>a misconfiguration there could explain the hanging/not sending commands >> >>On Tue, 13 Jun 2023, 08:00 Kenneth Flak, wrote: >> >> Hi, >> >> I am trying to get the neovim plugin conjure (https://github.com/Olical/ >> conjure/wiki/Quick-start:-Scheme-(stdio)) to talk to snd. So far I am >> succesfully opening snd whenever I open a .scm file, but I can't get the >> communication going between the two. Has anybody tried anything similar, or >> do you spot something in this that would make it possible? As far as I >> understand snd listens to stdin, so it _should_ be doable... At the moment >> I am running these lua commands on startup: >> >> vim.g['conjure#client#scheme#stdio#command'] = "snd" >> vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" >> >> Any help is much appreciated! >> >> Best, >> Kenneth >> >> -- >> Roosna & Flak - Contemporary Dance & Music >> Web: roosnaflak.com >> Code: {github,gitlab}.com/kflak >> Mastodon: @kf at sonomu.club >> >> >> _______________________________________________ >> Cmdist mailing list >> Cmdist at ccrma.stanford.edu >> https://cm-mail.stanford.edu/mailman/listinfo/cmdist >> From kennethflak at protonmail.com Tue Jun 13 09:22:31 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 16:22:31 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: Ha! Figured it out! There is an additional setting that needs to be set, the value_prefix_pattern. So the complete setup for making snd work with neovim, using the conjure plugin, is now this: vim.g['conjure#client#scheme#stdio#command'] = "snd" vim.g['conjure#client#scheme#stdio#prompt_pattern'] = "\n>" vim.g['conjure#client#scheme#stdio#value_prefix_pattern'] = false I'm unreasonably excited about this. One of the main things that has held me back from learning snd properly is the ability to use my favorite editor. Next stop is to figure out how to get auto-complete working... I suspect this will be much less straightforward. Best, Kenneth -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 16:14, Kenneth Flak wrote: >I suppose I need to get the prompt right in order for this to work. Doing something like > >cat test.scm | snd swarm_norm.wav > >where test.scm consists of > >(scale-channel 2.0) > >works as expected. So if I could only get conjure to send the correct prompt, then everything should be fine, I suppose? Looking at the s7 documentation it seems as though the prompt might be "\n> ", so I tried setting > >vim.g['conjure#client#scheme#stdio#prompt_pattern'] = "\n> " > >Which had precizely zero effect... > >Best, >Kenneth > >-- >Roosna & Flak - Contemporary Dance & Music >Web: roosnaflak.com >Code: {github,gitlab}.com/kflak >Mastodon: @kf at sonomu.club >On 13 Jun 2023 10:12, Kenneth Flak wrote: >> >>Hi Christos, >> >>Well spotted! >> >>Unfortunately correcting the error still doesn't result in anything showing up in the snd listener when I evaluate an expression in the .scm buffer. Of course, it's very possible that something's being sent, I just don't see the result? Or should the listener always mirror whatever input is received through stdin? >> >>K >>-- >>Roosna & Flak - Contemporary Dance & Music >>Web: roosnaflak.com >>Code: {github,gitlab}.com/kflak >>Mastodon: @kf at sonomu.club >>On 13 Jun 2023 11:40, Christos Vagias wrote: >>>There's a typo in "stdio" in the prompt pattern line. The docs AFAIU say that >>>conjure will wait for the configured regexp till it can send more commands, so >>>a misconfiguration there could explain the hanging/not sending commands >>> >>>On Tue, 13 Jun 2023, 08:00 Kenneth Flak, wrote: >>> >>> Hi, >>> >>> I am trying to get the neovim plugin conjure (https://github.com/Olical/ >>> conjure/wiki/Quick-start:-Scheme-(stdio)) to talk to snd. So far I am >>> succesfully opening snd whenever I open a .scm file, but I can't get the >>> communication going between the two. Has anybody tried anything similar, or >>> do you spot something in this that would make it possible? As far as I >>> understand snd listens to stdin, so it _should_ be doable... At the moment >>> I am running these lua commands on startup: >>> >>> vim.g['conjure#client#scheme#stdio#command'] = "snd" >>> vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" >>> >>> Any help is much appreciated! >>> >>> Best, >>> Kenneth >>> >>> -- >>> Roosna & Flak - Contemporary Dance & Music >>> Web: roosnaflak.com >>> Code: {github,gitlab}.com/kflak >>> Mastodon: @kf at sonomu.club >>> >>> >>> _______________________________________________ >>> Cmdist mailing list >>> Cmdist at ccrma.stanford.edu >>> https://cm-mail.stanford.edu/mailman/listinfo/cmdist >>> From kennethflak at protonmail.com Tue Jun 13 10:23:58 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 17:23:58 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: Hmmm... seems my excitement was a bit premature. The first expression I evaluate works fine, but after that I am unable to get anything working. Need to do a bit more digging, it seems... -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 16:22, Kenneth Flak wrote: > >Ha! Figured it out! There is an additional setting that needs to be set, the value_prefix_pattern. So the complete setup for making snd work with neovim, using the conjure plugin, is now this: > >vim.g['conjure#client#scheme#stdio#command'] = "snd" >vim.g['conjure#client#scheme#stdio#prompt_pattern'] = "\n>" >vim.g['conjure#client#scheme#stdio#value_prefix_pattern'] = false > >I'm unreasonably excited about this. One of the main things that has held me back from learning snd properly is the ability to use my favorite editor. Next stop is to figure out how to get auto-complete working... I suspect this will be much less straightforward. > >Best, >Kenneth > >-- >Roosna & Flak - Contemporary Dance & Music >Web: roosnaflak.com >Code: {github,gitlab}.com/kflak >Mastodon: @kf at sonomu.club >On 13 Jun 2023 16:14, Kenneth Flak wrote: >>I suppose I need to get the prompt right in order for this to work. Doing something like >> >>cat test.scm | snd swarm_norm.wav >> >>where test.scm consists of >> >>(scale-channel 2.0) >> >>works as expected. So if I could only get conjure to send the correct prompt, then everything should be fine, I suppose? Looking at the s7 documentation it seems as though the prompt might be "\n> ", so I tried setting >> >>vim.g['conjure#client#scheme#stdio#prompt_pattern'] = "\n> " >> >>Which had precizely zero effect... >> >>Best, >>Kenneth >> >>-- >>Roosna & Flak - Contemporary Dance & Music >>Web: roosnaflak.com >>Code: {github,gitlab}.com/kflak >>Mastodon: @kf at sonomu.club >>On 13 Jun 2023 10:12, Kenneth Flak wrote: >>> >>>Hi Christos, >>> >>>Well spotted! >>> >>>Unfortunately correcting the error still doesn't result in anything showing up in the snd listener when I evaluate an expression in the .scm buffer. Of course, it's very possible that something's being sent, I just don't see the result? Or should the listener always mirror whatever input is received through stdin? >>> >>>K >>>-- >>>Roosna & Flak - Contemporary Dance & Music >>>Web: roosnaflak.com >>>Code: {github,gitlab}.com/kflak >>>Mastodon: @kf at sonomu.club >>>On 13 Jun 2023 11:40, Christos Vagias wrote: >>>>There's a typo in "stdio" in the prompt pattern line. The docs AFAIU say that >>>>conjure will wait for the configured regexp till it can send more commands, so >>>>a misconfiguration there could explain the hanging/not sending commands >>>> >>>>On Tue, 13 Jun 2023, 08:00 Kenneth Flak, wrote: >>>> >>>> Hi, >>>> >>>> I am trying to get the neovim plugin conjure (https://github.com/Olical/ >>>> conjure/wiki/Quick-start:-Scheme-(stdio)) to talk to snd. So far I am >>>> succesfully opening snd whenever I open a .scm file, but I can't get the >>>> communication going between the two. Has anybody tried anything similar, or >>>> do you spot something in this that would make it possible? As far as I >>>> understand snd listens to stdin, so it _should_ be doable... At the moment >>>> I am running these lua commands on startup: >>>> >>>> vim.g['conjure#client#scheme#stdio#command'] = "snd" >>>> vim.g['conjure#client#scheme#stiod#prompt_pattern'] = "> $?" >>>> >>>> Any help is much appreciated! >>>> >>>> Best, >>>> Kenneth >>>> >>>> -- >>>> Roosna & Flak - Contemporary Dance & Music >>>> Web: roosnaflak.com >>>> Code: {github,gitlab}.com/kflak >>>> Mastodon: @kf at sonomu.club >>>> >>>> >>>> _______________________________________________ >>>> Cmdist mailing list >>>> Cmdist at ccrma.stanford.edu >>>> https://cm-mail.stanford.edu/mailman/listinfo/cmdist >>>> From bil at ccrma.Stanford.EDU Tue Jun 13 10:25:51 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Tue, 13 Jun 2023 10:25:51 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: I'm glad you found that -- I was puzzling my way through the conjure docs -- I know nothing about conjure or neovim. Another possible problem might be which snd repl you're using. If you're running the no-gui snd, it's the code in repl.scm, but I'm not sure which repl is running in this case -- there's an ominous comment in repl.scm "TODO: restore support for the pipe case" -- I don't know what this refers to. In the Motif snd, XtAppAddInput in snd-motif.c makes it possible for snd to get input from stdin. From kennethflak at protonmail.com Tue Jun 13 10:35:18 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 13 Jun 2023 17:35:18 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: I'm using the Motif version of snd, I think (at least there's a gui, so I suppose that's what it is...), and stdio seems to work just fine if I send a command through a pipe to snd, which in turn spits out a return value to stdout. The main problem right now is how to make the repl work as it's supposed to, i.e. keeping the connection alive and being a, you know, repl :-). Does snd spit out anything like a prefix or exit code or something through stdout when evaluating an expression, in addition to the return value? -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 10:25, bil at ccrma.Stanford.EDU wrote: >I'm glad you found that -- I was puzzling my way through the >conjure docs -- I know nothing about conjure or neovim. >Another possible problem might be which snd repl you're >using. If you're running the no-gui snd, it's the code >in repl.scm, but I'm not sure which repl is running in >this case -- there's an ominous comment in repl.scm >"TODO: restore support for the pipe case" -- I don't >know what this refers to. In the Motif snd, XtAppAddInput >in snd-motif.c makes it possible for snd to get input >from stdin. > From bil at ccrma.Stanford.EDU Tue Jun 13 10:58:24 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Tue, 13 Jun 2023 10:58:24 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> > Does snd spit out anything like a prefix or exit code or > something through stdout when evaluating an expression, > in addition to the return value? I don't think so. Is snd still running after you get that value? Currently snd blocks SIGTTIN and SIGTTOU. From k.s.matheussen at gmail.com Tue Jun 13 11:27:25 2023 From: k.s.matheussen at gmail.com (Kjetil Matheussen) Date: Tue, 13 Jun 2023 20:27:25 +0200 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: On Tue, Jun 13, 2023 at 7:26?PM Kenneth Flak wrote: > > > Hmmm... seems my excitement was a bit premature. The first expression I evaluate works fine, but after that I am unable to get anything working. Need to do a bit more digging, it seems... > Maybe try to compile snd with the "--with-webserver" option? This makes snd into a webserver you can send data in and out of. Just start snd first (in a separate terminal), and then use "s7webserver_repl.py" as REPL for conjure. From snd at oddodd.org Wed Jun 14 03:11:21 2023 From: snd at oddodd.org (snd at oddodd.org) Date: Wed, 14 Jun 2023 12:11:21 +0200 Subject: [CM] Spectrogram usage Message-ID: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> Hi! I'm completely new to `snd`. And I am trying to get a spectrogram view similar to the one in the manual under OpenGL and SND. snd/grfsnd.html#sndandgl. When going into Color/Orientation and tweaking z/y/x scales etc. nothing happens. Though colors, data-cutoff and hop does things to my spectogram. Any hints to how I can replicate the view used in the#sndandgl and the #wavogram is much appreciated. Best of bests would be two complete "reproducers". Thanks. I am on `sway`, so not sure if this is a Wayland/SND situation or if the problem is that I am just no able to understand the manual :) best, NA -------------- next part -------------- An HTML attachment was scrubbed... URL: From bil at ccrma.Stanford.EDU Wed Jun 14 07:21:17 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Wed, 14 Jun 2023 07:21:17 -0700 Subject: [CM] Spectrogram usage In-Reply-To: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> References: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> Message-ID: <863e2fa0bb3203c86d6e5a00b88e77b7@ccrma.stanford.edu> Everything seems to work for me. I'm running on Ubuntu, using X, not Wayland I think (but I hope that doesn't matter). I built snd --with-motif --with-gl, opened a file (oboe.snd), clicked 'f' (for fft) and unclicked 'w' (for time domain wave), went to the Options:Transform options dialog, set spectrogram, then the View:Color/Orientation dialog and played around with all the widgets. I also went back to the time domain waveform, (set! (time-graph-type) graph-as-wavogram) in the listener, then tried various controls and colormaps. It sounds to me like maybe you were viewing the time domain waveform, not the fft. From kennethflak at protonmail.com Wed Jun 14 09:15:01 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Wed, 14 Jun 2023 16:15:01 +0000 Subject: [CM] Spectrogram usage In-Reply-To: <863e2fa0bb3203c86d6e5a00b88e77b7@ccrma.stanford.edu> References: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> <863e2fa0bb3203c86d6e5a00b88e77b7@ccrma.stanford.edu> Message-ID: Hi, I tested with both X and wayland, and it works for me on both platforms _provided the files are short enough_. Trying with a long-is file of 9 minutes 22 sec can't be viewed from different angles, whereas a file of 2m33sec is just fine. K -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 14 Jun 2023 07:21, bil at ccrma.Stanford.EDU wrote: >Everything seems to work for me. I'm running on Ubuntu, >using X, not Wayland I think (but I hope that doesn't >matter). I built snd --with-motif --with-gl, opened >a file (oboe.snd), clicked 'f' (for fft) and unclicked >'w' (for time domain wave), went to the Options:Transform options >dialog, set spectrogram, then the View:Color/Orientation >dialog and played around with all the widgets. I also >went back to the time domain waveform, > (set! (time-graph-type) graph-as-wavogram) >in the listener, then tried various controls and colormaps. >It sounds to me like maybe you were viewing the time >domain waveform, not the fft. > >_______________________________________________ >Cmdist mailing list >Cmdist at ccrma.stanford.edu >https://cm-mail.stanford.edu/mailman/listinfo/cmdist From snd at oddodd.org Thu Jun 15 02:45:57 2023 From: snd at oddodd.org (snd at oddodd.org) Date: Thu, 15 Jun 2023 11:45:57 +0200 Subject: [CM] Spectrogram usage In-Reply-To: References: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> <863e2fa0bb3203c86d6e5a00b88e77b7@ccrma.stanford.edu> Message-ID: <1686822357874.6.12890@webmail-backend-production-7c85988bfc-ll6rm> Hi Bil and Kenneth, I am viewing (f). I think I was going crazy. It just did not work. Until! I tried a mono file. then voila! It works. Is this "intended": That stereo files cant be angled and scaled in x/y/z? And could you confirm? N On 14 June 2023 at 18:15:01 +02:00, Kenneth Flak wrote: > > Hi, > > I tested with both X and wayland, and it works for me on both platforms _provided the files are short enough_. Trying with a long-is file of 9 minutes 22 sec can't be viewed from different angles, whereas a file of 2m33sec is just fine. > > K > > -- > Roosna & Flak - Contemporary Dance & Music > Web: roosnaflak.com > Code: {github,gitlab}.com/kflak > Mastodon: @kf at sonomu.club > On 14 Jun 2023 07:21, bil at ccrma.Stanford.EDU wrote: > > > Everything seems to work for me. I'm running on Ubuntu, > > using X, not Wayland I think (but I hope that doesn't > > matter). I built snd --with-motif --with-gl, opened > > a file (oboe.snd), clicked 'f' (for fft) and unclicked > > 'w' (for time domain wave), went to the Options:Transform options > > dialog, set spectrogram, then the View:Color/Orientation > > dialog and played around with all the widgets. I also > > went back to the time domain waveform, > > (set! (time-graph-type) graph-as-wavogram) > > in the listener, then tried various controls and colormaps. > > It sounds to me like maybe you were viewing the time > > domain waveform, not the fft. > > > > _______________________________________________ > > Cmdist mailing list > > Cmdist at ccrma.stanford.edu > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jingkaimori at gmail.com Thu Jun 15 04:50:57 2023 From: jingkaimori at gmail.com (jingkaimori) Date: Thu, 15 Jun 2023 19:50:57 +0800 Subject: [CM] libs7: inconsist naming of s7 optimizing registration Message-ID: Hi all, I found such definitions in s7 (about line 830): typedef s7_int (*s7_i_7p_t)(s7_scheme *sc, s7_pointer p); typedef s7_pointer (*s7_p_d_t)(s7_scheme *sc, s7_double x); Both function definitions has s7_scheme in argument list, but why name of the first definition contains "7", the second not? From bil at ccrma.Stanford.EDU Thu Jun 15 09:55:11 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Thu, 15 Jun 2023 09:55:11 -0700 Subject: [CM] libs7: inconsist naming of s7 optimizing registration In-Reply-To: References: Message-ID: <1344d77f97dde4cfd78ad02df5427017@ccrma.stanford.edu> The short answer is that it's an historical artifact, and I try not to change s7.h unless it's absolutely necessary. The long form: the s7_p_* procedures came first when I was developing the second level of the optimizer, and at that time I thought I'd always need the s7_scheme* argument, so there was no need to mention it. I later added the s7_i_* procedures (without the "7") as the optimizer grew. Then I ran into cases where the s7_i_* procedures needed a version that included the s7_scheme* argument, so I added the "7" to distinguish the two cases. The s7_p_* procedures always take the s7_scheme* argument, so I view it as redundant to insist on it in the name. I think s7.h stability very greatly outweighs almost any other consideration, including name consistency. From bil at ccrma.Stanford.EDU Thu Jun 15 10:12:07 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Thu, 15 Jun 2023 10:12:07 -0700 Subject: [CM] Spectrogram usage In-Reply-To: References: <1686737481569.6.17358@webmail-backend-production-7c85988bfc-fpjqh> <863e2fa0bb3203c86d6e5a00b88e77b7@ccrma.stanford.edu> Message-ID: <820939b1ea59fb49b58bf2b0d7b4f150@ccrma.stanford.edu> I just tried it with a file 80 seconds long, and it worked fine. If you want to use it with a multichannel file, set channel layout to "separate" -- you can use the channel layout item in the view menu, or (set! (channel-style) channels-separate) in the listener. Or maybe uncheck the "unite" button. From snd at oddodd.org Thu Jun 15 12:45:17 2023 From: snd at oddodd.org (snd at oddodd.org) Date: Thu, 15 Jun 2023 21:45:17 +0200 Subject: [CM] Spectrogram usage In-Reply-To: <820939b1ea59fb49b58bf2b0d7b4f150@ccrma.stanford.edu> References: <820939b1ea59fb49b58bf2b0d7b4f150@ccrma.stanford.edu> Message-ID: <1686858317554.6.200@webmail-backend-production-7c85988bfc-7cqvz> Ah thanks! On 15 June 2023 at 19:12:07 +02:00, bil at ccrma.stanford.edu wrote: > I just tried it with a file 80 seconds long, and it > worked fine. If you want to use it with a multichannel > file, set channel layout to "separate" -- you can use > the channel layout item in the view menu, or > (set! (channel-style) channels-separate) in the > listener. Or maybe uncheck the "unite" button. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From j_hearon at hotmail.com Tue Jun 20 13:36:07 2023 From: j_hearon at hotmail.com (James Hearon) Date: Tue, 20 Jun 2023 20:36:07 +0000 Subject: [CM] OT music Message-ID: Hi, I'm enjoying working with the instruments, synthesis gens, and making some of my own insts in Snd. I've posted a few pieces from the last couple of years made with Snd. Regards, Jim -------------- next part -------------- An HTML attachment was scrubbed... URL: From j_hearon at hotmail.com Tue Jun 20 13:37:48 2023 From: j_hearon at hotmail.com (James Hearon) Date: Tue, 20 Jun 2023 20:37:48 +0000 Subject: [CM] OT music Message-ID: https://www.ed6673.com/music/ Regards, Jim -------------- next part -------------- An HTML attachment was scrubbed... URL: From anders at avinjar.no Wed Jun 21 00:48:57 2023 From: anders at avinjar.no (Anders Vinjar) Date: Wed, 21 Jun 2023 09:48:57 +0200 Subject: [CM] OT music In-Reply-To: (James Hearon's message of "Tue, 20 Jun 2023 20:37:48 +0000") References: Message-ID: <87o7l9gsra.fsf@avinjar.no> Cool! From michael.gogins at gmail.com Wed Jun 21 07:01:41 2023 From: michael.gogins at gmail.com (Michael Gogins) Date: Wed, 21 Jun 2023 10:01:41 -0400 Subject: [CM] OT music In-Reply-To: <87o7l9gsra.fsf@avinjar.no> References: <87o7l9gsra.fsf@avinjar.no> Message-ID: Very interesting. Can we see the code? Best, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Wed, Jun 21, 2023 at 3:49?AM Anders Vinjar wrote: > Cool! > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > https://cm-mail.stanford.edu/mailman/listinfo/cmdist > -------------- next part -------------- An HTML attachment was scrubbed... URL: From kennethflak at protonmail.com Sat Jun 24 10:47:09 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Sat, 24 Jun 2023 17:47:09 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> Message-ID: Had a bit of time to dig further into the whole nvim/conjure/snd thing, and I might be making some headway here. Would it be reasonable to assume that snd executes commands from stdin as one-shot events? I do get a return value back to the repo on exit from snd, but not immediately after executing a command. Test code: (begin (open-sound "/home/kf/xylophone.wav") (scale-channel 0.1) (save-sound-as "/home/kf/xylophone-scaled-1.wav") (exit) ) This produces this log in conjure: ; -------------------------------------------------------------------------------- ; snd (started) ; -------------------------------------------------------------------------------- ; eval (root-form): (begin (open-sound "/home/kf/xylophone.wav"... ; debug: send "(begin (open-sound \"/home/kf/xylophone.wav\") (scale-channel 0.1) (save-sound-as \"/home/kf/xylophone-scaled-1.wav\") (exit) ) " ; debug: receive "err" ; debug: receive "out" ; process exited with code 1 ; -------------------------------------------------------------------------------- ; snd (stopped) If I omit the (exit) in the code, the processing happens, but snd blocks any further input until it exits (manually or programmatically). Best, Kenneth -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 10:58, bil at ccrma.Stanford.EDU wrote: >> Does snd spit out anything like a prefix or exit code or >> something through stdout when evaluating an expression, >> in addition to the return value? > >I don't think so. Is snd still running after you get that >value? Currently snd blocks SIGTTIN and SIGTTOU. > -- Roosna & Flak - Contemporary Dance & Music Web: roosnaflak.com Code: {github,gitlab}.com/kflak Mastodon: @kf at sonomu.club On 13 Jun 2023 20:27, Kjetil Matheussen wrote: >On Tue, Jun 13, 2023 at 7:26?PM Kenneth Flak wrote: >> >> >> Hmmm... seems my excitement was a bit premature. The first expression I evaluate works fine, but after that I am unable to get anything working. Need to do a bit more digging, it seems... >> > >Maybe try to compile snd with the "--with-webserver" option? This >makes snd into a webserver you can send data in and out of. > >Just start snd first (in a separate terminal), and then use >"s7webserver_repl.py" as REPL for conjure. From bil at ccrma.Stanford.EDU Sat Jun 24 15:15:37 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Sat, 24 Jun 2023 15:15:37 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> Message-ID: <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> [I forgot to "reply all"]: In the motif version, XtAppAddInput in snd-motif.c sets get_stdin_string as the function to call when input is available on stdin. That function tries to get a full string, then evals it. It doesn't return the value of the incoming expression -- you have to use the write or display functions to send that value to stdout or wherever. In your example, the "(begin ...)" is one form in scheme, so eval returns the last value of the things in the block. Since the form is being evaluated, it seems to me that get_stdin_string did its job. I'd omit the "(exit)" statement, then use gdb to see where your program is, and if necessary try to use gdb to grab the snd process, stop it and see where snd is. From kennethflak at protonmail.com Sat Jun 24 22:46:49 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Sun, 25 Jun 2023 05:46:49 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> Message-ID: <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> Hi Bill, Forgot to reply all in my previous email as well :-) Thanks for the gdb tip! Using the file test.scm: (begin (open-sound "/home/kf/xylophone.wav") (scale-channel 0.1) (save-sound-as "/home/kf/xylophone-scaled-1.wav") ) I get this output from gdb: (gdb) run [I forgot to "reply all"]: > >In the motif version, XtAppAddInput in snd-motif.c sets get_stdin_string >as the function to call when input is available on stdin. That function >tries to get a full string, then evals it. It doesn't return the value >of the incoming expression -- you have to use the write or display >functions to send that value to stdout or wherever. In your example, >the "(begin ...)" is one form in scheme, so eval returns the last value >of the things in the block. Since the form is being evaluated, it >seems to me that get_stdin_string did its job. I'd omit the "(exit)" >statement, then use gdb to see where your program is, and if necessary >try to use gdb to grab the snd process, stop it and see where >snd is. > >_______________________________________________ >Cmdist mailing list >Cmdist at ccrma.stanford.edu >https://cm-mail.stanford.edu/mailman/listinfo/cmdist From j_hearon at hotmail.com Mon Jun 26 10:30:19 2023 From: j_hearon at hotmail.com (James Hearon) Date: Mon, 26 Jun 2023 17:30:19 +0000 Subject: [CM] OT music Message-ID: Hi Michael, re: code ex. There was no overarching algorithm or AI. (I wish there were...things could be easier). Just using Bill's great variety of insts and gens to create sounds derived from the manual, and then mixing them. Also using Michael Scholz's inf-snd.el and emacs as editor. Here's an example. Best Regards, Jim ;instrument to create sounds (define (pulsed-envtest beg dur amp) (let ((start (seconds->samples beg)) ??????(stop (seconds->samples (+ beg dur))) (rnd1 (abs(mus-random 5))) (e (make-pulsed-env '(0 1 1 1 2 0) .01 1)) (frq (make-env '(0 1 1 0) :duration dur :scaler (hz->radians 70))) ??????(ampf (make-env '(0 0 .1 1 20 1 20.1 0) :duration dur :scaler amp)) ??????(gen1 (make-polywave 300 '(1 0.8 2 .07 3 .13))) ??????(rnd2 (make-rand-interp 150 (hz->radians 20))) ) (do ((i start (+ i 1))) ??????((= i stop)) (outa i (* (env ampf) (pulsed-env e (*(env frq)rnd1 ) ) ???????????? (polywave gen1 (rand-interp rnd2))))))) (with-sound (:play #t) (pulsed-envtest 0 6 .95)) ; then mixes... ;;///////////////////////////// ;;///////////////////////////// ;;STEREO vers. ;show files from a folder. load a file from the list. ;add a number of mixes at random times. ;render, getting ready to save file. ;;///////////////////////////// ;;///////////////////////////// ;the list of files (sound-files-in-directory "/opt/snd-23/test/") ;prints the list (let* ((mylist (sound-files-in-directory "/opt/snd-23/test/")))mylist) ;get the length of the list (let* (( mylist (sound-files-in-directory "/opt/snd-23/test/")) ;declare a list ) (length mylist) ) ;----------- ;sets all mixes to blue (set! (mix-color) (make-color 0 0 1)) ;----------- ;; OPEN A STEREO SOUND for inspection, if needed. (begin (open-sound "/opt/snd-23/test/mywave.wav") ) (play) (close-sound #t) ;-------------------------- ;displays the path, first filename, and opens the first file in the list ;then ADDS MIXES (let* (( mypath "/opt/snd-23/test/") ( mylist (sound-files-in-directory "/opt/snd-23/test/")) ;declare a list ( myframples 0) ( ranframples 0) ( startnum 1) ;*starting mix number* ( nummixes 5) ;*number of mixes (nummixes - startnum) ) (format #t " ~A\n" mypath) (format #t " ~A\n" (list-ref mylist 0)) (string-append mypath (list-ref mylist 0)) (open-sound (string-append mypath (list-ref mylist 9 ))) ;first opened snd (set! myframples (framples *snd-opened-sound*)) (format #t "~A\n" myframples ) ??????(do ((i startnum (+ i 1))) ?????? ((>= i (+ startnum nummixes))) (set! ranframples (random myframples)) (normalized-mix (string-append mypath(list-ref mylist i)) ranframples #t 0 0) ;note #t for stereo )) -------------- next part -------------- An HTML attachment was scrubbed... URL: From bil at ccrma.Stanford.EDU Mon Jun 26 10:53:55 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Mon, 26 Jun 2023 10:53:55 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> Message-ID: <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> > 0x00007ffff6e5bc0f in __GI___poll (fds=0x7fffffffd790, nfds=1, > timeout=59999) > at ../sysdeps/unix/sysv/linux/poll.c:29 I think that you're in XtAppMainLoop waiting for an event; that is, snd is waiting for you to send input etc. From kennethflak at protonmail.com Mon Jun 26 11:34:46 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Mon, 26 Jun 2023 18:34:46 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> Message-ID: On 26 Jun 2023 10:53, bil at ccrma.Stanford.EDU wrote: >> 0x00007ffff6e5bc0f in __GI___poll (fds=0x7fffffffd790, nfds=1, >> timeout=59999) >> at ../sysdeps/unix/sysv/linux/poll.c:29 > >I think that you're in XtAppMainLoop waiting for an event; >that is, snd is waiting for you to send input etc. > So it seems... however, when I run this in the terminal (no plugins or nvim magic of any kind, just pure ol' stdio): cat test.scm | snd I do get the expected result, as well as the expected return value. However, I can't see any way to do anything more after that. Typing in (scale-channel 10) and hitting enter has no effect. So yes, something is definitely waiting, but how would I go about sending anything into snd when it's in that state? Oh, I also tried the same thing with snd -noinit, so it shouldn't be a configuration issue. From bil at ccrma.Stanford.EDU Mon Jun 26 13:18:02 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Mon, 26 Jun 2023 13:18:02 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> Message-ID: <32dd82eccd56d8262d32179468044f59@ccrma.stanford.edu> This appears to be some pipe issue with stdin -- if you run Snd from a terminal, then type expressions in that terminal, get_stdin_string is called and the expressions are evaluated, etc. If you call Snd as a target of a pipe (or whatever the correct terminology is), it works once, but then stdin is always "ready to be read", so XtAppAddInput is in a loop calling it to no purpose (0 bytes read). If I add something like if (ioctl(fileno(stdin), FIONREAD, &n) == -1 || n == 0) return; and try to type input, it never gets read. The Motif docs say this sort of input is "unreasonable". From kennethflak at protonmail.com Mon Jun 26 21:32:00 2023 From: kennethflak at protonmail.com (Kenneth Flak) Date: Tue, 27 Jun 2023 04:32:00 +0000 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: <32dd82eccd56d8262d32179468044f59@ccrma.stanford.edu> References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> <32dd82eccd56d8262d32179468044f59@ccrma.stanford.edu> Message-ID: Oh, that's interesting. Makes me wonder if there could be a way to close and reopen the pipe each time I send something through that way. Might be horribly inefficient, though... Do you know how inf.el achieves its magic? Also by way of stdio, or is there something else going on there? From bil at ccrma.Stanford.EDU Tue Jun 27 02:27:35 2023 From: bil at ccrma.Stanford.EDU (bil at ccrma.Stanford.EDU) Date: Tue, 27 Jun 2023 02:27:35 -0700 Subject: [CM] Getting snd to work with conjure/neovim In-Reply-To: References: <6x5mkkvtzksjg7hziwtwonjbshrb3yyenvswuimjepzgvgmpgk@oabmm5q6kqgs> <17025fbe1c1acd8f713742ccc9cf0bf8@ccrma.stanford.edu> <8953510efa185560e7267f351d51cd54@ccrma.stanford.edu> <25go6v64cuz6ejq3537ujktwhli25lqfvtszq5qtreaeq2xbvh@urzycbvkl65r> <0fb56bc11754709af5e0f9616065c5d7@ccrma.stanford.edu> <32dd82eccd56d8262d32179468044f59@ccrma.stanford.edu> Message-ID: No, I don't know how emacs does it. It used to be going through the emacs file comint.el, if I remember right.