[mythtv-commits] Ticket #10622: OSD does not correctly indicate progress of show, shows as being fully complete

MythTV noreply at mythtv.org
Thu Jun 7 22:27:20 UTC 2012


#10622: OSD does not correctly indicate progress of show, shows as being fully
complete
-------------------------------------+------------------------
 Reporter:  gaberubin@…              |          Owner:
     Type:  Bug Report - General     |         Status:  new
 Priority:  minor                    |      Milestone:  0.25.2
Component:  MythTV - Video Decoding  |        Version:  0.25
 Severity:  low                      |     Resolution:
 Keywords:                           |  Ticket locked:  0
-------------------------------------+------------------------
Changes (by stichnot):

 * status:  closed => new
 * severity:  high => low
 * component:  MythTV - General => MythTV - Video Decoding
 * priority:  major => minor
 * milestone:  0.25.1 => 0.25.2
 * resolution:  Fixed =>


Comment:

 Reopening as there is still a problem with the sample referenced in the
 ticket.

 I have noticed similar issues with Live TV, and they may very well have
 been fixed by recent changes.  However, the colbertclip.mpg sample still
 shows a ridiculously large duration.  Most likely there has been a
 regression in ffmpeg.  Running mythffmpeg on the sample:

 {{{
 mythtv at mythmaster:/storage/videos/cctest$ mythffmpeg -i colbertclip.mpg
 ffmpeg version git-2012-06-02-d6a4d9e Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Jun  4 2012 05:59:00 with gcc 4.4.3
   configuration: --prefix=/usr/mythtrunk --enable-libx264 --enable-
 libmp3lame --compile-type=profile
   libavutil      51. 56.100 / 51. 56.100
   libavcodec     54. 23.100 / 54. 23.100
   libavformat    54.  6.101 / 54.  6.101
   libavdevice    54.  0.100 / 54.  0.100
   libavfilter     2. 77.100 /  2. 77.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
 [mpegts @ 0x9fef3c0] PES packet size mismatch
 Input #0, mpegts, from 'colbertclip.mpg':
   Duration: N/A, bitrate: N/A
     Stream #0:0[0x7c1]: Audio: ac3, 0 channels
     Stream #0:1[0x7c2]: Video: mpeg2video, 90k tbn
 At least one output file must be specified
 }}}

 But running an older version of ffmpeg that happens to be installed:

 {{{
 mythtv at mythmaster:/storage/videos/cctest$ ffmpeg -i colbertclip.mpg
 ffmpeg version git-2011-12-07-d9ced9f, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Dec  6 2011 16:25:12 with gcc 4.4.3
   configuration: --enable-gpl --enable-libfaac --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora
 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree
 --enable-postproc --enable-version3 --enable-x11grab
   libavutil    51. 30. 0 / 51. 30. 0
   libavcodec   53. 41. 0 / 53. 41. 0
   libavformat  53. 24. 0 / 53. 24. 0
   libavdevice  53.  4. 0 / 53.  4. 0
   libavfilter   2. 51. 0 /  2. 51. 0
   libswscale    2.  1. 0 /  2.  1. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [mpeg2video @ 0x9432160] mpeg_decode_postinit() failure
     Last message repeated 36 times
 [mpegts @ 0x92dcaa0] PES packet size mismatch

 Seems stream 3 codec frame rate differs from container frame rate: 59.94
 (60000/1001) -> 59.94 (60000/1001)
 Input #0, mpegts, from 'colbertclip.mpg':
   Duration: 11:52:27.02, start: 44900.580778, bitrate: 9 kb/s
   Program 1
     Stream #0:0[0x840]: Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz,
 5.1(side), s16, 384 kb/s
     Stream #0:1[0x842]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
 yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 24000 kb/s, 59.96 fps, 59.94 tbr,
 90k tbn, 119.88 tbc
     Stream #0:2[0x7c1]: Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz,
 stereo, s16, 384 kb/s
     Stream #0:3[0x7c2]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
 yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 24000 kb/s, 54.56 fps, 59.94 tbr,
 90k tbn, 59.94 tbc
 At least one output file must be specified
 }}}

 Initial analysis shows that AvFormatDecoder::OpenFile() calls
 av_estimate_timings() which calls estimate_timings() which calls
 estimate_timings_from_pts(). That presumably fails because the duration
 ends up AV_NOPTS_VALUE, which is translated as a ridiculously large
 duration in the progress bar.

-- 
Ticket URL: <http://code.mythtv.org/trac/ticket/10622#comment:3>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center


More information about the mythtv-commits mailing list