Hello to everyone and a DIRAC LE test application for you

DSP, Plugin and Host development discussion.
RELATED
PRODUCTS

Post

This is my first post on kvr and in honor of that I offer you two Delphi-based testing applications using Stephan M. Bernsee's Dirac LE time/pitch-manipulation library. I hope this counts as a good first post! :)

You can find the zip-file from the following web directory :

http://owla.oulunkonservatorio.fi/~teontero/dirac/

The apps certainly are not flawless (read the readme) but better than the already available command-line utilities, I would dare to say.

Cheers, everyone!

-X

Post

Thanks and Welcome!

I gave your DiracLETester a shot, nice toy. Seems that the pitch/stretch values are only changed when using sliders (not when entered in edit boxes). I also wouldn't mind your proggy display the name of the generated file - not to mention being able to play it back.

The Dirac stretch can really achieve some good results, however it seems to go crazy with +/-1.0 signal values when doing insane stretches (2.0) so be careful when playing back normalized/maximized sounds after stretching.
the the impotence of proofreading

Post

Paulie Phonick wrote:Thanks and Welcome!

I gave your DiracLETester a shot, nice toy. Seems that the pitch/stretch values are only changed when using sliders (not when entered in edit boxes).
-I hope it didn't actually crash when you tried to use the edit boxes! :oops: I don't think I actually tested that thoroughly enough.

I also wouldn't mind your proggy display the name of the generated file - not to mention being able to play it back.

-These would probably be easy "enough" to implement. Actually, my longer term plan is to produce a quite comprehensive audio processing application in a bit different vein than the usual Adobe Audition/Wavelab/Audacity-approach... :wink:


The Dirac stretch can really achieve some good results, however it seems to go crazy with +/-1.0 signal values when doing insane stretches (2.0) so be careful when playing back normalized/maximized sounds after stretching.

-I might look into this and come up with a "solution".

-X

Post

A good (freeware ;) ) visual editor with Dirac stretcher/autotune would be nice indeed. Looking forward to your app!

Anyhow, a simple solution for the distortion might be to limit the signal to -0.1dB before stretching. Hardly noticable, solves the problem (I just tried) :)

BTW, the Dirac can really become time consuming on high settings. I just did a 2.0x stretch of a 23sec long clip with quality at 3 and lambda at 5 and it took around 35 minutes to complete on my Athlon64 3400+ :-o Is it already assembly optimised or there is still some hope?
the the impotence of proofreading

Post

Paulie Phonick wrote:A good (freeware ;) ) visual editor with Dirac stretcher/autotune would be nice indeed. Looking forward to your app!

Anyhow, a simple solution for the distortion might be to limit the signal to -0.1dB before stretching. Hardly noticable, solves the problem (I just tried) :)

BTW, the Dirac can really become time consuming on high settings. I just did a 2.0x stretch of a 23sec long clip with quality at 3 and lambda at 5 and it took around 35 minutes to complete on my Athlon64 3400+ :-o Is it already assembly optimised or there is still some hope?
Yes. It IS insane! :D I am not sure but I think Stephan Bernsee is more of a Macintosh guy so it could have been better optimized to work on that platform. However I am not completely sure there even is a DRAMATIC difference even between quality 1 and 2, so I don't know...And any quality you might obtain tinkering with the setting will be immediately lost when processing stereo material with the Dirac LE-library. Unfortunately, I have no intention of purchasing a license for Dirac Pro/Studio from Stephan, too expensive for a hobbyist coder... :hihi:

One explanation for the slowness, by the way, can be the fact that is the LE-version. Perhaps PRO/Studio are better optimized...?

-X

Post

I had a look at the DIRAC homepage and the prices for the Studio and Pro are indeed too high unless you're making a real commercial product. Shame, that Pro version really has features I'd love to get my hands on (dynamic pitch/strech changes...). Still, the payware versions are only optimised for PowerPC, so it wouldn't probably be any better performance-wise for the PC version.
the the impotence of proofreading

Post

Is it generally so that people are NOT very interested in the Dirac technology at all? Is there yet any software publicly available that uses it? And if the case is so that Dirac doesn't show signs of not being generally adapted, what could be the reasons? It's difficult for me to judge the quality of the process for common applications as I am pretty much always after extreme effects in my own music...However, I can imagine people NOT being interested in it because of the lack of dynamically changing pitch/time in the LE-version.

Stephan's prices for the PRO/Studio are a "BIT" too much pay to simply evaluate how the Dirac library works under real-world production situations involving constant parameter tweaks and automation, are they not?

-X

Post

Yep.

There is also the ELASTIQUE library, which is by the way used inside FL Studio, LIVE 5 and many other pro grade applications and plugins. It seems to be not that expensive and has much higher quality and flexibility and specialization than DIRAC!

That "freeware thingy" is quite crap for any usage (no stereo link, limited samplerate, no formant correction, no realtime pitch scaling and so on...).

AND: That Bernsee dude has obviously knocked the people too much on the head.

He started that entire thingy with with an "open library hype" and then finally he stopped it suddenly and released a super expensive commercial license story out of it.

That's always a bad idea. I think he merely did that because to get attention to him fot the folloup marketing hype.

I guess he wouldn't sell that much now for some of those reasons.

.
Last edited by ;-) on Wed Sep 14, 2005 7:05 pm, edited 1 time in total.

Post

Yes..Hmm. I wondered that myself a LOT. He first wanted a "open library" type of thing happening with ClearScale but when no-one gave it any donations, he made something on his own that is SUPER-expensive to use in "real" situations...

I don't know what to think. What I simply would personally want is a legal free/very low expense-library to perform time and pitch stretching...

-X

Post

Xenakios wrote:Yes..Hmm. I wondered that myself a LOT. He first wanted a "open library" type of thing happening with ClearScale but when no-one gave it any donations, he made something on his own that is SUPER-expensive to use in "real" situations...

I don't know what to think. What I simply would personally want is a legal free/very low expense-library to perform time and pitch stretching...

-X
OK, that is always a complex task (to develop something like that).

But I think. there are some realy intersting open sourced projects available doing that in different ways. If those could be combined, it could easiely be possible to top that DIRAC ...

The following principles are commonly used to achieve pitch shifting / time stretching:

- completely Time Domain algoritms, which resample the material on the fly and apply windowing (add and overlapp). WSOLA like things.

- Frequency Domain algorithms, which have their drawbacks too, but deliver the highest quality of pitch shifting yet. Combine with resampling.

- Pitch synchronuous algorithms like PSOLA, which merely are optimal for monophonic input sources with well defined fundamental frequency (like human voices) but give best results with that. Most latency and complexity to expect.

- Delay Line based pitch shifters and Granular synthesis and Wavelets. Combined with resampling. Quite promising.

- Hybride connections of some or all of those principles.

.
Last edited by ;-) on Wed Sep 14, 2005 7:21 pm, edited 3 times in total.

Post

Yes, who knows...If I am ever going to make my own time/pitch stretcher it is going to based on wavelets just like Dirac. But I would definately need some pointers to how that could be done properly.

I have to check Elastique...If the API is simple enough to convert to Delphi and the price not too high, well well... ;)

-X

Post

;-) wrote:
Xenakios wrote:Yes..Hmm. I wondered that myself a LOT. He first wanted a "open library" type of thing happening with ClearScale but when no-one gave it any donations, he made something on his own that is SUPER-expensive to use in "real" situations...

I don't know what to think. What I simply would personally want is a legal free/very low expense-library to perform time and pitch stretching...

-X
OK, that is always a complex task (to develop something like that).

But I think. there are some realy intersting open sourced projects available doing that in different ways. If those could be combined, it could easiely be possible to top that DIRAC ...

The following principles are commonly used to achieve pitch shifting / time stretching:

- completely Time Domain algoritms, which resample the material on the fly and apply windowing (add and overlapp). WSOLA like things.

- Frequency Domain algorithms, which have their drawbacks too, but deliver the highest quality of pitch shifting yet. Combine with resampling.

- Pitch synchronuous algorithms like PSOLA, which merely are optimal for monophonic input sources with well defined fundamental frequency (like human voices) but give best results with that. Most latency and complexity to expect.

- Delay Line based pitch shifters and Granular synthesis and Wavelets. Combined with resampling. Quite promising.

- Hybride connections of some or all of those principles.

.
Yuuuup. I am aware of all this. But I have never tested myself how far these concepts could be developed by programming my own code. I am simply having impressions like "This app's timestretch is good for speeding drum loops by +-20 bpm" and "This app's timestretch can slow down a sound by 16x times and still sound almost like the original sound" and "With this app I can reshape a sung melody completely without too much artifact" and so on...

-X

Post

Did you listen to my sound examples here:

http://www.kvraudio.com/forum/viewtopic ... 4&start=75

They have all some drawbacks, but are also quite simple made in realtime with a sample in memory... It all bases of some of my realtime pitch shifters and realtime reampling techniques.

The big problems I have is always phase drifting, especially with stereophonic audio ... :roll:

.

Post

;-), I will listen to your examples when I get to a sound-enabled computer!

-X

Post

Ok, I listened to the examples at last. They didn't sound too bad at all! Certainly not "hi-fi" stuff but that's bound to be impossible anyway with stretches of more than a couple of per cent, I guess...

-X

Post Reply

Return to “DSP and Plugin Development”