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

Re: Masking Models PEAQ (Spreading Functions Used)

Dear Campbell,

for implementing ITU-R BS.1387 3 documents are enough:

[1] ITU-R BS.1387-1
[2] An Examination and Interpretation of ITU-R BS.1387, P. Kabal
[3] Perceptual Audio Quality Assessment using a Non-Linear Filter Bank, T.

 In [3] chapter 2 concepts used in BS.1387 are described (including
Terhardt's formula for frequency spreading - 2.37). Forward masking is
implemented using simple smoothing.

 But don't expect that you will get implementation that will be in
conformance with BS.1387. I know about 4 independent implementations
(including mine) which produce very similar results, but different from
results of Opera (which is implementation made by people who were working
on BS.1387). It seems that they implemented something that they didn't
describe in BS.1387.

 Then also be aware that there is an error in pseudocode for
frequency spreading in Filterbnk model :
1. According to pseudocode in upward spreading band k affects band
j for value
    out[k] * pow(cu[k],  j-k) = out[k] * pow(a*pow(dist,s[k])+b*cu[k-1],

so influence of time smoothing depends on distance between band j and band
And I suppose that the effect of band k onto band j should be

    out[k] * (a*pow(pow(dist,s[k]),  j-k) + b*cu[k-1])

At least that is my interpretation of "The linear representation of the
slopes are smoothed over time by a first order low pass filter..." from
BS.1387-1 page 51. I also believe that frequency spreading in Opera is
implemented like in pseudocode

2. In downward spreading A_re and A_im are already affected by upward
spreading. So, using them, upward spreading will influence downward
spreading. Thus out_re and im_re should be used for input of downward
smearing instead of A_re and A_im.

Regards, Goran.

> Date:    Tue, 25 Apr 2006 18:20:50 +0100
> From:    Dermot Campbell <dermot.campbell@xxxxxxxxxxxx>
> Subject: Masking Models PEAQ (Spreading Functions Used)
> Hello All,
> I have a query about the PEAQ algorithm (BS.1387 ITU standard) that=20
> someone may be able to help me with on here.
> I=92m trying to trace the origins of the masking models (spreading=20
> functions that is), both frequency and time domain spreading, used in=20
> PEAQ. Where did these masking models originate and was different=20
> time/frequency spreading techniques tested? I=92m finding it difficult to=
> =20
> trace papers where these spreading functions have been developed,
> tested=20
> etc. Also, is it possible to obtain details on work carried out by the=20
> ITU in the lead up to the official standardisation of PEAQ (study
> groups=20
> etc)?
> Thanks in advance to anyone who is able to help me, please feel free to=20
> email me if my email is a little vague.
> Kind Regards,
> Dermot Campbell,
> PhD Student NUIG Ireland