• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Stereo > Mono Downmixing on iOS
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Stereo > Mono Downmixing on iOS


  • Subject: Re: Stereo > Mono Downmixing on iOS
  • From: Brian Willoughby <email@hidden>
  • Date: Wed, 30 Mar 2011 16:01:41 -0700

There is no option for down-mixing that simultaneously meets all standard goals. Therefore, the logical question is: What are your goals?

(L+R)/2 is the safest option, because it will never clip. But, as you noticed, it has the worst side-effect in terms of lowered output level. The "/2" part of the equation is a 6 dB drop.

Acoustically, two separate speakers mix to "mono" (e.g. playback on two speakers with one microphone recording the acoustic mix) with approximately 3 dB difference instead of 6 dB, but acoustics do not generally have to be concerned about 0 dBFS. You could simulate this by dividing L+R by the square root of 2, instead of dividing by 2. But this option would both allow some clipping and suffer some loss of output level.

Video game software mixers historically have ignored the goal of completely undistorted sound, and thus can get away with using L+R without the /2 adjustment. This solves the loss of signal level at the cost of potential clipping distortion.

Either of the last two options, -3 dB or -0 dB, could be improved by using Apple's AUPeakLimiter to avoid clipping distortion. The drawback is that limiting can alter the sound.

As far as I am aware, there is no option to avoid canceling out when mixing stereo to mono. The standard is for the mixing engineer of the original material to test for this at production time and avoid the problem up front. Still, some consumer electronics fake stereo from a mono source by creating L=-R, which would completely cancel out when mixed back to mono. There are only two ways to protect against this possibility: A) Avoid mixing entirely and take either L or R as the mono output. This obviously runs the risk of losing any audio from the other channel, but there is no signal level loss and no clipping. B) You could write code which detects cancellation and adapts to it on the fly by changing the mix algorithm.

So, you see, there are many standard approaches, depending upon what the important goals are, and also depending upon the source material. There simply is no single approach that handles all possible stereo inputs with no negative side-effects.

Brian Willoughby
Sound Consulting


On Mar 30, 2011, at 11:25, Jan wrote:
I actually tried that but I was unsure if that’s the best option ((L +R)/2). There seem to be certain cases where this could lead to the signal getting cancelled-out, and the signal level can get lowered for songs that have very different left/right channels.

Is that solution the standard approach for downmixing stereo to mono?

On Wed, Mar 30, 2011 at 10:51 AM, Jan <email@hidden> wrote:
I’m trying to downmix a PCM stereo signal to mono on iOS (realtime). The input consists of the two (stereo) channels, which are processed through a number of effects, and in the end I need two channels back out, where each channel is a mono downmix of the stereo signal at the end of the chain (i.e. both output channels would be identical).


I though I could maybe use the AudioConverter but it doesn’t seem to do mixing, and the MultiChannelMixer seems to be quite limited on iOS as well in terms of output channel configuration.

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Stereo > Mono Downmixing on iOS (From: Jan <email@hidden>)
 >Re: Stereo > Mono Downmixing on iOS (From: Morgan Packard <email@hidden>)
 >Re: Stereo > Mono Downmixing on iOS (From: Jan <email@hidden>)

  • Prev by Date: Re: Stereo > Mono Downmixing on iOS
  • Next by Date: Re: Stereo > Mono Downmixing on iOS
  • Previous by thread: Re: Stereo > Mono Downmixing on iOS
  • Next by thread: Re: Stereo > Mono Downmixing on iOS
  • Index(es):
    • Date
    • Thread