[Kdenlive-devel] pitch effects

Dan Dennedy dan at dennedy.org
Mon Sep 13 02:22:40 UTC 2010

On Sat, Sep 11, 2010 at 11:54 PM, Alexandre Prokoudine
<alexandre.prokoudine at gmail.com> wrote:
> Hi,
> I was going through rather amusing inherited translation of pitch
> related audio effects and noticed that the actual implementation is
> quite broken.
> Pitch shift is OK, except below 100 you get the same sound, whatever
> value you use. This is really not reproducible with the original AM
> pitchifter LADSPA plug-in. Above 100 it works as expected though.

works for me. the pitch lowers when below 100.

> Rate Scaler. For some reason default value is 10, which in Kdenlive

Kdenlive divides its value by 10 before passing it to LADSPA. This is
how it provides float values. Other effect parameters may have
different denominators.

> corresponds to normal playback. However the original Rate Shifter
> LADSPA plug-in doesn't work like that. It has a range of values
> between -4 and 4, and 1 (10 in Kdenlive) corresponds to actually
> speeding audio up. If you dive a bit further, you'll find out that 0
> in LADSPA corresponds to no changes, whereas in Kdenlive zero
> corresponds to no sound at all. No, wait, I can hear clicks :)
> Finally, with negative values sounds goes backwards as expected.

I get the same result as you, but it does the same thing that
standalone Jack Rack does when I route Kdenlive's output through Jack
and Jack Rack and load rate_shifter_1417. However, MLT's LADSPA
integration code is based entirely on Jack Rack. So, maybe there is a
bug in Jack Rack that I inherited. Do you know of another tool similar
to Jack Rack that makes it easy to try out LADSPA filters on Jack
streams? Meanwhile, I will spend a little time with a WAV file and
another tool that does LADSPA to get a comparison.

> Pitch scaler suffers from same bug as in Pitch shift: everything below
> 100 means silence.

This works for me as well - values below 100 are not silence.

> So, I really don't know who to blame -- Kdenlive or MLT. Please tell
> me which bug tracker to poison with this report :)
> Also, I'm not entirely sure it makes a lot of sense to have plug-ins
> with such names and functionality. Being an Audacity user for almost a

They are named for their respective LADSPA plugins. I am of the
opinion that we should use RDF to make all of them available.

> decade I'm sort of addicted to names and functionality like "Change
> Speed/Pitch/Tempo". Audacity's implementation relies on libsamplerate
> which works rather well. the application also makes a good use of
> SBSMS library that works really well with any kind of sound, but
> unfortunately is not entirely good for real-time processing. Now,
> RubberBand is a rather good choice for RT, but reportedly has its
> limits in terms of quality when it comes to something other than
> percussion. Don't know if that's of any use to you.

Those are completely different implementations not available through
SoX or LADSPA, right? So, someone would need to implement that, and
you sound like the right person to do it. :-)

> Alexandre Prokoudine
> http://libregraphicsworld.org

More information about the Kdenlive mailing list