[FFmpeg-devel] [PATCH 05/12] WMA: use vector_fmul_step_scalar
Michael Niedermayer
michaelni
Wed Sep 30 00:07:12 CEST 2009
On Tue, Sep 29, 2009 at 12:04:06PM +0100, M?ns Rullg?rd wrote:
> Michael Niedermayer <michaelni at gmx.at> writes:
>
> > On Sun, Sep 27, 2009 at 11:49:21AM +0100, Mans Rullgard wrote:
> >> ---
> >> libavcodec/wmadec.c | 6 +++---
> >> 1 files changed, 3 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/libavcodec/wmadec.c b/libavcodec/wmadec.c
> >> index a4d5ad6..9367e97 100644
> >> --- a/libavcodec/wmadec.c
> >> +++ b/libavcodec/wmadec.c
> >> @@ -601,9 +601,9 @@ static int wma_decode_block(WMACodecContext *s)
> >> for(i = 0;i < s->coefs_start; i++)
> >> *coefs++ = 0.0;
> >> n = nb_coefs[ch];
> >> - for(i = 0;i < n; i++) {
> >> - *coefs++ = coefs1[i] * exponents[i<<bsize>>esize] * mult;
> >> - }
> >> + s->dsp.vector_fmul_step_scalar(coefs, coefs1, exponents,
> >> + mult, 1<<bsize>>esize, n);
> >> + coefs += n;
> >> n = s->block_len - s->coefs_end[bsize];
> >> for(i = 0;i < n; i++)
> >> *coefs++ = 0.0;
> >
> > i suspect that highlevel optimizations are possible and should be done first
> > as they likely would render this optimized code obsolete
> >
> > for example: what value does 1<<bsize>>esize generally have?
> > if its commonly 1 the others could be convertet ...
>
> On a randomly chosen test file, 1 is the most common value, roughly
> 50%, with 2, 3, and 4 also occurring frequently.
i assume you speak of bsize-esize, because 1<<bsize>>esize cant be 3
i also assume that the % are scaled so that smaller n are weighted
accordingly less
ive not checked at all but from the hunk above it looks as if the original
code was written to also handle bsize < esize, the new code would not ...
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The misfortune of the wise is better than the prosperity of the fool.
-- Epicurus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090930/20bc2320/attachment.pgp>
More information about the ffmpeg-devel
mailing list