[mythtv-commits] Ticket #8030: AC3 track confuses trunk audio code

MythTV mythtv at cvs.mythtv.org
Fri Feb 26 15:47:04 UTC 2010


#8030: AC3 track confuses trunk audio code
-------------------------------------------+--------------------------------
 Reporter:  Yeechang Lee <ylee@…>          |       Owner:  jyavenard
     Type:  defect                         |      Status:  new      
 Priority:  minor                          |   Milestone:  0.23     
Component:  MythTV - Audio Output          |     Version:  head     
 Severity:  medium                         |     Mlocked:  0        
-------------------------------------------+--------------------------------
Changes (by jyavenard):

  * priority:  major => minor


Comment:

 Some notes...
 All Audio tracks in those samples are AC3 ; it just changes from AC3 2ch
 to 6ch

 Index: libs/libmythtv/avformatdecoder.cpp
 ===================================================================
 --- libs/libmythtv/avformatdecoder.cpp  (revision 23613)
 +++ libs/libmythtv/avformatdecoder.cpp  (working copy)
 @@ -3951,7 +3951,10 @@
                          {
                              if (hdr.channels != last_ac3_channels)
                              {
 -                                last_ac3_channels =
 curstream->codec->channels = hdr.channels;
 +                                VERBOSE(VB_AUDIO, LOC + QString("from %1
 to %2 channels").arg(last_ac3_channels).arg(hdr.channels));
 +                                if (hdr.channels < last_ac3_channels)
 +                                    curstream->codec->channels =
 hdr.channels;
 +                                last_ac3_channels = hdr.channels;
                                  SetupAudioStream();
                              }
                          }

 Will show whenever a number of channels change occurs in the AC3 audio
 track...
 You will see in that video that the number of channels change from 2 to 6
 to 2 to 6 etc...
 2010-02-27 02:16:43.404 AFD: from 2 to 6 channels
 2010-02-27 02:16:43.804 AFD: from 6 to 2 channels
 2010-02-27 02:16:43.805 AFD: from 2 to 6 channels
 2010-02-27 02:16:43.971 AFD: from 6 to 2 channels
 2010-02-27 02:16:43.971 AFD: from 2 to 6 channels
 2010-02-27 02:16:44.138 AFD: from 6 to 2 channels
 etc...

 When timestretch is activated once, digital passthrough is disabled for
 the remaining of the playback; this has the side effect of mythtv to then
 stop checking if the number of channels has changed and will only decode
 the stereo channels.
 *But* the number of channels change continue to occur...
 So the problem is still there, it's just hidden.

 The patch above will change the decoding to the least amount of channels
 present when a number of channels change occur.
 This is not the ideal solution, because should a genuine change in the
 number of channels occur then it won't happen.

 The ideal work-around would be to disable the number of channels tracking
 only if it occurs too quickly...

 Same issues occur with mplayer... (I get no sound during the pure stereo
 tracks)

 Change bug to minor as the problem is with the content...
 Note that the same issue is found in all those videos ...

 So I believe you should complain to NBC

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/8030#comment:6>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list