Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Wednesday 10 February 2010, at 22.45.40, Emanuel Rumpf xb...@web.de wrote: 2010/2/8 Paul Davis p...@linuxaudiosystems.com: not all PCs can do it. but its simply not true that PCs can't do it. Accepted. When running any 32 polyphonic hw synth, it is able to do those 32 voices anytime. When running out of the voices, something will happen (e.g. voice killing/stealing). But it won't start any noise. Something to concider Would a check for guaranteed voices be possible for a soft-synth ? Any polyphonic synth will have to check for voices as part of the allocate voice action for any noise started, so the question seems somewhat odd to me. Are you thinking of voice stealing logic? I would think most softsynths have this. The alternative would be to dynamically allocate voices as needed, and I think some actually do this - but this will be troublesome in a realtime implementation, unless you're on a full realtime OS using physical RAM only. You may pre-allocate and lock a huge block of memory for the synth, but then you still have a limited voice count of sorts... That would require an extensive deterministic behavior, I think. Instead of noise generation, maybe some sort of interpolation/silence for sample values could be used, when running out of processing power. There are various solutions, such as stealing the least audible note, or just grabbing the oldest playing note. Figuring out which note is *actually* the least audible is a lot trickier than it might seem at first, so any real implementation would be an approximation at best. Anyway, I don't think there's much of a difference between hardware and software synths in this regard. (They all do an equally bad job of it! ;-) After all, most hardware synths are actually one or more DSPs and (sometimes) MCUs running some sort of software, and even real hardware synths will have an MCU or logic circuitry to implement this. -- //David Olofson - Developer, Artist, Open Source Advocate .--- Games, examples, libraries, scripting, sound, music, graphics ---. | http://olofson.net http://kobodeluxe.com http://audiality.org | | http://eel.olofson.net http://zeespace.net http://reologica.se | '-' ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, 2010-02-04 at 20:30 +0100, Emanuel Rumpf wrote: 2010/2/4 Arnold Krille arn...@arnoldarts.de: On Thursday 04 February 2010 18:50:28 Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yes. Yes, I have. I believe Ken Restivo, Atte Andre Jensen and many others too. Reliably ? At a latency below 10 ms ? Which synth ? I don't intend to mistrust you, but I remain disbelieving for now. :-) Linuxsampler is well written and reliable, but when playing intensely, it xran too here. I've been working for a while in a piece for real-time synthesis / sample playback and a piano controller (and pedals, etc, etc). I normally play with my laptop, a dual core lenovo t61 running the latest rt patched kernel and: linuxsampler at 96 voices max (4 different piano samples), two instances of the supercollider synthesis engine doing synthesis and spatialization, a program in supercollider controlling the whole thing (including the GUI feedback screen for the performer), jconvolver for convolution reverb and ambdec for ambisonics decoding. All with a PCMCIA RME card and a Multiface running at 128x2 48KHz. It can glitch but if it does it is because it has actually run out of cpu (and I have had a couple of instances in rehearsal where I'm playing textures so thick that the supercollider scheduling queue has filled up with not so good results, argh :-) All in all quite reliable (I played an earlier version of the piece in last year's LAC). -- Fernando We have dedicated hardware for graphics, why not for audio ? There are manufacturers selling dedicated PCI-cards to do VST-plugin work and free your cpu of that. Interesting, although uneligible for my laptop.. But whats the purpose of running some piece of (almost) generic software on generic platforms, when you still need specialised hardware? Being generic means (for the platform) to support a bunch of specialised applications. It doesn't bother much to buy additional hardware, in order to make the system more generic, but not being able to make it generic enough for being able to use it for a cerain specialised application. We are used to extend the systems usability through additional peripherials such as graphic-cards, audio-cards, printers That's what has made it a success. Of course you can buy dedicated audio-hardware. Its called keyboards and synths and mixers and effects (outboard). These make me lose the generality. But isn't it easier to have it all in software and carry it around on your pc/laptop/usb-stick? It absolutely would, if it gave me the same reliability. Please give us some pointers to help you improve performance on your definitely un-tuned and probably mis-configured system before making our work bad in general. I'm not making it bad. I'm even searching for a way to make it more valueable by making it more usable. I don't think my system is so badly configured - how to measure ? It's not the most recent hardware, I admit. Have fun, Thanks ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Wed, Feb 10, 2010 at 10:32:48AM -0800, Fernando Lopez-Lezcano wrote: On Thu, 2010-02-04 at 20:30 +0100, Emanuel Rumpf wrote: 2010/2/4 Arnold Krille arn...@arnoldarts.de: On Thursday 04 February 2010 18:50:28 Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yes. Yes again. I've been working for a while in a piece for real-time synthesis / sample playback and a piano controller (and pedals, etc, etc). I normally play with my laptop, a dual core lenovo t61 running the latest rt patched kernel and: linuxsampler at 96 voices max (4 different piano samples), two instances of the supercollider synthesis engine doing synthesis and spatialization, a program in supercollider controlling the whole thing (including the GUI feedback screen for the performer), jconvolver for convolution reverb and ambdec for ambisonics decoding. All with a PCMCIA RME card and a Multiface running at 128x2 48KHz. It can glitch but if it does it is because it has actually run out of cpu (and I have had a couple of instances in rehearsal where I'm playing textures so thick that the supercollider scheduling queue has filled up with not so good results, argh :-) All in all quite reliable (I played an earlier version of the piece in last year's LAC). Indeed. Live, third order AMB surround, and having heard the recording a hundred times I haven't noticed any problem with it (except for those cats running on the keyboard). I'm using Linuxsampler, piano samples, playing anything between Bach and Ligeti. Add jconvolver doing real time convolution with a concert hall IR. Typical CPU use for this is below 20% on a seven year old P4 with just 512M ram. Standard unpatched kernel, 5 ms latency. Never heard a glitch. Ciao, -- FA O tu, che porte, correndo si ? E guerra e morte ! ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
2010/2/8 Paul Davis p...@linuxaudiosystems.com: not all PCs can do it. but its simply not true that PCs can't do it. Accepted. When running any 32 polyphonic hw synth, it is able to do those 32 voices anytime. When running out of the voices, something will happen (e.g. voice killing/stealing). But it won't start any noise. Something to concider Would a check for guaranteed voices be possible for a soft-synth ? That would require an extensive deterministic behavior, I think. Instead of noise generation, maybe some sort of interpolation/silence for sample values could be used, when running out of processing power. Kind regards - - E.R. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Sun, Feb 07, 2010 at 12:18:51AM +0100, Jens M Andreasen wrote: snip example of sse assembly versus Cuda In which one of those two codepaths would you like to spend your spare time? Which one looks the most civilized? Just wondering ... snip a bit more [OK... That might be enough CUDA advocacy for tonight? :-D] The cuda stuff is impressive, and may well be the way of the future. However, I don't think it is generally right for linux audio until I can write cuda code (or a similar language) and have it run on Nvidia cards, ATI cards, at least one card using open source drivers, and plain CPUs using SSE (and/or threading). It seems that any quarter now, OpenCL may be close to meeting the qualifications I set (use with Nvidia, ATI, free drivers, and CPU only), however, I don't believe that the OpenCL language is as nice or easy to use as Cuda. Is there any work on an open source clone of Cuda? Obviously any individual programmer can do what they want, but I believe that as a community, GPUs are not yet ready for us to be using them, not strictly for technical reasons, but primarily for freedom and interoperability reasons. I am really eager to see this change though. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
2010/2/8 Joshua Boyd jdb...@jdboyd.net: However, I don't think it is generally right for linux audio until I can write cuda code (or a similar language) and have it run on Nvidia cards, ATI cards, at least one card using open source drivers, and plain CPUs using SSE (and/or threading). It seems that any quarter now, OpenCL may be close to meeting the qualifications I set (use with Nvidia, ATI, free drivers, and CPU only), Actually OpenCL seems to already be supported, (in new hardware only ?), by the large graphic players: http://www.nvidia.com/object/cuda_opencl.html (there's a lot of docu here too !) http://developer.amd.com/gpu/atistreamsdk/pages/default.aspx http://www.khronos.org/opencl/ There's also the CT Technology from Intel (aquired from RapidMind), which is claimed to be easier to code and less hardware-dependant than OpenCL. http://software.intel.com/en-us/data-parallel/ http://software.intel.com/sites/products/collateral/hpc/ct/ct_newsletter1109.html however, I don't believe that the OpenCL language is as nice or easy to use as Cuda. Is there any work on an open source clone of Cuda? A link to a short Intro. The code looks acceptable at a first glance: http://ati.amd.com/technology/streamcomputing/intro_opencl.html I still somehow wonder, how cheap low MHz Chips can outperform my GHz PC system. The answer seems to be parallelism of computations, which the GPUs (or DSPs) support better than CPUs. This also means, that faster CPUs won't necessarily bring the effect we are waiting for. (To play many software effects/instruments in an acceptable time.) Anyway. If the PCs can't do it, someone has to create a new system, or extend the PC anyway to make it capable. -- E.R. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Mon, Feb 8, 2010 at 4:01 PM, Emanuel Rumpf xb...@web.de wrote: I still somehow wonder, how cheap low MHz Chips can outperform my GHz PC system. The answer seems to be parallelism of computations, which the GPUs (or DSPs) support better than CPUs. This also means, that faster CPUs won't necessarily bring the effect we are waiting for. (To play many software effects/instruments in an acceptable time.) GPUs do not run a general purpose OS. CPUs do (at least if you run Linux, Windows, BSD, OSX, Solaris etc). HUGE difference. This plays a major role. The overall architecture of a GPU is very, very different from a CPU, making the code that runs on them more deterministic. GPUs also do not service interrupts from every device on your system. Anyway. If the PCs can't do it, someone has to create a new system, or extend the PC anyway to make it capable. not all PCs can do it. but its simply not true that PCs can't do it. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Mon, Feb 08, 2010 at 10:01:03PM +0100, Emanuel Rumpf wrote: Actually OpenCL seems to already be supported, (in new hardware only ?), by the large graphic players: http://www.nvidia.com/object/cuda_opencl.html (there's a lot of docu here too !) http://developer.amd.com/gpu/atistreamsdk/pages/default.aspx http://www.khronos.org/opencl/ I am aware of Nvidia and ATI binary drivers supporting OpenCL. What I do not see is an ability to run this using the Nouvou, the RadeonHD xorg driver, the intel xorg driver, or as SSE optimized software only. If OpenCL DSP code would run on my desktop using CPUs only, faster than a reasonable C implementation using primitives would run, then I'd suggest it is ready for people to start using without holding out for open source driver support. I don't think that we are close enough to say that we will be there in 6-12 months yet though. If I am mistaken about the state of the Khronos reference implementation or the clang implementation, I'd love to see a demo prove me wrong. There's also the CT Technology from Intel (aquired from RapidMind), which is claimed to be easier to code and less hardware-dependant than OpenCL. http://software.intel.com/en-us/data-parallel/ http://software.intel.com/sites/products/collateral/hpc/ct/ct_newsletter1109.html I am passingly aware of them, but as long as there is not an open language specification, and an open implementation, I don't think they are a real answer either. however, I don't believe that the OpenCL language is as nice or easy to use as Cuda. ?Is there any work on an open source clone of Cuda? A link to a short Intro. The code looks acceptable at a first glance: http://ati.amd.com/technology/streamcomputing/intro_opencl.html Just because I don't like it as well does not mean I won't accept it as a valid choice. However, the examples there still look a lot more complicated that the cuda examples. The page you posts included a fairly minimal OpenCL example that is close to 40 lines long without showing the actual source code for the actual OpenCL function to execute on the card. _global__ void inc_gpu(int *a, int N) { int idx = blockIdx.x * blockDim.x + threadIdx.x; if (idx N) a[idx] = a[idx] + 1; } } int main() { float *a; dim3 dimBlock (blocksize); dim3 dimGrid( ceil( N / (float)blocksize) ); cudaMalloc((void **) a, N); cudaMemcpy(a, someLocalSource, N*sizeof(float), cudaMemcpyHostToDevice); inc_gpudimGrid, dimBlock(a, N); cudaFree(a); } The __global__ says that it will be called from the host but run on the device. Calling the function uses a modified call syntax to setup the arrangement of hardware resources that will be used by the call, but the number of units to use, and the block size to carve the data by. dim3 is a cuda defined datatype. Still, if OpenCL shows up in Mesa, and can at a minimum run on the CPU faster than a basic C implementation, then I would certainly choose it over Cuda for open-ness. I still somehow wonder, how cheap low MHz Chips can outperform my GHz PC system. The answer seems to be parallelism of computations, which the GPUs (or DSPs) support better than CPUs. This also means, that faster CPUs won't necessarily bring the effect we are waiting for. (To play many software effects/instruments in an acceptable time.) Well, I bet a lot of software isn't wringing as much performance for your PC as it could. When it comes to music though, exactly what low mhz chips are beating a 2ghz Core 2 Duo or equivelent AMD? Also, how does the cost of said low mhz device compare to the Core 2 Duo? However, even in PCs, the trend is more cores, and either programmers need to get better, or else we need better tools. Now, I certainly plan to become a better programmer, but I still want better tools, and I think it is unfair to expect everyone to get better. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Mon, 2010-02-08 at 19:02 -0500, Joshua Boyd wrote: If OpenCL DSP code would run on my desktop using CPUs only, faster than a reasonable C implementation ... You are smoking some illegal substances tonight? ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
2010/2/4 Jens M Andreasen jens.andrea...@comhem.se: Zap the Gnome on steroids and dedicate your GPU for audio then! How to ? Where is the switch that would tell ladspa/dssi to use the GPU for processing ? I have success with 3 audio buffers в 0.3 ms + another 0.3 ms for the PCIe roundtrip to the GPU. Voicecount is well into the hundreds and then some ... That sounds marvelously. I found this information for DSP Accelerators http://www.thomann.de/gb/onlineexpert_127.html as well as this interresting device: http://www.uaudio.com/products/uad/uad2sl/index.html (I assume that it's not supported on linux) Those just work with special code-adjusted plugins. Does the VST API support them or even use them if present ? Do the RMI devices have plugin-accelerating DSPs ? Would it be worth to design an open-hardware DSP-add-on with an open API ? Since GPUs are very common already and have the fast PCIe connection using them may be more appropriate, I think. Running the rt-check script, indeed, I found some issues. Fixed them. Now, the only remaining warning is: Checking for Generic PCI bus-master DMA support... not found. ** Kernel without Generic PCI bus-master DMA support I retested with an undemanding 130 MB piano gig-file. Results: - Linuxsampler runs stable at 8ms. Great. - I'm able to play fast Sequences with PianoTecTrial at 16ms. I'm not allowed to use sustain or play quick chord progressions. They produce xruns and hard noise then. - yoshimi 054-pre4 behaves comparable to PianoTec at 16ms, but slightly worse. It produces occasional xruns even without chord-progressions. Likely conclusion: My system is not fast enough for this kind of processing, or somehow has a bad hareware-design. I will buy a new machine next year with 8 processors hopefully... Until then, the GPU seems the only miracle that could possibly help me out. Would it ? Thank you, replyers, for your replys and suggestions. -- E.R. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Sat, Feb 6, 2010 at 3:36 PM, Emanuel Rumpf xb...@web.de wrote: Would it be worth to design an open-hardware DSP-add-on with an open API ? no, no and a thousand times no. there have been several attempts at this ... i think they have all failed so far. Chameleon is the one that springs to mind. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
Emanuel! No DMA? That does seem bad! Direct Memory Access is VERY helpful and has been there for years - not to say decades. It's also supported by the Linux kernel since version 2.0.X something. If not enabled this can take up considereable amount of CPU time. So no wonder. Your system MUST be capabel of playing a nice piano (2-3GB) with LinuxSample with lower latencies. But how about your soundcard? Is it good, do you know, what they say about its own hardware latency? Always remember it's possible to play realtime on a 700mHz CPU, if you shut down the graphic. polyphony and sustain. Probably a few drop-outs there. But 700mHz are far from your new dual core! Kindest regards Julien Music was my first love and it will be my last (John Miles) FIND MY WEB-PROJECT AT: http://ltsb.sourceforge.net the Linux TextBased Studio guide === AND MY PERSONAL PAGES AT: === http://www.juliencoder.de ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
As to the GPU usage: I believe there were some discussions about it, a few years back. I think it will be a matter of a kernel driver or small hack or additional module, which you might download somewhere. Sounds more reasonable and it triggers something in my memory. Kindly yours Julien Music was my first love and it will be my last (John Miles) FIND MY WEB-PROJECT AT: http://ltsb.sourceforge.net the Linux TextBased Studio guide === AND MY PERSONAL PAGES AT: === http://www.juliencoder.de ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Sat, 2010-02-06 at 21:36 +0100, Emanuel Rumpf wrote: 2010/2/4 Jens M Andreasen jens.andrea...@comhem.se: Zap the Gnome on steroids and dedicate your GPU for audio then! How to ? I can only say what I have done and _very_ _carefully_ point out that I know _absolutely_ _nothing_ about RT-performance on any other system _whatsoever_! The box is a T3-P5945GC: http://www.asus.com/product.aspx?P_ID=BpN0BixlVJlpqtpu .. with an Intel 945GC chipset, AD1988b HDA audio and an E1200 (1.2 GHz Conroe style dual core Celeron.) The GPU is a pretty quiet, slightly overclocked Nvidia GT220 with DDR3 from Gigabyte. http://www.tomshardware.com/reviews/geforce-gt-220,2445.html (And apparently the GT240 model with GDDR5 is a lemon. Avoid!) Kernel is the 2.6.31.6-rt19, configured as per the Mandriva repositories (optimized for Core2 as the only change) Where is the switch that would tell ladspa/dssi to use the GPU for processing ? That switch ideally would be somewhere here on LAD. The problem being mostly stirring up enough momentum to get something going. There might be this fear of jumping into the unknown? but hey look, here is one more programmer who has also had it with SSE and is not planning on upgrading to a 4 way $2K server any time soon: A realtime Mandelbrot zoomer in SSE assembly and CUDA http://users.softlab.ntua.gr/~ttsiod/mandelSSE.html In which one of those two codepaths would you like to spend your spare time? Which one looks the most civilized? Just wondering ... Reasonable expectations for RT performance is 1/3 of what Nvidia says is peak performance. So, 60 - 75 GFlops in the case at hand. Which translates to $1 per GFlop (including a healthy chunk of fast memory.) Hard to beat! The 0.3 msec turnaround time depends on that you are working from the console rather than the X-server. This might have been different if I had had dedicated cards, one for audio and one for video, but - unfortunately - I have only one PCIe slot, so there is nothing really that I can know or tell about that ... Working from within Gnome on a single card; 3 × 1.3 (+1.3) msec works and double that to become indestructibly rock-solid. [OK... That might be enough CUDA advocacy for tonight? :-D] /jma ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Sat, 2010-02-06 at 23:07 +0100, Emanuel Rumpf wrote: article: Audio Processing on the GPU http://www-sop.inria.fr/reves/projects/GPUAudio/ That article is so out of date, I dont know how to even begin to explain? Really, you might as well be talking about how M56k code does wonders on a NeXT cube. Do yourself a favour and ignore it. /jma ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Sat, Feb 06, 2010 at 09:36:20PM +0100, Emanuel Rumpf wrote: Running the rt-check script, indeed, I found some issues. Fixed them. Glad you found it useful Now, the only remaining warning is: Checking for Generic PCI bus-master DMA support... not found. ** Kernel without Generic PCI bus-master DMA support This checks for the 'CONFIG_BLK_DEV_IDEDMA_PCI' option, which seems to have been dropped somewhere between 2.6.29 and 2.6.31. I guess it was renamed or made non-optional, or something like that. I'll just remove this test from the script. Regards, Arnout ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thursday, February 4, 2010, Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. I just realized, that I've never been able to do that. Neither almost. Frustration. But on my digital piano, I can to it. That thing is some years old and definitely doesn't have 2 x 2 GHz processors available. A musical instrument is something designed and built for playing music. You can certainly produce sounds with a computer, but a general purpose computer is best suited for computing... anything. Anyway. The answer so far has been: That system is more dedicated, thus it can, while my PC cannot. The conclusion: I'm working with a wrong system ! - It doesn't allow me to work the way I intend. Damn. What did I buy this system for ? I don't need those 2 x 2GHz for word processing - right ?? This makes me wonder: Which one is the system for my requirements ? Which one is able to make some softsynths / samplers process 30 voices in less than 9 milliseconds ? Could my system be extended or modified in order to suit ? How then ? We have dedicated hardware for graphics, why not for audio ? Exactly. Better start with a good audio interface. You should not expect to convert a laptop with a cheap integrated Intel HDA sound interface into a good musical instrument. Regards, Pedro ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
Hello Emanuel! I see, that you've already got some answers, here's mine though. I have a 1.8GHz CPU, OK I run NO GUI at all, yet still. I play all my music live. I play sessions with LinuxSampler (big pianos and all), I also record them that way, so the harddisk recorder is running at the same time. I used ZynAddSubFX's mini text-UI live, hydrogen, Fluidsynth with up to 200MB soundfonts and I even did a bit of csound playing live with a soprano voice emulation, so that's quite far from simple analogue. I could also do LinuxSampler with jconv running with some referb without problems. Admittedly, sometimes - when I had bad kernels - it wouldn't work that well. But now I have a 2.6.30 kernel, self-compiled, and everything is fine so far. I hope that somehow encourages you to go on. I know of others even using a couple of VSTIs at the same time, wiring them into Ardour and the like. So it's most certainly a question of kernel and settings and maybe taking a look at all the processes running, and which of them might be unnecessary. I've also seen, that my system installed a good deal of software, which I never needed, some of it daemons running all the time. Kindly and encouraginly yours Julien Music was my first love and it will be my last (John Miles) FIND MY WEB-PROJECT AT: http://ltsb.sourceforge.net the Linux TextBased Studio guide === AND MY PERSONAL PAGES AT: === http://www.juliencoder.de ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
Hi Emanuel, regarding LinuxSampler the reliability and performance it can achieve (polyphony, dropout-free playback etc) depends from several factors: hardware: mainboard, cpu, RAM, harddisk, audio card, gfx card software: linux kernel (real time extensions), other running drivers, apps as others already said some hardware like laptops are often not optimally suited for glitchfree sub 10msec latency playback. sometimes shared IRQs and other hardware bottlenecks can increase the likelyhood of audio dropouts. LinuxSampler is highly configurable, you can tune almost any parameter including the polyphony, how much of each sample is preloaded into RAM (reduces disk I/O), the number of disk I/O threads etc. disk streaming audio samplers have to cope with the limited access times and bandwidth of harddisks, so of course it cannot do a miracle and defy laws of physics. if the disk is physically capable to stream only 50 voices and you try to play pieces with 100 active voices, it could go well for a while since when playing short notes the initial part is cached in RAM but 100 sustained notes will lead to drop outs or muted voices sooner or later. You can easily fix the issue by either preloading more of each sample into RAM, given enough RAM you can even avoid any disk I/O at all and in that case the polyphony is limited only by the CPU and RAM speed. = several hundred voices with sub 5-10msec latency. (Alex Stone had a LinuxSampler setup with 800 voices with disk streaming actie). alternatively you can stream the samples from 2 separate disks (best solution is to place your instruments on multiple disks) or use software RAID0/1 to increase disk bandwidth. solid state disks are reported to work very well with harddisk based samples since they provide low access times (often below 1msec) and very high read speeds 100-200MB/sec. If you need help with LinuxSampler just ask on our forum, users will gladly and share their experiences with good performing LinuxSamplers setups. http://bb.linuxsampler.org As said given non broken PC hardware, the a properly tuned linux kernel with real time support and the right linux audio app you can easily have a software instrument playable live without audio dropouts and without notable latency. ( 5-10msec) given that it takes about 1.1msec to delived a Note On/Off MIDI message and that sound travels 1 meter in 3msec, playing a 4 note chord and standing 1 meter from the speaker leads to 7 msec latency (for the 4th note of the chord) even if your software instrument had 0msec latency there is always some latency present. so IMHO anything below 3-10msec is a real time instrument. cheers, Benno 2010/2/4 Emanuel Rumpf xb...@web.de: 2010/2/4 Arnold Krille arn...@arnoldarts.de: On Thursday 04 February 2010 18:50:28 Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yes, I have. I believe Ken Restivo, Atte Andre Jensen and many others too. Reliably ? At a latency below 10 ms ? Which synth ? I don't intend to mistrust you, but I remain disbelieving for now. :-) Linuxsampler is well written and reliable, but when playing intensely, it xran too here. We have dedicated hardware for graphics, why not for audio ? There are manufacturers selling dedicated PCI-cards to do VST-plugin work and free your cpu of that. Interesting, although uneligible for my laptop.. But whats the purpose of running some piece of (almost) generic software on generic platforms, when you still need specialised hardware? Being generic means (for the platform) to support a bunch of specialised applications. It doesn't bother much to buy additional hardware, in order to make the system more generic, but not being able to make it generic enough for being able to use it for a cerain specialised application. We are used to extend the systems usability through additional peripherials such as graphic-cards, audio-cards, printers That's what has made it a success. Of course you can buy dedicated audio-hardware. Its called keyboards and synths and mixers and effects (outboard). These make me lose the generality. But isn't it easier to have it all in software and carry it around on your pc/laptop/usb-stick? It absolutely would, if it gave me the same reliability. Please give us some pointers to help you improve performance on your definitely un-tuned and probably mis-configured system before making our work bad in general. I'm not making it bad. I'm even searching for a way to make it more valueable by making it more usable. I don't think my system is so badly configured - how to measure ? It's not the most recent hardware, I admit. Have fun, Thanks -- E.R. ___ Linux-audio-dev mailing list
[LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. I just realized, that I've never been able to do that. Neither almost. Frustration. But on my digital piano, I can to it. That thing is some years old and definitely doesn't have 2 x 2 GHz processors available. Anyway. The answer so far has been: That system is more dedicated, thus it can, while my PC cannot. The conclusion: I'm working with a wrong system ! - It doesn't allow me to work the way I intend. Damn. What did I buy this system for ? I don't need those 2 x 2GHz for word processing - right ?? This makes me wonder: Which one is the system for my requirements ? Which one is able to make some softsynths / samplers process 30 voices in less than 9 milliseconds ? Could my system be extended or modified in order to suit ? How then ? We have dedicated hardware for graphics, why not for audio ? Sincerely -- E.R. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 4, 2010 at 12:50 PM, Emanuel Rumpf xb...@web.de wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. I just realized, that I've never been able to do that. Neither almost. Frustration. it depends HUGELY on the nature of the synthesis method being used. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thursday 04 February 2010 18:50:28 Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yes, I have. I believe Ken Restivo, Atte Andre Jensen and many others too. We have dedicated hardware for graphics, why not for audio ? There are manufacturers selling dedicated PCI-cards to do VST-plugin work and free your cpu of that. But whats the purpose of running some piece of (almost) generic software on generic platforms, when you still need specialised hardware? Of course you can buy dedicated audio-hardware. Its called keyboards and synths and mixers and effects (outboard). But isn't it easier to have it all in software and carry it around on your pc/laptop/usb-stick? Please give us some pointers to help you improve performance on your definitely un-tuned and probably mis-configured system before making our work bad in general. Have fun, Arnold signature.asc Description: This is a digitally signed message part. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 04, 2010 at 06:50:28PM +0100, Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yep, I do this since 2003. Though not with Linux, yet, but Win32 on an RME Multiface. Sampled pianos, strings, some synths. I started on AMD Athlon xp1600 (iirc) with 1GB RAM and I'm now on AMD athlon 2x2GHz laptop with 3GB RAM. What can I say? It works. The audience varies from 150 to 4000 people, and I trust my system, despite it's Windows. ;) I clearly wouldn't even enter the stage when I'd doubt system stability. This said, Linuxsampler was the most useful virtual instrument I found, but I'm really missing my Hypersonic2. This comes very close to a typical keyboard workstation with lots of _decent_ sounds like Korg Triton or Yamha Motif. I then bought a Korg microX as the primary sound engine for my ardour based studio setup. It's around 450 Euro, it delivers the Triton sounds, it's hardware and it's approximately the price one would have to pay for a good virtual instrument. It's the confession that HQ virtual instruments on Linux (besides LS) won't happen any soon. process 30 voices in less than 9 milliseconds ? You don't need 9ms, I use 12ms, and I would claim I'm not lagging behind the drummer. ;) -- mail: a...@thur.de http://adi.thur.de PGP/GPG: key via keyserver ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
--- On Thu, 2/4/10, Adrian Knoth a...@drcomp.erfurt.thur.de wrote: From: Adrian Knoth a...@drcomp.erfurt.thur.de Subject: Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth To: linux-audio-dev@lists.linuxaudio.org Date: Thursday, February 4, 2010, 1:46 PM On Thu, Feb 04, 2010 at 06:50:28PM +0100, Emanuel Rumpf wrote: Has anyone ever played a plugin in realtime ( live )... ...and I don't mean a one-finger melody, but a mutli-polyphonic piano piece, eventually with sustain held down, which resulted in about 20 to 40 simultaneusly processed voices. Yep, I do this since 2003. Though not with Linux, yet, but Win32 on an RME Multiface. Sampled pianos, strings, some synths. I started on AMD Athlon xp1600 (iirc) with 1GB RAM and I'm now on AMD athlon 2x2GHz laptop with 3GB RAM. What can I say? It works. The audience varies from 150 to 4000 people, and I trust my system, despite it's Windows. ;) I clearly wouldn't even enter the stage when I'd doubt system stability. This said, Linuxsampler was the most useful virtual instrument I found, but I'm really missing my Hypersonic2. This comes very close to a typical keyboard workstation with lots of _decent_ sounds like Korg Triton or Yamha Motif. I then bought a Korg microX as the primary sound engine for my ardour based studio setup. It's around 450 Euro, it delivers the Triton sounds, it's hardware and it's approximately the price one would have to pay for a good virtual instrument. It's the confession that HQ virtual instruments on Linux (besides LS) won't happen any soon. are you kidding ?? have you tried Pianoteq ? I use it at 1ms lat for RT playing together with Addictive Drums via dssi-vst. Not a single glitch. I use a dedicated PC, with a Core 2 Duo @ 2.4 GHz, 4GB RAM and RNME HDSP + Multiface II sound system. J. process 30 voices in less than 9 milliseconds ? You don't need 9ms, I use 12ms, and I would claim I'm not lagging behind the drummer. ;) -- mail: a...@thur.de http://adi.thur.de PGP/GPG: key via keyserver ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, 2010-02-04 at 18:50 +0100, Emanuel Rumpf wrote: We have dedicated hardware for graphics, why not for audio ? Zap the Gnome on steroids and dedicate your GPU for audio then! I have success with 3 audio buffers × 0.3 ms + another 0.3 ms for the PCIe roundtrip to the GPU. Voicecount is well into the hundreds and then some ... This is not a laptop though, if that matters? Sincerely ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 04, 2010 at 11:46:35AM -0800, James Warden wrote: a good virtual instrument. It's the confession that HQ virtual instruments on Linux (besides LS) won't happen any soon. are you kidding ?? have you tried Pianoteq ? I tried it some years ago, and it was crap. I tried it five minutes ago, and it's amazing. That's exactly the kind of software I'm looking for. If the company would just do other sounds... I don't need 20 pianos, I also need strings, pads, hard synths, Atmo-FX and the lot. However, it's clearly a good product. -- mail: a...@thur.de http://adi.thur.de PGP/GPG: key via keyserver ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 4, 2010 at 3:28 PM, Adrian Knoth a...@drcomp.erfurt.thur.de wrote: I don't need 20 pianos, I also need strings, pads, hard synths, Atmo-FX and the lot. given that pianoteq is using physical modelling, its hard to see how their technology could be applied to hard synths, pads or atmo-fx. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 04, 2010 at 03:32:23PM -0500, Paul Davis wrote: I don't need 20 pianos, I also need strings, pads, hard synths, Atmo-FX and the lot. given that pianoteq is using physical modelling, its hard to see how their technology could be applied to hard synths, pads or atmo-fx. That's why Steinberg's Hypersonic2 is a hybrid: it has a sample ROM, it has the usual synthesizer stuff (VCO+LFO) for the hard leads and a FX section, an arpeggiator plus some more to combine everything. I don't expect Pianoteq to be anything else than a piano, but this doesn't change the point that there's no allround virtual instrument on Linux that's suitable for the average pop producer or live keyboardist playing in a Top40 band. (that's exactly what the microX does: it delivers a wide variety of decent sounds ready to be used for straight-forward tasks) I guess the hardest part of making such a Motif/Triton/Phantom clone is getting some nice samples, which won't probably happen for free. I could sample an acoustic guitar, but I can't record a whole orchestra. ;) Cheerio -- mail: a...@thur.de http://adi.thur.de PGP/GPG: key via keyserver ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Has anyone ever played a plugin in realtime ... [related to:] hard realtime performance synth
On Thu, Feb 4, 2010 at 4:12 PM, Adrian Knoth a...@drcomp.erfurt.thur.de wrote: I don't expect Pianoteq to be anything else than a piano, but this doesn't change the point that there's no allround virtual instrument on Linux that's suitable for the average pop producer or live keyboardist playing in a Top40 band. (that's exactly what the microX does: it delivers a wide variety of decent sounds ready to be used for straight-forward tasks) well, if you were willing to purchase gigasampler sample libraries, and spend a little time making sure your system configuration was all correct, i have little doubt that you could get LinuxSampler to do what you want. its notably lighter-weight for a sample-playback engine than most others that handle GS formats. however, given that gigasampler has died as a library format, and given that sound as if you don't believe your system configuration could possibly have any issues, i'm not sure that this solution will work for you. I guess the hardest part of making such a Motif/Triton/Phantom clone is getting some nice samples, which won't probably happen for free. yep, precisely. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev