• whale-av

    @endy If your tracks are numbered...... 1.wav, 2.wav etc. then it is easy without externals.
    I built this years ago...... random_shuffle_cart.zip and it used externals to solve the problem of accessing and playing by filename for any filename in any folder.
    The external libraries required..... tof... and ext13.
    cart5.pd is the main patch.

    There are new tools though in Pd Vanilla...... have a look at the [file] object.
    It will be possible to use that to replace those externals and make the patch Vanilla.
    David.

    posted in technical issues read more
  • whale-av

    @Muology Replying to your chat.....

    Dynamic patching.....
    This shows the basics......... 0.all_msg.pd

    All objects, messages, arrays GUI's....... and patches...... can be "put"... and connected or disconnected.
    Here.... https://puredata.info/docs/developer/PdFileFormat you will find more about the arguments they will accept.

    But the easiest way to use dynamic patching is to make your own abstractions...... patches that you will use as "modules".... that you then dynamically place and connect within another patch window.....
    Here is a fairly complicated example....... https://forum.pdpatchrepo.info/topic/12808/minx that builds a mixer with a variable number of in and out channels, and then uses connect and disconnect messages to change the input and output patching to the soundcard from controls in the "Channels" and "Busses" windows.
    The creation of the patch is controlled in minx_run.pd
    David

    posted in technical issues read more
  • whale-av

    @Muology No idea how efficient it is...... but it "works"...... factorial.pd
    But there is still a limit...... 198 is it...... in 32-bit extended
    If an external exists that will be more efficient.
    And [expr] is probably more efficient than my patch, but its limit is 33..... in extended.
    Vanilla 0.53 will not show a result for either with input > 34...... a big :star: for extended.and :thumbsdown: for vanilla.
    Most maths functions are built into [expr]........ and fact() is among them........
    To see them all open Pd/doc/8.topics/expr.html in your Pd folder....:wink:
    David.
    Capture.JPG

    posted in technical issues read more
  • whale-av

    @henrique99sl I understand your concern.... but everyone in your class will currently be googling like a crazy person.
    If @seb-harmonik.ar were to post a patch they would find that too and all your homework would be identical.

    I suggest...... because it's not easy to get started..... that you download Automatism...... https://www.automatonism.com/the-software

    READ the instructions carefully...... a new copy of the automatism folder for each project or you will get in a mess..... copy the folder to a new one.... just for your project.... and keep the original clean and so ready to copy when you start a new project.

    I don't use it...... but I believe that it will contain all the modules..... patches...... that you could use to construct your synth...... 8-stepts..... adsr....... bob-filter...... etc.
    You could use any of the modules (in patch_editor_abs) in the patch that you have already made if you wish.
    It seems to be Vanilla..... no externals....
    David.

    posted in extra~ read more
  • whale-av

    @KMETE Try delaying the loading of the files in the patch....... [loadbang] [delay 5000 or some suitable value ]
    David.

    posted in technical issues read more
  • whale-av

    @KMETE Yes you will need to change the sample rate or they will play at the wrong speed.
    There used to be...... and must? still be a website for soundcard compatibility with the RPI.
    If the RPI can connect to the soundcard then the pins (connections) will appear in the Pd media settings.
    There are a few very active Raspberry forums on the web...... a good place to search......
    David.

    posted in technical issues read more
  • whale-av

    @Kate-O Welcome to the forum.....

    It works for me.......... but the value to be updated (repeated when it matches) needs to be banged into the right inlet of [==]
    Capture1.JPG

    If you want only values greater than the last output use [>= ]...... greater than or equal......instead of [==]....... as with [==] the spigot is only open when the input equals the last output.
    David.
    Capture.JPG

    posted in technical issues read more
  • whale-av

    @myQwil I stopped receiving BBC radio stations on my internet radio earlier this year,
    The BBC had decided to drop MP3 Shoutcast and only stream DASH and HLS.
    I spent this evening searching forums for stream comversion backends for the RPI, and then remembered your external.
    I don't live in the UK so I had to modify the BBC Radio4 URL slightly, and I now have a zero latency livestream of HLS in Pd on my laptop.
    Next stage is to stream the output from Pd to the internet radio.
    Then to stop playback as the client disconnects.
    Then to run the patch permanently on my RPI.
    It really is a very useful external.
    Thank you,
    David.

    posted in extra~ read more
  • whale-av

    @zigmhount If a devicename is reported in the Pd midisettings dialog (I would expect that to be the case) then you can choose the midi ports to use for each Pd instance within a patch instead....... https://forum.pdpatchrepo.info/topic/13217/save-and-recall-midi-settings-in-a-project
    This one seems a little easier to use........ set_midi-order.pd
    If there are spaces in the names you can convert the whole name to a symbol that contains spaces with this.... concat.zip
    David.

    posted in technical issues read more
  • whale-av

    @noahdeetzers gop_switch.zip
    Changes the properties of the graph on parent (GOP) window of a sub-patch or an abstraction.
    This lets you "see" different parts of that patch in the parent patch, by moving the window.
    Connecting wires are not shown in the GOP window, so the GUI is "clean".
    In Pd extended only the "donecanvasdialog" method lets you change the values of GUI's (showing through the window) from the parent patch.
    In recent Pd Vanilla the "coords" method lets you change the GUIs through the window, and works better than the "donecanvasdialog" method, which sometimes moves the GUIs in the window and creates a very messy view. That could be OS dependant..... I am unsure...
    David.

    posted in pixel# read more
  • whale-av

    @Blindekinder I like to have arrow heads on connections in edit mode..... cordarrows-plugin.tcl
    tcl plugins must be loaded as Pd starts...... so just put them in one of Pd's standard paths, or a path set in "Preferences" "Paths"
    David.

    posted in technical issues read more
  • whale-av

    @esaruoho The simple immediate solution is [sigmund~] which is a standard object in Pd.
    Single frequencies give the best results but complex audio can be analysed for the strongest frequency .
    David.

    posted in technical issues read more
  • whale-av

    @jameslo There can be spaces in the address.... the [oscformat] help is full of them between symbols.
    Pretty sure [set patch 1( will correctly set the header although I cannot test with Qlab.
    I think the "backslashes" were always in the workings of Pd..... just that up to version 0.4? they were totally reserved.....we could not type them (as is also the case in this forum) and they were not displayed.
    David.

    posted in technical issues read more
  • whale-av

    @esaruoho If your array max level is 1 and min level is 0 then you would multiply the "played" array by your [osc~] output using [*~].
    So you need to "play" the array at your required speed.
    If you want to do that once then you can use [line~] or [vline~]
    If you want to do it repeatedly then [phasor~] ......

    You will need to know the sample size...... the length of the array.... so that the [phasor~] output (0 to 1) plays the entire array.... as below........
    David.
    Capture.JPG

    posted in technical issues read more
  • whale-av

    @esaruoho I might have made it too hungry...... updating every millisecond.
    If you change the [line 0 1] inside [fade] to something like [line 0 250] it will output the list every 250ms which might be fast enough for your purpose, but stop dropouts.

    But if you are adding the outputs of the oscillators together you could use just one [line] or [line~] to set the final summed level at 1 as [else/multi.vsl] sets their volumes, and then ramp down the summed level to zero in the required time...... which will be much more efficient.
    David.

    posted in technical issues read more
  • whale-av

    @esaruoho Split the message using [unpack] and then use [line] to decay each output ... and then [pack] to put the list back together?
    this.zip ... is not very elegant, but fairly simple.....
    David.

    posted in technical issues read more
  • whale-av

    @seb-harmonik.ar So will the conclusion be (especially for the OP).....?
    An Array (or within [clone] many small arrays) for indexed data storage.
    [text get] by index (direct access to one line) for translation to symbols.
    David.

    posted in technical issues read more
  • whale-av

    @AndreasA You could probably round your data...... as you are always close to an integer (no 2 3 4 5 6 or 7).....
    [expr int (0.5 + $f1) ]
    .... maybe a [/ 10] first and a [* 10] after for the data we see....... but of course that is for a particular speed..... so maybe not?
    You could also set a window large enough to accept changes as the speed varies, but filter numbers that are out of range (those around 20 in this case... or is it those around 10?) and reject them.
    David.

    P.S. If still available for your platform..... the mapping library had a [smooth] object which I have used in the past to stabilise moving object data......
    Capture.JPG

    posted in technical issues read more
  • whale-av

    @KMETE No access to minimise buttons..... the window is larger than the screen.
    You might be able to resize the window (right-click the menu bar and resize and drag a corner) and then save the patch.
    If not, you can send a message to the window in Pd..... https://forum.pdpatchrepo.info/topic/14404/disappearing-patches/4
    and then resave thepatch.

    The [scope~] object looks strange because it is showing its arguments at the top of its window.
    No idea why.
    One of the arguments probably controls its gop (graph on parent) and it could well be the first "0"' argument (looking at the C code and guessing).
    You can try changing it to 1 or 2 (in edit mode) .... and they might disappear.
    David.

    posted in technical issues read more
  • whale-av

    @cfry Why it might not help much.....https://lists.puredata.info/pipermail/pd-list/2012-02/094145.html
    What happens as Pd connects to the Gui.........https://puredata.info/docs/developer/PdStartupOrder

    Command flags........ https://puredata.info/docs/faq/commandline/?searchterm=flags
    You will need to start Pd with the -guiport or the -guicmd flags depending on how you will achieve your aim.
    There is help mentioned at the bottom of the page for that...... here is a direct link....... https://lists.puredata.info/pipermail/pd-list/2007-08/052604.html ...... but it's not very helpful.

    Everything would have to pass through a network connection though...... so I am not sure that things will improve.

    If your VNC connection is stable you can edit your patch through the VNC viewer.
    When you want to run it then you can start Pd on the RPI with the -nogui flag (see the command link above) which will help.
    David.

    posted in technical issues read more
Internal error.

Oops! Looks like something went wrong!