[mythtv] [patch] Fix for sluggish pause

Shane Shrybman shrybman at aei.ca
Mon Dec 6 19:32:25 UTC 2004


Hi,

On Mon, 2004-12-06 at 11:43, David Engel wrote:
> On Sun, Dec 05, 2004 at 11:11:07PM -0500, Isaac Richards wrote:
> > Cool.  Happen to know if thumbnail generation's fixed, btw?
> 
> The attached patch might help, but I doubt it.  I can't test this very
> well remotely.
> 
> The problem appears to be in the position map handling, which I didn't
> think I'd touched.  NVP::GetScreenGrab ultimately calls
> dec::DoFastForward.  dec::DoFastForward doesn't think there is a
> position map and starts scanning frames until the postion map covers
> the desired frame.  That never happens and the loop eventually breaks
> out when it hits eof.
> 

I compiled a fresh version from CVS and did some tests. Hopefully this
output will be useful.

Test #1 - record a 2 min clip on a remote SBE and after it is finished
view "Recorded Programs" in the web interface. Here is the SBE log with
"playback" logging on. Preview image is set for 5 seconds in, in both
tests.

2004-12-06 14:09:24.730 AVFD
2004-12-06 14:09:24.740 AVFD: Opening Stream #0: codec id 2
2004-12-06 14:09:24.743 detectInterlace(Detect Scan, Detect Scan, 29.97, 480) ->Interlaced Scan
2004-12-06 14:09:24.744 Interlaced: Interlaced Scan  video_height: 480  fps: 29.97
2004-12-06 14:09:24.779 AVFD: Looking for decoder for 2
2004-12-06 14:09:24.793 AVFD
2004-12-06 14:09:24.795 AVFD: Opening Stream #1: codec id 86016
2004-12-06 14:09:24.798 AVFD: Looking for decoder for 86016
2004-12-06 14:09:24.894 Initializing audio parms from stream #0.
2004-12-06 14:09:24.902 Estimated bitrate = 192000
2004-12-06 14:09:25.025 Position map filled from DB to: 191
2004-12-06 14:09:25.031 SyncPositionMap prerecorded, from DB: 192 entries
2004-12-06 14:09:25.033 detectInterlace(Ignore Scan, Interlaced Scan, 29.97, 480) ->Interlaced Scan
2004-12-06 14:09:25.035 Interlaced: Interlaced Scan  video_height: 480  fps: -1
2004-12-06 14:09:25.149 Position map found
2004-12-06 14:09:25.358 Image size. dispxoff 0, dispyoff: 0, dispwoff: 0, disphoff: 0
2004-12-06 14:09:25.363 Image size. imgx 0, imgy: 0, imgw: 352, imgh: 480
2004-12-06 14:09:25.431 DoFastForward: Not enough info in positionMap, we need frame 341 but highest we have is 2865
2004-12-06 14:09:25.433 DoFastForward: Still Not enough info in positionMap, we need frame 341 but highest we have is 2865.  Will seek frame-by-frame

Test #2 - same as test one except view "Recorded Programs" before the SBE has finished recording.

2004-12-06 14:17:53.693 AVFD
2004-12-06 14:17:53.701 AVFD: Opening Stream #0: codec id 2
2004-12-06 14:17:53.705 detectInterlace(Detect Scan, Detect Scan, 29.97, 480) ->Interlaced Scan
2004-12-06 14:17:53.711 Interlaced: Interlaced Scan  video_height: 480  fps: 29.97
2004-12-06 14:17:53.719 AVFD: Looking for decoder for 2
2004-12-06 14:17:53.724 AVFD
2004-12-06 14:17:53.729 AVFD: Opening Stream #1: codec id 86016
2004-12-06 14:17:53.734 AVFD: Looking for decoder for 86016
2004-12-06 14:17:53.740 Initializing audio parms from stream #0.
2004-12-06 14:17:53.746 Estimated bitrate = 192000
2004-12-06 14:17:53.764 Position map filled from DB to: 89
2004-12-06 14:17:53.767 SyncPositionMap prerecorded, from DB: 90 entries
2004-12-06 14:17:53.769 detectInterlace(Ignore Scan, Interlaced Scan, 29.97, 480) ->Interlaced Scan
2004-12-06 14:17:53.776 Interlaced: Interlaced Scan  video_height: 480  fps: -1
2004-12-06 14:17:53.789 Position map found
2004-12-06 14:17:53.899 Image size. dispxoff 0, dispyoff: 0, dispwoff: 0, disphoff: 0
2004-12-06 14:17:53.905 Image size. imgx 0, imgy: 0, imgw: 352, imgh: 480
2004-12-06 14:17:53.945 DoFastForward: Not enough info in positionMap, we need frame 6619384 but highest we have is 1335
2004-12-06 14:17:53.948 DoFastForward: Still Not enough info in positionMap, we need frame 6619384 but highest we have is 1335.  Will seek frame-by-frame
2004-12-06 14:17:56.803 IOBOUND - blocking in ThreadedFileWriter::Write()
2004-12-06 14:18:00.071 Finished recording 8 CFTO on channel: 1008
2004-12-06 14:18:00.101 Changing from RecordingOnly to None

Notice how the desired frame is much larger in the second test. I am going to try your thumbs1 patch now.

Regards,

Shane



More information about the mythtv-dev mailing list