[mythtv] [mythtv-commits] Ticket #3361: Improve Preview Generation

Chris Pinkham cpinkham at bc2va.org
Sat Dec 8 18:39:41 UTC 2007


* On Sat Dec 08, 2007 at 05:46:55PM -0000, MythTV wrote:
> #3361: Improve Preview Generation

> Comment(by sphery <mtdean at thirdcontact.com>):
> 
>  The attached patch, mythtv-find_file_for_preview_gen.patch , modifies the
>  Storage Group changes committed in [15029] based on the suggestion from
>  Chris Pinkham at http://www.gossamer-
>  threads.com/lists/mythtv/dev/303576#303576 .  I think the changes are as
>  he suggested and fit in well with the preview generator changes in
>  [15029], but I'm happy to make additional changes as necessary.

Daniel already has a patch to correct this issue which actually reverts
part of his original patch based on my comments in the above thread.
He emailed me his patch a couple days ago so I could take a look and
I gave him a couple comments.  He's also cleaning up a couple other minor
things in the StorageGroup class, so that may be why he hasn't committed
the fix yet.  I'll let him comment further though (possibly via -commits). ;)

>  Without the patch, going to the MythWeb Recorded Programs page takes
>  forever and results in a huge CPU usage spike (mythbackend was running at
>  100% on my Athlon XP 2400+ (load average > 6) for so long that I just

I just had another thought about this that would improve preview speed. In
programs/mythbackend/backendutil.cpp, I added a recordingPathCache along
with the appropriate lock and exported GetPlaybackURL() function.  It
probably makes sense to move this caching to the Storage Group level in
libs/libmythtv/storagegroup.cpp.  We should be able to get rid of the
recordingPathCache if we had a StorageGroupCache.  The StorageGroupCache
would give us speedups for anything looking for a file in a Storage Group
directory.  That way we'd get the benefit of the cache for any files that
are stored in a Storage Group, including the recordings, pixmaps, and
anything else we store there later.

--
Chris


More information about the mythtv-dev mailing list