Audio settings window cannot be closed [Vanilla 0.47-1]
@Hasselbalch It is maybe not "factory settings" but it is settings that should work with any system.
I would think that something must be different from your previous settings, but maybe not.
Once Pd is "confused", because it's settings do not match the system, the problem stops you setting something better...... hence my fix. Maybe the audio settings window is then not reliable (not showing it's actual state)?
Very pleased that it helped!
sampling rate impacting sound
Not entirely sure about the math of the whole thing, but what I know is that when you use Jack as your audio server, you don't change your audio setting in Pd, but only in Jack.
Check this, start Jack (in the image you posted, the sampling rate is at 48KHz), then start Pd and open its audio settings. Most likely it will read a 44.1KHz sampling rate. Don't change that, open a new patch and put a [samplerate~] connected to a [print]. Bang it and see what it prints. It should print 48000 and NOT 44100. This is because Jack's sampling rate is at 48000 and that's the sampling rate Pd is using, even though its settings read 44100.
What happens, I guess, is that when you change Pd's audio settings you force a different sampling rate between the client (Pd) and the server (Jack), which causes this frequency difference, which probably occurs due to two different samplings of the same frequency.
The only thing you should probably set in Pd's audio settings (if I'm not mistaken), is the number of channels of your sound card.
Uninstall from Ubuntu 16.04
@EEight It doesn't work, because it says that "El paquete «puredata» no está instalado", that puredata is not installed... isn't it rare?
anibal@anibal-ubuntu:~$ sudo apt-get purge pd [sudo] password for anibal: Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho Nota, seleccionando «puredata-core» en lugar de «pd» Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios. libgsl0ldbl ttf-dejavu-core Utilice «sudo apt autoremove» para eliminarlos. 0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 2 no actualizados. anibal@anibal-ubuntu:~$ sudo apt-get purge puredata Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho El paquete «puredata» no está instalado, no se eliminará Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios. libgsl0ldbl ttf-dejavu-core Utilice «sudo apt autoremove» para eliminarlos. 0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 2 no actualizados. anibal@anibal-ubuntu:~$
Then I did:
anibal@anibal-ubuntu:~$ sudo apt-get purge puredata-core Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios. libgsl0ldbl ttf-dejavu-core Utilice «sudo apt autoremove» para eliminarlos. Los siguientes paquetes se ELIMINARÁN: puredata-core* 0 actualizados, 0 nuevos se instalarán, 1 para eliminar y 2 no actualizados. Se liberarán 2.680 kB después de esta operación. ¿Desea continuar? [S/n] s (Leyendo la base de datos ... 242946 ficheros o directorios instalados actualmente.) Desinstalando puredata-core (0.46.7-3) ... Purgando ficheros de configuración de puredata-core (0.46.7-3) ... Procesando disparadores para man-db (2.7.5-1) ... anibal@anibal-ubuntu:~$ pd anibal@anibal-ubuntu:~$
...and I launched pd fine... The puredata-core corresponded to an earlier installation. Thanks!
Wavetable Drum Machine - repost
I uploaded this Wavetable Drum Machine last year but it became a casualty of a server issue (I hope it didn't cause it, it is a bit heavy). Anyway it didn't work under windows so while I was updating old drum machines I sorted this one out.
Here's the instructions, which are also under the Balwyn button.
Wavetable Drum Machine
8 x bank of 64 amplitude sliders, each bank runs in sync driven by a clock. The clock has 16 start/end settings plus a repeat cycles setting, there is also a Vradio block to set the return position.
The mixer block has 8 x level & pan settings with stereo to the dac~
The wave selector is for loading the individual wav files to the relevant drum line. The *.wav files must be stored in the 'waves' folder within the program folder and selected from there.
Saving must be saved to the 'pattern' folder within the program folder. Save the file with one word and no extension, a file of that name will be created for the pattern settings. Another file with the same name will also be created with the extension '.kit', this stores the names of the wave files.
Loading must be from the 'pattern' folder within the program folder. All the clock, pattern and wave files will be updated. select only the file WITHOUT the .kit extension, otherwise nothing will load and soundfiler errors will appear in the Pd window.
The clear button will clear all the amplitude sliders, set all the clock settings to 1 except BPM which is set to 500.
The supplied samples were recorded via Audacity from Qsynth. Ditch them for your own
randmodule - random ramps made easy! (vanilla)
My first contribution to the Patch Repo (and greater Pure Data community at large)!
In my own performance patch, I found myself re-creating this concept over & over again with slightly different parameters, and eventually realized I should just make an abstraction to save myself a lot of time & energy in the future.
The basic idea is simple—essentially just feeding [random] into [line] so that values will float around within a defined range at unpredictable intervals (without discontinuities between the ramps). You can set a center value and deviation percentage, so that the ramps will stick close to a value within the overall range. For example: playing sound files with [phasor~] and [tabread4~], I often like to add a touch of warping to the speed, so with this module I can send the phasor speed to argumentname-randcenter, set a range of values around the center (with small deviation %), and let the warping begin without having to redo all of the math.
Also, the module's output is sent to both the outlet and also to a [send] which is set by the creation argument, thus you can use the receive name of an existing slider in your patch as a creation argument, set the min/max and other preferred parameters, and it's ready to go.
Finally, I added the low clip % control to prevent the "jumpiness" that results when very low values of [random] are fed into the right inlet of [metro] (which can sound like discontinuities in certain applications). So, for instance, if your maximum rate in milliseconds (set by rate_range) is 3000, and you set low clip to 10%, none of the ramps will be faster than 300 ms. And, setting low clip % to 100% will result in a regular metro pulse at the specified maximum rate.
Hope you find it useful! Feedback/improvements welcome of course. (and apologies for the messy patching with the min/max/center calculations, still learning how to keep simple math from looking incomprehensible with cables running all over the place…)
Usefull sends messages to pd
@heyok I have a similar question: for pd .46-7 on a raspberry pi, do you know how to open the OSS-MIDI, or MIDI settings window?
I'm having a similar issue that I've been dealing with in this thread:
the "; pd midi-properties" message opens up the ALSA-MIDI or ALSA MIDI settings window, I'm trying to open the OSS-MIDI or MIDI Settings window.
I tried "; pd midi-settings" message.
Let me know if you have any ideas.
how to get current block size?
@phil123456 Hello Phil......
In windows you can get the current block size through the audio dialog like this (bottom right of "set audio parameters") but it has to open the window so you would need to close it automatically afterwards..........
You can set the bock size for your overall patch more easily from the same "set audio parameters" patch that I uploaded.
If you want to set the block size for a window then you send a "set" message to [block~]....... see its "help" file.........
udpsend and receive
@toddak to fix the missing dependancies run this in terminal.............
sudo apt-get update
sudo apt-get upgrade -f
In fact you should do all of these from time to time....... (not the bits in brackets)
sudo apt-get update
sudo apt-get upgrade
sudo apt-get upgrade -f (fix missing dependencies)
sudo rpi-update (firmware and kernel)
It is most likely that you need pulse audio for Pd to run....... I think that it is essential....
and maybe the dejavu fonts (uncertain)........ and so the command above should solve your problem and Pd should then run....
ALSO...... if it will still not run once the missing dependancies have been installed you should check that you are running an armhf system:...........
Run this command in terminal:
readelf -A /proc/self/exe | grep Tag_ABI_VFP_args
If the Tag_ABI_VFP_args tag is found, then you're running on an armhf system. If nothing is returned, then it's armel. To show you an example, here's what happens on a Raspberry Pi running the Raspbian distribution:
pi@raspberrypi:~$ readelf -A /proc/self/exe | grep Tag_ABI_VFP_args
Tag_ABI_VFP_args: VFP registers
This indicates an armhf distro, which in fact is what Raspbian is. On the original, soft-float Debian Wheezy distribution, here's what happens:
pi@raspberrypi:~$ readelf -A /proc/self/exe | grep Tag_ABI_VFP_args
Nothing returned indicates that the kernel is armel.
Automatically enabling audio and MIDI devices as they're plugged in
@lzr Yes, I had thought of using those tools to automate the setup, and it would be superb if audio at least could be made reliable. But there are other problems with audio especially. If you automatically select a device you cannot know whether it will run at the samplerate you have set, and especially you cannot know whether it can run with the currently set buffer. I suppose that if you know what device could be plugged (for your own set-up) then you can allow for that, but a universal patch will be impossible without parsing an on-line database. Even then, with different drivers for different os's and numerous possibilities for hard and software buffering.......?
I played around for a long time with the possibility. I also could not find a parameter for setting the block size (it can be set from an audio-dialog message, but not by parameters). Here is what I found and built to test what would work for windows.....
Semi-GOOD news for you (maybe)...... in windows when standard (not asio) drivers are selected the [listdevices( message (and the audiosettings window) does update as audio devices are plugged/un-plugged (see get_audio_parameters.pd in the zip)..
Problem with ASIO -> empty device list
@alex_d Hello Alex,
Yes, Pure Data is a little difficult (like a small child) about its audio settings. They have to be absolutely correct to avoid problems, and recovery from even slightly incorrect settings can be difficult.
You could run this batch file (unzip the whole folder and run the "bat" file)
Pd Fix (Windows).zip
That will set Pd to work (for the audio!!) as you found it when you first downloaded.
Now you should be able to select the RME asio driver. I would recommend using Asio4All though, as then you can add other asio devices and even your laptop speakers and microphone to your setup...........http://tippach.business.t-online.de/asio4all/
So now you should be able to select asio and set it up correctly. If the "Mediasettings" "Audio setup" window does not accept your settings immediately when you click "apply" or "ok" then they are wrong and you will be back where you started. Run the batch file again to get out of the mess.
Once you have it all working properly you should write down all of the settings. You can then start Pd from a batch file built specially for your RME setup, and another for when it is not connected.... come back to this (your) thread for help when you need it!