[mythtv] Brainstorming a new idea for the program guide

Robert Johnston anaerin at gmail.com
Mon Sep 21 21:59:50 UTC 2009


On Mon, Sep 21, 2009 at 15:47, Robert McNamara
<robert.mcnamara at gmail.com> wrote:
> On Mon, Sep 21, 2009 at 2:42 PM, Raymond Wagner <raymond at wagnerrp.com> wrote:
>> Robert McNamara wrote:
>>>
>>> 2) The massive load downloading banners for all programs would create
>>> on our (open, free) sources.  I think that all myth users downloading
>>> art for all shows (or even all those they bring up in the EPG) would
>>> probably very quickly put TVDB out of commission.
>>>
>>
>> This could probably be alleviated by TVDB offering the 300x168 5KB
>> thumbnails over the API, instead of the full 1920x1080 500+KB fanart.
>
> We're still talking about downloading thousands upon thousands of
> images if you're populating the full EPG times many thousands of myth
> users.  IMO it's going to be way too much load to put on a free
> source.

It is a heavy load, but with proper caching client-side, it needn't be
as much of a drain. Indeed, with a properly setup, semi-permanent
cache, Myth clients could be set to download "maximum of x images per
hour", as requested by the TVDB site, to spread the bandwidth load. It
would also make the loading faster (at least, once the cache is
populated), as the images would be coming from a local source. And
having the rationing request set up would also give TVDB a way of
notifying clients when there is new information available.

It could also be possible, if TVDB are willing, to set up a kind of
"Cache preload burst", where a client requests a large batch of images
to pre-load it's cache, and the server zips/rars/tars/packages up all
the images and sends them down to the client in one blob. For example,
sending all the HD images at once, and letting the client
automatically make the thumbnails, or sending a batch of all the
thumbnails, which would populate the basic EPG, and let the client
then only request the HD/Full size images it needs when they're called
for (and caching them, obviously).

This would mean that first run there is a large download happening in
the background, but this could be backgrounded (and bandwidth limited,
on server or client side) and dealt with asynchronously. Or, indeed,
distributed peer-to-peer in a BitTorrent-esque manner, to ease the
load on the servers a lot (Essentially, BitTorrent with "Web Seeds").

Just a thought (or two).
-- 
Robert "Anaerin" Johnston
Sent from Regina, Saskatchewan, Canada


More information about the mythtv-dev mailing list