64 output channels
When using asio in xp, you have to specify the number of output (and input) channels in the asio dialog (in the media menu). I've already done 16 channels. Since asio is an abstraction above the physical hardware, i'd guess that 64 should also be possible. But i also know that the asio implementation of pd is not really its strongest point, so it's a bit trial and error. I just reinstalled windows (i had to replace my harddisk) and went for a winxp sp3. I just couldn't get my motu asio drivers working under pd, after switching back to sp2 there seemed to be no problem anymore.
NVidia puredyne vs vista
Hey
Once again I'm back on vista. My brief journey to puredyne goes something like this.
from puredyne
partitioned new hard drive with 4 partitions 1-swap , 2 ext4 200Gib, 1 NTFS 200GB . Copied Vista to NTFS partition with gparted(started to do this with dd but with new Gibabits stuff I was skeered but hey a platter is a platter and a cluster is a cluster right). Actually there was a 5th partition in there which was the vista restoration partition but I eventually deleted it for obvious reasons.
Removed old drive ,
took machine to ethernet connection with internet,
booted to vista ,
installed Norton virus scanner - only 1 virus, 2 tracking cookies, and one gain trickler after over a year with no virus scanner, Thats pretty good and shows you can be selective about what you download and where you visit on the web and not get any viruses.
Was trying to get windows movie maker to work with mov codec which it doesnt.
Installed auto updates for the first and only time. this took about 3 hours and still needed to install service pack 1, 2. Aborted trying to update win movie maker
****Problem 1***** MS movie maker does not work with GEM mov video output codec.
Installed latest Nvidia drivers for vista.
Woohooo OpenGl hardware acceleration GEM works so much better in vista now.
*****Problem 2********ASIO for all does not allow 2 applications to run with audio and midi at the same time. If I wanted to run Widi and play my guitar so puredata can receive midi input from guitar ASIO will not allow it but ASIO for all is the only way I can get latency down so this would be feasible.
Got frustrated.
Installed fresh copy of puredyne onto 2nd ext4 partition.
ran puredata audio latency good with fresh install. gem video bad.
used synaptics to install nvidia drivers. v185 I think.
ran GEm error no opengl config.
downloaded gdeb , flash player, google chrome, nvidia drivers from nvidia site.
installed gdeb from terminal, flash and chrome from gdeb.
rebooted to log in as root and iunstalled nvidia drivers.
woohoo hardware acceleration for opengl
******problem 3************
gem works great but audio glitches with puredata window visible.
when only gem window is visible i can unaudioglitchily move the mouse around to control same parameters that would normaly be controled with sliders in pd window.
Seems like before i upgraded nvidia video drivers hw:do o whatever it is, was listed in JackD as realtek HD Audio, now it is listed as NVIDIA HD Audio.
So Gem works great but not when Pd window is open and I think my audio drivers were replaced with Nvidia.
I would really like to get back to my patch and stop wasting time on these operating systems and hardware configurations I thought in the last 15 years all this hardware acelleration and autodetection would be figured out but no all we got is rc.0, rc.01, rc.02, rc, etc...... instead of just rc.d.
Ok I'm getting an error when I exit puredyne that says pid file not found is jackd running. anyone know what that means?
Also does anyone have a keymap for gem keyboard for linux, windows and mac so I don't have to record them.
Any suggestions about what to do about my ASIO problems in windows?
Any suggestions about my audio driver in Linux?
Any suggestions about my GEM mov video / windows incompatibilities?
I can import the mov video and audio to SF Acid 3.0 and output a 2Gb avi then import it into windows movie maker but this is crazy to do for a 7 minute 12fps 320x240 video.
Ahhhhhhhhh!
Any suggestions are welcome!
PS I believe someone could rewrite puredata's audio and video interface in assembly language to control their hardware before figuring out how to get these operating systems to do it.
Latency worse through ASIO than through MMIO
Hello brilliant creators of music,
In an attempt to reduce my sound synthesis latency I picked up a new sound card with ASIO drivers. When I got the card I re-configured PD to use the ASIO drivers, and I set my latency down to ~10 ms, and the audio sounded fine. However, when I tested the latency I found out that I get an extra 100 ms delay on top of PD's delay when I use the ASIO drivers. When I take this mystery latency into account, I get better latency when I use the MMIO drivers.
I noticed that PD uses pulseaudio for routing when it uses the ASIO drivers. I know that pulseaudio is supposed to be low latency, but could this be where my magic 100ms delay is coming from? If so, do any of you know how to fix it?
thanks!
MIDI latency in PD
Hi to all, this is my first post in this forum.
I'm trying to use PD's patches inside my setup, and now I'm struggling with the MIDI latency that PD creates.
First of all, I'm a drummer and I use a drumpad(DrumKat) to trigger samples on my laptop, so for me the latency is a 1st class problem.
I have two setups: one with Ubuntu 10.04(Kernel 2.6.33-29-realtime) + jack, and the other with OSX leopard + jackosx. The first one is the more tested.
I want to know the latency that PD creates between notein-noteout process.
To do this, I simply connected my drumpad to PD's midiin, PD's midiout to PD's midiin, and opened my patch(attached to this post).
If the patch is right, there is a link between jack's latency and PD's MIDI latency.
If I set jack's framebuffer to 256, I have 11.6 msec of audio latency and 5.8 ms of PD's MIDI latency.
If I set jack's framebuffer to 128, I have 5.8 msec of audio latency and 2.9 ms of PD's MIDI latency.
Is this correct? Is there a way to reduce MIDI latency without changing the audio latency of jack?
Thank you and sorry for my english.
Nicola
Fireface Asio trouble with pd 42.5
Hi all,
I used to have pd working perfectly well with my Fireface 400 (under windows xp). I was using an autobuild dating from 30-04-2010. Previous versions of pure data didn't recognize the asio fireface drivers.
But this evening I decided to update my version of pd to the last stable release. And here is my problem: pd see's the asio fireface drivers, but if I try to select it, no audio works... and in the "media" menu Asio dosen't appeared as ticked...
I would have liked to be able to install my previous version of pd, but I no longer have the exe file, and can't find it on the internet anymore (are old versions of pd kept somewhere?).
I have tried with the official stable 42.5 release, and with several autobuilds, and on 2 different windows machine (xp and 7) and allways get the same trouble.
the mmio drivers are available through pd but the latency is then way to big, and they only allow access to 2 ins and 2 outs... so I raelly need to get the asio driver working again.
I would greatly appreciate any help. thanks,
Ben
Battle With Latency pt. II
Hello there!
After one year of using pd, I still don't know how to set it up properly in WinXP. I've tried to solve the problem with "Jack for Windows", but without success. I didn't even managed to get any sound through Jack. Maybe it's because I'm not good in terms such as "compiling", "distros", kernell", "dll" etc. Finally I've abandoned the Jack solution, partially because there's no step by step configuration guide for average pc user.
For the last week or two, I'm playing with various startup flags in pd, hoping those "hidden" settings could lead to lower latency performance, but nothing again. I created a MS-DOS batch file, following the instructions from here: http://puredata.info/docs/manuals/pd/x3.htm#s1.1
The author of documentation says:
"Using an RME Hammerfall, and specifying "-audiobuf 5 -blocksize 32" I was able to get about 7 milliseconds of throughput delay (as measured by the latency-measurement patch in 7.stuff/tools.) As always, you can specify "-channels" to any even number up to the maximum (32, I think) or can specify channel count separately for input and output (-inchannels and -outchannels)."
Coincidentally, I own RME HDSP 9652 too, but still cannot get lower than 35 msecs of delay without crackling. What's even worse, when I choose "ASIO Hammerfall DSP" for in/out device, pd ignores that, leaving "ASIO(via portaaudio)" option unchecked, which means, I cannot use that device at all.
If I choose "standard MMIO" device and HDSP ADAT 1+2 in/out pair, 50 msecs is the lowest possible glitch-free delay, and I get myriad of "resyncing audio" messages on pd console.
If I choose "Microsoft Sound Mapper" as device, I'm limited to only two channels of input/output and, still too high, 35 msecs of delay.
And finally, when I check "ASIO4ALL v2", only two channels of i/o again, but this time with significantly more acceptable delay time. (latency = 5.6 msecs according to pd's measuring patch, which is more than ok for me).
I'm on WinXP SP3, Intel Core 2 Duo @ 3.16 GHz, 3.25 GB RAM and I'm very happy with the results I get from other audio software.
Switching to another OS or Max/MSP is not an option for me. Simply, I'm trying to get multichannel i/o option with low latency.
Is there anybody who can help me tune my pd settings?
Thank you very much for your help.
sinewave
Monome workaround
This is very user-specific but I'll post it anyway, maybe it could be useful for other people facing the same issues.
So, I have a Monome which was built by a friend of mine. It works smoothly with all Max/msp apps such as MLR, AprShift and etc, but when it comes to Pd all the data gets messy.
What happens is that "led_row" and "led_col" messages sent by Puredata returns weird things in Monome. Turns out that some good fellas at the Monome forum told me that probably the logic board is flipped. Since I'm not by any means opening my Monome ('cause if I ruin it I won't be able to give my friend to fix it) I created a rather simple abstraction that "translates" the messages in a way that the weird one can understand and interpret the way they have to behave.
So now is just a matter of adding this tiny abstraction right after the regular messages and works smoothly.
Maybe the code is not the greatest thing in the world but after all it was a good exercise.
So here it goes if someone faces the same issue one day
Export patch as rtas?
@Maelstorm said:
If you're on OSX, jack can be used as an insert plug-in so you can avoid the separate tracks, but you still get the latency.
which you can, depending on your host, eliminate by setting the track delay for the track with the plugin. So if the buffer is 512 sample/11.82 ms then set the delay to that and it should be spot on.
I've had the whole Jack graph latency explained to me numerous times by Stephane Letz and it still doesn't go in.....Heres what he told me...
> > Its the Pd > JAck > Ableton latency. (Ableton has otoh 3 different
> > ways of manually setting latency compensation - I'm just not very
> > clear on where to start with regards to input from JAck)
> >>>>
>
> This is NO latency introduced in a Pd > JAck > Ableton kind of
> chain; the JACK server activate each client in turn (that is Pd *then*
> Ableton in this case) in the *same* given audio cycle.
>
> Remember : the JACK server is able to "sort" (in some way) the graph
> of all connected clients to activate each client audio callback at the
> right place during the audio cycle. For example:
>
> 1) in a sequential kind of graph like IN ==> A ==> B ==> C ==> OUT,
> JACK server will activate A (which would typically consume new audio
> buffers available in machine audio IN drivers) then activate B (which
> would typically consume "output" just produced by A) , then activate
> C , then produce the machine OUT audio buffers.
>
> 2) in a graph will parallel sub-graph like : IN ==> A ==> B ==> C
> ==> OUT and IN ==> D ==> B ==> C ==> OUT (that is both A and D are
> connected to input and send to, then JACK server is able to
> activate A and D at the same time (since the both only depends of IN)
> and a multi-core machine will typically run A and D at the same time
> on 2 different cores. Then when A *and* D are finished, B can be
> activated... and so on.
>
> The input/output latency of a usual CoreAudio application running
> is: driver input latency + driver input latency offset + 2
> application buffer-size + driver output latency + driver output
> latency offset.
>
this next part is the important bit i think...
> For a graph of JACK clients: driver input latency + driver input
> latency offset + 2 JACK Server buffer-size + ( one extra buffer-
> size ) + driver output latency + driver output latency offset.
>
> (Note : there is an additional one extra buffer-size latency on OSX,
> since the JACK server is running in the so called "asynchronous" mode
> [there is also a "synchronous" mode without this one extra buffer-size
> available, but it is less reliable on OSX and we choose to use the
> "asynchronous" mode by default.])
>
> Stephane
>
Monome again
Ok.
will a little bit of help and some thinking I managed to get Pd and monome talking.
I can send information to monome and i can trigger bangs on Pd, half way there.
now all I need is a little bit of help assisigning monomes buttons to individual sliders / bangs / etc. at the moment all i can get to work is a bang when I hold the buttons down (if that makes any sense)
I hold down a button on monome and the bang (my patch) starts, I release the button and the Bang (and my patch) stops.
how do I get the buttons and my bang to stay on. is there special code to do this.
basically all I want to do is assign buttons to individual bangs, much like the way I would have done this with a midi keyboard.
please help.
oh and if anyone is needing any help setting up a monome with Pd i posted a comment on the monome forum listing what i did.
just look for my name.
C
Portaudio vs some ASIO drivers compatibility (Windows only)
Hello,
I recently noticed that recent versions of pd (both vanilla and extended) and other portaudio-based applications (e.g. Audacity) don't see some ASIO drivers: namely, the RME Fireface 800 and Reaper's ReaRoute ASIO drivers.
I found several posts in different forums around about both issues, and I've drawn the following conclusions:
- the RME driver ASIO driver simply doesn't work, and nobody actually knows why. However some people report to get ultra-low latencies (3ms) with the MME (or MMIO as in pd) drivers. Moreover, they can use the multi-in multi-out capability of the RME only when set at 48000 Hz (but this is another story...) I will ask RME directly about these issues.
- the ReaRoute ASIO driver is blacklisted by portaudio (as of v19) and therefore discarded...
This is the most urgent issue because I need to route audio from pd to Reaper with the lowest possible latency/cpu load.
Please help!