• oid

    @EEight Regarding room calibration, it may not matter, depends on the situation. People absorb sound and affect the room, if the room is going to be full of people and it is a small room all your work could do more damage than good, but if it is a big room and there will never be more than a few people in it there could be a real advantage.

    Regarding phase, phase cancellation could be a benefit if people are going to be walking through the room, increasing phase cancellation will make the sound more dynamic as they move through it. But lots of variables, depending on room size, what is being played, volume and a good number of other variables you may get more cancellation with the phase inversion on one channel. Sort of thing which takes some experimentation to figure out what works best for what you are doing.

    posted in patch~ read more
  • oid

    @Aliam.Sigsaly [switch~] is vanilla but just add the appropriate [declare] and your patches will work with most all flavors of pd. Your [> 0] -> [+ 1] -> [gate 2] and [sel 0 1] can be done more efficiently with just a [moses] and a couple [t b f]s. I also used [value] for the numbers to be interpolated between which makes things neater and allows you to use [send] to set the value. The issue with sliders are that they quantize to pixels, this is not much of an issue if your numbers are close together like in your example but if your number are 1, 2, 984 you start noticing issues, but often still good enough for the job.
    Untitled.png
    Interpolation.pd
    Edit: Also, if you rework the equation so $f5 is $f1 you get a bit more efficiency since it saves a type conversion and also makes things a little neater, fewer objects. Forgot to do that in my rework.

    posted in patch~ read more
  • oid

    @evankelo [iemguts/receivecanvas] might be a better option for dealing with the mouse if you are not using gem for other things as well, [iemguts/receivecanvas] only puts out mouse events when they change instead of constantly. We can make gemmouse act this way with [change] and we can further slow things down with a [metro] if need be. Here it is implemented with [iemguts/receivecanvas] since I do not have gem installed.
    Untitled.png

    posted in technical issues read more
  • oid

    @4poksy did you set the receive symbol of the bang?

    posted in technical issues read more
  • oid

    @atux Most likely who ever packaged pd for your distro did not include Jack, My bet would be that your distro has adopted PipeWire and there are still some bugs in the packaging process regarding it, maintainer made a faulty assumption or the distro does not understand Jack and how PipeWire works with it. If you have not tried 0.54 recently it could be worth giving it another try, they may have fixed it and a good amount of fun new stuff has been added since 0.52 like multichannel audio objects, many new methods for [file]. If they have not fixed it I think this would be worthy of a bug report. But worst comes to worst, pd is very easy to build from source.

    To make it work with 52.1 you can just set the path, remove [file patchpath] and connect the [loadbang] directly to the [symbol $1/images/*( message and replace the $1 with the path. Or you can use [openpanel] to select your path, replace [loadbang] with a [bng] and [file patchpath] with [openpanel].

    posted in technical issues read more
  • oid

    @atux 0.52 does not have [file patchpath], introduced with 0.54,

    posted in technical issues read more
  • oid

    @porres EEight, maybe whale-av (I believe he is a mod) but I don't think it is worth the time, no one will read past the first few posts of this thread and he probably will not stick around here anyways since he is giving up on Pure Data, ignoring him will solve the issue without mod intervention.

    posted in news read more
  • oid

    Just let the thread die, nothing of worth is going to come of it.

    posted in news read more
  • oid

    @alexandros Fixed, thanks All gui plug-ins must be in the form of name-plugin.tcl.

    posted in tutorials read more
  • oid

    And if you want to avoid having to redo this every time you update pd just create a file called recent-plugin.tcl and put set total_recentfiles 10 in it, save it somewhere in your path. This has irked me for ages but it never occurred to me that I could fix this.

    posted in tutorials read more
  • oid

    @fishcrystals At 2000 bpm I get under 13% cpu usage on wish with my cpu's governor set on powersave, I started up gimp and took the screen shot while it was running and gimp took no longer than normal to start up. This is on a X13 thinkpad. I think you got something going on or the Windows wish is not very good.
    Untitled.png

    posted in technical issues read more
  • oid

    @whale-av said:

    Stopping the [metro 10] that is banging [snapshot~] seems to relax Pd.

    I have no issues with this patch on linux, patch peeks out at 5% cpu when I adjust tempo and no lags or drop outs or issues editing. This could be a bug in the Windows version of pd or perhaps just an issue with how Windows schedules and manages jobs? I assumed it was one of those issues with ASIO that you help people with so often so did not respond before.

    posted in technical issues read more
  • oid

    @FFW We can get object arguments with [iemguts/canvasindex].
    Untitled.png

    posted in technical issues read more
  • oid

    @svanya I kept on fiddling and ended up doing a major rework, have yet to sort out the disconnect logic but it is more efficient and now connects when you are within 25 pixels of the left outlet instead of left inlet, it is more predictable in connecting and disconnecting in general. Also got rid of the cyclone dependency and made it so it only does its thing when you click on the abstraction and not on any click so no collisions between canvases. Also added a print too the right outlet of the [inlet~] so you can use it to probe non-audio non-float stuff. No idea when I will fix the disconnect, at this point it only disconnects when it makes a new connection, which is not a terrible setup and perhaps more ideal.

    mvu-2.pd
    Edit: Oh yeah, I forgot the multichannel stuff, had a plan for that but don't recall what it was.

    posted in abstract~ read more
  • oid

    Brought this up in another thread, noticed a simple refinement. If you replace [send watchvmu] with [iemguts/sendcanvas 1] you don't need the [namecanvas] and there is no worry about collisions if you are using this abstraction in multiple patches.

    posted in abstract~ read more
  • oid

    When you need to make connections to a subpatch you are doing dynamic patching in it is generally easier to just use [send]/[receive] and the like in place of [inlet]/[outlet].
    Untitled.png

    posted in technical issues read more
  • oid

    @jameslo I don't really know [clone] very well so I could be missing what you are going after, but can't you just use [clone]'s [set( method combined with -send msg instead of dynamic patching since all you are trying to do is set the index?

    posted in technical issues read more
  • oid

    @atux Your terminal example has the &&, second command will not be run unless the first command returns zero. In pd you just execute each command without care if the first has completed, delay gives enough time for it to complete. Generally if I need to do compound commands like these I either put them into scripts and just execute the scripts instead so the shell can handle it all or I use multiple instances of [command].
    Untitled.png
    Scripts are easy and reliable but it is not all right there easy to work with and see in the patch. Multiple instances of [command] gives a bit more flexibility since we can use the output of each individually and well as run it into the next {command].

    For your problem, is it always consistent? certain apps always display the behavior or is it a sometimes things? Does it work from the terminal in this case? Have you tried having it click twice? xev could be of help, it will provide a good test window for your mouse manipulation since all it does is print those events to terminal.

    Xnee is another program you might find useful for your project, it can record and playback mouse/keyboard events, might be more suitable for your needs than xdotool depending on what you are doing.

    posted in technical issues read more
  • oid

    @atux If it does not need to be the literal cursor you could fake a cursor. I just used a unicode arrow as the label for a white canvas and send it some movements I recorded with [iemguts/receivecanvas]. This way you can just use pd's own mouse movement and click messages in tandem with the fake cursor. Possible nice side effect is no collisions between programmed input and user input, you can always return the real cursor to where the user last left it.
    cursor.pd

    posted in technical issues read more
Internal error.

Oops! Looks like something went wrong!