[pulseaudio-discuss] GSoC Proposal: Resampling Improvements

Peter Meerwald pmeerw at pmeerw.net
Mon Apr 22 09:33:08 PDT 2013


Hello, 

> > > > > By "libresample", I guess you mean "libsamplerate". Peter can correct me
> > > > > if I'm intepreting him wrong, but my understanding is that libsamplerate
> > > > > was only mentioned as an example of a resampler with a problematic
> > > > > license. I don't know either what should be done about it - perhaps the
> > > > > idea was to compare the different resamplers, and if it turns out that
> > > > > we don't have any good reason to keep using libsamplerate, we could drop
> > > > > that code.

> > libsamplerate was mentioned because of the GPL license;
> > to work around, a loadable module interface could be offered, so the user 
> > can decide

> This sounds like a lot of complexity for little gain. What is wrong with
> compile time switches/options?

maybe yes; depends on how many resamplers there will be

a loadable module interface enforces a stricter and more stable interface, 
which may be a good thing

some refactoring is in place anyway, so depends how far we want to take it

> > > > > > Speex has been obsoleted [2] and the resampler seems to had been moved to
> > > > > > opus-tools. There are some interesting commits [3] inside this repo and I think
> > > > > > it would be nice to update our speex resample method although I'm not sure
> > > > > > if it's ok to drop speex and replace it with opus-tools just like that.
> > 
> > > > > To me replacing the speex resampler with the opus-tools resampler sounds
> > > > > like an obvious thing to do, if the upstream says that the speex
> > > > > resampler code is deprecated in favour of opus-tools.

> By the way is there some explicit reason you have chosen libav for this
> project? 
> FFmpeg now also has a resampling library [1] and I found an interesting
> blog post about "ffmpeg vs libav" [2].

ffmpeg vs. libav is a mess, but I think the dust has settled a little by 
now

my impression is that ffmpeg merged libav stuff, but not vice-versa; so 
there is libswresample and libavresample in ffmpeg, libavresample coming 
from libav

> Maybe we should support both so different distributions can choose what
> to use depending on the default lib they are using.

libavresample can be provided by ffmpeg and libav; not sure if 
libswresample should be supported

regards, p.

-- 

Peter Meerwald
+43-664-2444418 (mobile)


More information about the pulseaudio-discuss mailing list