[mythtv] mythvideo DB enhancement
cpinkham at bc2va.org
Sat Jan 5 18:08:53 UTC 2008
* On Fri Jan 04, 2008 at 11:18:50PM -0500, George Nassas wrote:
> A problem with the current setup is all video clients see the entire
> video list regardless of if they can reach the file (I'm mean when DB
> view is active which is always for me). With per-frontend SG settings
> you can at least tell each host which videos apply to it.
> That said, I'm not sure what to do about a master backend that
> doesn't have a local frontend. Where does the uPnP video server get
> its storage group settings from? If you're running mythweb you can
> define groups for a headless BE. Otherwise... ?
The same setup code can be run from mythtv-setup and mythfrontend,
there's nothing prohibiting that. The basic SG setup code needs to
be in mythtv-setup because you have to have a Default Storage Group
configured before you run the backend. You can also add Storage
Group dirs for MythVideo, etc. on the frontend though. The uPnP server
is on the backend, so it would use the method the backend uses to locate
files. I believe MythWeb searches the whole list of dirs rather than
trying to deal with maintaining its own search list.
If a server does not have a specific Storage Group defined for it, then
the code falls back to searching the list of directories for the
Default Storage Group for that host. If the Default Storage Group for
that host does not exist or the file is not found, then the code uses
the list of all directories in the storagegroup table. So, a
frontend/backend doesn't need to have a Storage Group or directory
setup as long as that directory is configured in another Storage Group
somewhere. This is for playback only and is what allows people to
move files around without updating the DB. For recording purposes,
the SG code uses the directory list of the defined Storage Group.
If there isn't a local copy of that SG, then the code uses the
directory list for the Default SG for that host. If a Default SG
does not exist for that host, then the code uses the directory
list for all Default SGs. Most of that is irrelevant for MythVideo,
but I wanted to explain the way things currently work if anyone is
messing with the SG code.
The perl bindings code only searches the SG directory list for the given
SG and hostname, it does not currently fallback like the StorageGroup
class code does.
More information about the mythtv-dev