[mythtv] [mythtv-commits] Ticket #6569: ac3 level is low for 5.1 source

Jean-Yves Avenard jyavenard at gmail.com
Thu May 6 02:57:50 UTC 2010


On 6 May 2010 09:54, Mark Spieth <mark at digivation.com.au> wrote:
> however auto switching between 2 and 6 ch mode in ac3 is currently broken.
> It currently only goes from 6 to 2 ch mode and never goes back to 6 ch mode.

The only time I can think 2 channels won't go back to 6, if when you
have weird stream that does 6 -> 2 -> 6 ->2 -> 6

I added a special case where if too many changes occurred too quickly,
it would stop the change any further.
This was to fix a few tickets

> jya, we need a reconfigure mode that allows seemless upmix/source channel
> changes without killing audio to swap between 2-6ch upmix and native 6ch
> mode. should be easy.

I'm a bit scared with your definition of "easy" :)

I can't think of an easy way to perform a seemless upmix and native 6 channels.
You will have to reset the audio buffer. We do not support a change of
format in the middle of the audio support (don't see how the excessive
extra work would be worth it too).
If you have timestretch on, this would be even more difficult

In the new hdaudio too, this is even more complicated by the fact the
format in the audio buffer would usually change between FMT_S16 and
FMT_FLOAT when upmix is activated

If we were to only deal with floats all the time, it would ease things
but it is still a rather significant job.

Currently, we recalculate all actions to be performed in one go in the
Reconfigure function...
Splitting that one up, to only redo partial calculations is a bit of a
head-aches, especially as often it's a combination of criteria that
trigger a processing.

Also, going from say 2 upmix 6 to native 6 doesn't mean the audio card
doesn't have to be reset either.
As we know support various formats, it could be that the native 6 has
been decoded as FMT_32 or FMT_FLOAT, (depending on what the audio
cards ask for, jack and coreaudio asks for floats) while upmixed AC3
would be FMT_S16

resampling may have to be done too etc...

So really... it's no easy job.
There are big ramifications to consider. And I'm not sure
recalculating things so you only close/reopen the audio card only when
necessary is worse the trouble.


More information about the mythtv-dev mailing list