fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] dsp_buf[] type


From: David Henningsson
Subject: Re: [fluid-dev] dsp_buf[] type
Date: Mon, 4 Jan 2016 11:51:52 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0

Hi Brad,

If you're interested in different resampling algorithms, there was some work related to this in the PulseAudio community a while ago (performed by Alexander Patrakov).

He also made some images ( https://imgur.com/a/jtIEj ) - translated to fluidsynth's domain, I think "trivial" would be our "interp 0" and "src-linear" would be our "interp 1".

Also remember that these artifacts are of far less magnitude than the original waveform: If an oscilloscope has an accuracy of ~1%, I believe the artifacts will be lost in the inaccuracy of the oscilloscope.

See http://lists.freedesktop.org/archives/pulseaudio-discuss/2014-August/021362.html for more information about Alexander's research and what his images really mean.

// David

On 2016-01-04 00:23, Brad Stewart wrote:
Regarding the previous post...

It seems this is done in the function /fluid_rvoice_buffers_mix /in the
file "fluid_rvoice.c."
The output is buf[] and is also type fluid_real_t.
So  I'm assuming the rendering engine can accept floating point values.
I'm still trying to see how the linear interpolation is able to remove
most of the low frequency artifacts.  none of the simulations and
experiments don't result in the output I'm seeing from FluidSynth.
Perhaps the audio h/w has additional filtering functions.

Is there a way I can save an output wave to a file?  I want to look at
the audio data before it's rendered.

Thanks,
Brad




On 01/03/2016 01:27 PM, Brad Stewart wrote:
The interpolation routines place the processed data into dsp_buf[] of
type fluid_real_t.
I'm assuming you eventually convert this to int16 for rendering.
Can you point me to the section of the code that does the conversion?
Are you doing anything else, such as a moving-averaging filter?
Thanks,
Brad



_______________________________________________
fluid-dev mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/fluid-dev


--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic



reply via email to

[Prev in Thread] Current Thread [Next in Thread]