[MPlayer-dev-eng] channel order (was: [ffdts] multichannel decode [patch])

D Richard Felker III dalias at aerifal.cx
Sun Oct 17 17:22:16 CEST 2004


On Sun, Oct 17, 2004 at 11:52:18AM +0200, Florian Dietrich wrote:
> Hi,
> 
>  --- Wei Jiang <jiangw98 at yahoo.com> wrote: 
> 
> > Second issue is per DTS ETSI TS 102 114 1.1.1, the DTS
> > channel line up is different from AC3
> > their Center channel is always first if there is any,
> > and LFE is always last if there is any.
> > 
> > So I changed the channel lineup routine, so that the
> > final out put is
> > 
> > L R SL RL C LFE, and it is been tested correct at XBMC
> > plantform which use mplayer.dll as the core player
> 
> We have a related problem with directsound audio output on windows.
> 
> DirectSound requires a different order of the channels than mplayer
> obviously always uses. While I sent a patch to the mplayer-cygwin

are you sure? i don't think mplayer knows what channel order it uses.
i get nonsense output on linux when it tries to downsample aac to
stereo, even...

> list which simply re-orders the channels again in ao_dsound, you can
> imagine that this is quite ugly and has some impact on performance.
> 
> The best solution would of course be if the channels were ordered
> correctly in the decoding routines. Maybe it is already sufficient to
> put an "#ifdef WIN32" into all the decoders, otherwise maybe some

this is definitely wrong. right now audio filters suck, but suppose
you're filtering the audio and a filter needs to know which channel is
which? it's totally broken for them to change between platforms. the
only sane way to reorder is at the ao end.

actually a good filter layer would solve this problem intelligently,
but libaf is one of the most broken parts of mplayer.

anyway win32 users always have excessively fast computers to run all
their bloatware, so i don't think reordering in ao_dsound would be a
problem, if it turns out to be necessary.


rich




More information about the MPlayer-dev-eng mailing list