From: Mark on

> Then compare the relative strengths of the L+R and L-R channels --
> normally L-R should be significantly smaller than L+R.  In fact, this is
> why the 'wrong' way is a broadcast-killer -- the FM stereo broadcast
> protocol depends on this property, won't work without it, etc.
>
>

There is nothing fundamental in the FM stereo protocol that depends on
L+R being greater then L-R.

The "wrong" (incorrect phasing) way will work fine on a stereo
receiver, but it will not work fine on a mono receiver.

It's just that most times you want to also be heard well by folks
listening in mono.

Mark

From: Tim Wescott on
On Fri, 05 Feb 2010 10:08:21 -0500, Jerry Avins wrote:

> kork wrote:
>>> Tim Wescott wrote:
>>>> On Thu, 04 Feb 2010 09:57:49 -0600, kork wrote:
>>>>
>>>>
>>>>>> kork wrote:
>>>>>>> Hi folks,
>>>>>>>
>>>>>>> I'm going to develop a quality control application that inspects
>>>>> recently
>>>>>>> imported audio files for a number of checks. One of them is the
>>>>> detection
>>>>>>> of counterphase fragments in the file. With counterphase I mean a
>> 180
>>>>>>> degrees (or pi rad, if you prefer)
>>>>> phase
>>>>>>> shift between the two audio channels in the (stereo) file. In a
>> radio
>>>>>>> broadcast of the file this is killing when it is listened through
>>>>>>> a mono-receiver.
>>>>>>>
>>>>>>> I was thinking of subtracting one channel from the other (or
>>>>>>> reverse
>> a
>>>>>>> channel and add it to the other). Then flagging the audio
>>>>>>> fragments
>> as
>>>>>>> counterphase when the resulting signal differs a lot from zero
>> during
>>>>> a
>>>>>>> certain amount of time.
>>>>>>> But since it is likely that the 2 channels are anything but equal,
>> I
>>>>> may
>>>>>>> never get to see a flatlioe.
>>>>>>>
>>>>>>> I thought maybe you DSP guys can give me some insights on this?
>> Maybe
>>>>>>> there's a test in the frequency domain I can think of?
>>>>>> Compute (L+R) and (L-R), rectify, accumulate, compare. It is very
>>>>>> obvious if the stereo channels are in phase or out of phase.
>>>>>>
>>>>>>
>>>>>> Vladimir Vassilevsky
>>>>>> DSP and Mixed Signal Design Consultant http://www.abvolt.com
>>>>> Hi Vladimir,
>>>>>
>>>>> Thanks for your answer.
>>>>> Would you mind elaborating a bit on the "rectify" and "accumulate"
>>>>> suggestions? They're not so obvious terms for me in this domain.
>> Thanks
>>>>> again.
>>>> "Rectify": take the absolute value.
>>>>
>>>> "Accumulate": sum up a bunch of samples.
>>>>
>>>> Then compare the relative strengths of the L+R and L-R channels --
>>>> normally L-R should be significantly smaller than L+R. In fact, this
>> is
>>>> why the 'wrong' way is a broadcast-killer -- the FM stereo broadcast
>>>> protocol depends on this property, won't work without it, etc.
>>>>
>>>> I'll charge you money for answers, too, but only if the question
>>>> takes
>>
>>>> more than a few lines to answer.
>>> The accumulation should be lossy; i.e., include a "forgetting factor".
>>> alternatively, you could dump the result after a suitable time and
>>> start
>>
>>> over.
>>>
>>> Jerry
>>> --
>>
>> Thanks Tim and Jerry,
>>
>> I appreciate the jargon explanation.
>> This sounds pretty straight-forward to implement. I'll have a go at it.
>>
>> Jerry, your "forgetting factor" sounds logical. I was thinking of just
>> testing separate successive chunks of samples, so I won't have any
>> "memory-effect".
>
> That will require counting and branching. Forgetting is actually
> simpler. The convention is that x[n] is the input and y[n] is the
> output. Set y[n+1] = (1-a)*y[n] + a*x[n+1]. For stability, 0 > a > 1.
> Larger values forget faster. This is called an exponential averager.

Forgetting takes fewer lines of more direct code, but has some
mathematical subtleties that can trip up a naive maintainer.

For testing, I'd be tempted to accumulate-and-dump just to raise the
probability that a non-DSP maintainer that comes after me would be able
to understand the functioning of the code.

--
www.wescottdesign.com
From: glen herrmannsfeldt on
Mark <makolber(a)yahoo.com> wrote:

>> Then compare the relative strengths of the L+R and L-R channels --
>> normally L-R should be significantly smaller than L+R. ?In fact, this is
>> why the 'wrong' way is a broadcast-killer -- the FM stereo broadcast
>> protocol depends on this property, won't work without it, etc.

> There is nothing fundamental in the FM stereo protocol that depends on
> L+R being greater then L-R.

I think that it true, but it isn't easy to figure out. The spectrum
of an FM signal is a very complicated function of the modulating
signal. The all L-R case will have all the power in the subcarrier
38kHz +/-15kHz range. If in addition you had an unusual amount
of power in the higher audio range it might be that you could
get outside the FCC limits. (I don't know how the FCC specifies
the limits for FM transmitters.)

> The "wrong" (incorrect phasing) way will work fine on a stereo
> receiver, but it will not work fine on a mono receiver.

It is convenient that as (L-R) increases (L+R) decreases
such that the sum doesn't get too large. (Assuming L and R
stay in range.)

-- glen
From: Jerry Avins on
glen herrmannsfeldt wrote:
> Mark <makolber(a)yahoo.com> wrote:
>
>>> Then compare the relative strengths of the L+R and L-R channels --
>>> normally L-R should be significantly smaller than L+R. ?In fact, this is
>>> why the 'wrong' way is a broadcast-killer -- the FM stereo broadcast
>>> protocol depends on this property, won't work without it, etc.
>
>> There is nothing fundamental in the FM stereo protocol that depends on
>> L+R being greater then L-R.
>
> I think that it true, but it isn't easy to figure out. The spectrum
> of an FM signal is a very complicated function of the modulating
> signal. The all L-R case will have all the power in the subcarrier
> 38kHz +/-15kHz range. If in addition you had an unusual amount
> of power in the higher audio range it might be that you could
> get outside the FCC limits. (I don't know how the FCC specifies
> the limits for FM transmitters.)

I don't think that the RF spectrum is relevant. Compatible FM stereo
consists of L+R in the main band where a mono detector will reproduce
it, and L-R multiplexed in a way that can, for this discussion, remain
mysterious. A stereo receiver combines (L+R) and (L-R) to produce L and
R. The problem addressed here occurs at the transmitter. If one of the
channels [L, R] is inverted before the modulator gets it. The main FM
channel will consist of L-R. An announcer speaking into a single mic
that feeds both channels might as well have stayed home. *All* of his
voice will be in the (L-R) channel that a mono receiver doesn't see.

>> The "wrong" (incorrect phasing) way will work fine on a stereo
>> receiver, but it will not work fine on a mono receiver.
>
> It is convenient that as (L-R) increases (L+R) decreases
> such that the sum doesn't get too large. (Assuming L and R
> stay in range.)

Jerry
--
Engineering is the art of making what you want from things you can get.
�����������������������������������������������������������������������
From: glen herrmannsfeldt on
Jerry Avins <jya(a)ieee.org> wrote:
(snip)

> I don't think that the RF spectrum is relevant. Compatible FM stereo
> consists of L+R in the main band where a mono detector will reproduce
> it, and L-R multiplexed in a way that can, for this discussion, remain
> mysterious. A stereo receiver combines (L+R) and (L-R) to produce L and
> R. The problem addressed here occurs at the transmitter. If one of the
> channels [L, R] is inverted before the modulator gets it. The main FM
> channel will consist of L-R. An announcer speaking into a single mic
> that feeds both channels might as well have stayed home. *All* of his
> voice will be in the (L-R) channel that a mono receiver doesn't see.

Yes. But with all the power in the subcarrier, that is, above 19kHz,
I think that changes the spectrum of the transmitted signal.
With 75kHz deviation and a large amount of 38kHz signal, you might
get a significant amount outside the 200kHz wide band.

As well as I understand it, assumptions were made that,
on average, most of the power isn't that high. The only way to
know would be to read the FCC rules in detail. With highly
compressed rock music, the amplitude could be pretty high.
If, in addition, the signal had a large component close to
15kHz (maybe there are FCC rules on that, too), that makes
it even worse.

>>> The "wrong" (incorrect phasing) way will work fine on a stereo
>>> receiver, but it will not work fine on a mono receiver.

>> It is convenient that as (L-R) increases (L+R) decreases
>> such that the sum doesn't get too large. (Assuming L and R
>> stay in range.)

-- glen