[mythtv] Cutlist editor is broken in 0.21 'bleeding' builds from atrpms

David Matthews dm at prolingua.co.uk
Thu Feb 15 12:39:47 UTC 2007

John Pilkington wrote:
> This is essentially a repost from 1 February, but after a new myth build 
> and under a new kernel. The symptoms are unchanged.  Recordings are from 
> DVB-T in the UK.
>> The cutlist editor is now broken.  It was OK in 
>> r12545, one of Axel's earlier 'bleeding' releases for FC5. 
>> After a few adjustments of step size and skipping backwards and forwards
>> the editor suddenly becomes unresponsive and mythfrontend CPU usage as
>> shown by 'top' reaches 95% or more.
>> Frontend log shows:
>> 007-01-31 14:35:30.242 TV: Changing from None to WatchingPreRecorded
>> 2007-01-31 14:35:30.265 The realtime priority setting is not enabled.
>> 2007-01-31 14:35:30.579 Video timing method: SGI OpenGL
>> [mpeg2video @ 0x5ee91e4]current_picture not initalized
>> 2007-01-31 14:35:39.019 AFD Error: Unknown decoding error
>> [mpeg2video @ 0x5ee91e4]current_picture not initalized
>> 2007-01-31 14:35:39.528 AFD Error: Unknown decoding error
>> [mpeg2video @ 0x5ee91e4]current_picture not initalized
>> 2007-01-31 14:35:41.345 AFD Error: Unknown decoding error

I upgraded to the latest svn recently and started seeing these symptoms 
when fast forwarding a recording or skipping forward.  After a few of 
these log messages the frontend would freeze and the only option was to 
kill it.  I traced the problem to the ffmpeg update in 12645 and some 
code that was added to libs/libavcodec/mpeg12.c .  I ifdef'd it out and 
it fixed the problem.  It doesn't seem to have had any adverse effects.

I don't know enough about the interaction between mpeg12.c and the 
higher levels to know the right way of dealing with this so I'm not 
proposing this as a patch to myth.  I suspect the problem has to do with 
mpeg streams with errors.  Due to having a slightly noisy signal there 
are always a few mpeg errors reported in my log.


Index: libs/libavcodec/mpeg12.c
--- libs/libavcodec/mpeg12.c    (revision 12781)
+++ libs/libavcodec/mpeg12.c    (working copy)
@@ -3311,10 +3311,12 @@
                              if(mpeg_field_start(s2) < 0)
                          return -1;
+#if (0)
                      av_log(avctx, AV_LOG_ERROR, "current_picture not 
                      return -1;

                  if(avctx->thread_count > 1){
                      int threshold= (s2->mb_height*s->slice_count + 
avctx->thread_count/2) / avctx->thread_count;

More information about the mythtv-dev mailing list