On Mon, Nov 22, 2010 at 10:19 PM, Owen Williams <owen-b...@ywwg.com> wrote:
> That was a lot of programming.  I rewrote the linear scaler, it's
> available in my features_xwax2 branch.  There are still subtle clicks
> and pops at very very low speeds and moving from a dead stop, but I
> can't get rid of them and they could just be part of mp3-encoded files
> for all I know.
>
> I have a lot of trouble analyzing the samples in order to figure out
> where these pops come from.  I feel like 90% of my time was spent doing
> that.
>

When you're starting from standstill, the scaler code should apply a
ramp-in envelope to the audio to avoid a discontinuous change from
zero to something non-zero. That's one source of popping.

Another thing I found before was that you should interpolate between
playback rates smoothly, because the waveform widget (for example)
changes the speed in big discrete jumps. This causes a sort of
"digital" sound, though it's not necessarily a source of the clicks.

Did you rewrite the relevant parts of EngineBuffer/CachingReader to
store the playback position as a float?

Thanks,
Albert

P.S. If there's any sort of sample error (and we know there is because
you're hearing it), it will always change with different sample rates
and buffer sizes because they generally occur once per buffer size. It
probably doesn't tell you anything you don't already know.


> Owen
>
>
> On Mon, 2010-11-22 at 09:23 -0500, Owen Williams wrote:
>> Cool, thanks.  I think I figured out a way of keeping the sub-sample
>> position inside the scaler so I'll take a shot at fixing it too.
>>
>> Owen
>>
>> On Mon, 2010-11-22 at 06:48 -0300, Phillip Whelan wrote:
>> > I'm sure this bug is also caused in part by the problem with playpos
>> > always being rounded.
>> >
>> >
>> > There is an old patch for it on the mailing list.
>> >
>> >
>> > I'm currently visiting family in chile but will see if I can update
>> > the patch for trunk.
>> >
>> > Sent from my iPod
>> >
>> > On 2010-11-22, at 2:23, RJ r...@mit.edu> wrote:
>> >
>> >
>> >
>> > > Hey Owen,
>> > >
>> > >
>> > > Have you merged your branch with trunk lately? A patch from 1.8 was
>> > > reverted that improves the linear scaler audio quality a lot (but it
>> > > the progress made on fixing the bug where the engine eats too many
>> > > samples).
>> > >
>> > >
>> > > RJ
>> > >
>> > > On Sun, Nov 21, 2010 at 11:15 PM, Owen Williams <owen-b...@ywwg.com>
>> > > wrote:
>> > >         Hey all,
>> > >
>> > >         I've noticed that at extremely slow speeds and during
>> > >         scratching, mixxx
>> > >         sounds pretty terrible.  There are lots of clicks and pops
>> > >         and high
>> > >         pitched static.  At first I thought this was because I was
>> > >         scratching
>> > >         mp3s, but I took xwax 0.8 for a spin and it sounds much,
>> > >         much better.  I
>> > >         spent a day hacking on the linear sound scaler without much
>> > >         to show for
>> > >         it.  From looking at xwax, it looks like it uses a cubic
>> > >         interpolator
>> > >         instead of linear.  I tried implementing that logic into
>> > >         mixxx, with
>> > >         disastrous results.
>> > >
>> > >         So clearly I'm not an audio programmer.  But is there
>> > >         anything that can
>> > >         be done to improve performance of the scaler at low / fast
>> > >         changing
>> > >         rates?
>> > >
>> > >         thanks,
>> > >         Owen
>> > >
>> > >
>> > >         
>> > > ------------------------------------------------------------------------------
>> > >         Beautiful is writing same markup. Internet Explorer 9
>> > >         supports
>> > >         standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2
>> > >         & L3.
>> > >         Spend less time writing and  rewriting code and more time
>> > >         creating great
>> > >         experiences on the web. Be a part of the beta today
>> > >         http://p.sf.net/sfu/msIE9-sfdev2dev
>> > >         _______________________________________________
>> > >         Mixxx-devel mailing list
>> > >         Mixxx-devel@lists.sourceforge.net
>> > >         https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>> > >
>> > >
>> > > ------------------------------------------------------------------------------
>> > > Beautiful is writing same markup. Internet Explorer 9 supports
>> > > standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
>> > > Spend less time writing and  rewriting code and more time creating
>> > > great
>> > > experiences on the web. Be a part of the beta today
>> > > http://p.sf.net/sfu/msIE9-sfdev2dev
>> > > _______________________________________________
>> > > Mixxx-devel mailing list
>> > > Mixxx-devel@lists.sourceforge.net
>> > > https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>> > >
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Beautiful is writing same markup. Internet Explorer 9 supports
>> standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
>> Spend less time writing and  rewriting code and more time creating great
>> experiences on the web. Be a part of the beta today
>> http://p.sf.net/sfu/msIE9-sfdev2dev
>> _______________________________________________
>> Mixxx-devel mailing list
>> Mixxx-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>
>>
>
>
>
> ------------------------------------------------------------------------------
> Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
> Tap into the largest installed PC base & get more eyes on your game by
> optimizing for Intel(R) Graphics Technology. Get started today with the
> Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
> http://p.sf.net/sfu/intelisp-dev2dev
> _______________________________________________
> Mixxx-devel mailing list
> Mixxx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Mixxx-devel mailing list
Mixxx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to