Hi,
first off, I'm still interested in working on this, but I hit some motivational low this week and worked on some smaller tasks this weekend..
Also I'm probably not working full time on this, but still better than nothing, right?
Vankwish Wrote:First of all allow me to thank all developers past, present and future for their excellence! Secondly let me apologise for the length of this post.
As more and more low power devices are being supported by xbmc (either under linux or natively under windows or android or ios . . .) I think that the appeal of storing media on portable usb hdd is strong with the 'average' user who does not know/want/need a dedicated NAS solution. I also understand efforts are being made to source content not just locally but also on line (a la boxee).
It is for this reason I would like to see support for removable media sources (usb or online) supported at the database level. I didn't know whether it concerns this thread or either thread here or over here, and I admit I am certainly not knowledgeable enough to even begin to suggest how this can be implemented but I can attempt to describe an ideal outcome ...
At start up or when a device is connected that has previously been added to the library as a source, XBMC would recognise this device (unique identification or by volume label or possibly pivos userdata style with a 'named' file/folder residing on the drive?) and this would be reflected in the library listings (with the specific content being displayed in moves/TV/music/home vids. . . ). When this drive is unmounted the listings are removed (or hidden I guess) until the device is plugged back in. Once a source has been scanned and added to the library it need not be scanned in again until there are any addition/deletions etc. The benefit of this would be that xbmc would remember the watched statuses of the media across different drives and the library could be updated easily independently of which drive was connected at the time. If media was unavailable xbmc could still display it in the library and present the user with the information of the location of the media (i.e. "plug the 'movies' drive in to watch"\"on WD elements drive" etc)
I understand that this may be accomplished already in several different ways, most popularly by mobile device users making separate profiles reflecting changes in their sources\local network. I have also achieved a similar effect for a family members pivos xios where the userdata dir (xbmc-data) is stored on each of the hard drives with the settings specific to the media on that hard drive, but it is restricted to a cold boot start up, one drive at a time and no overall 'library'.
Personally I have a NAS solution for both my media and database and understand that it may conflict with the idea of a central database implementation shared across multiple xbmc instances but I believe that the direction that xbmc is headed rapidly, if implemented transparently, this may be a valuable feature for those who may not frequent these boards as 'enthusiats' and use the low power/mobile versions of xbmc.
Thank you for taking the time to read this admittedly lengthy post, and irrespective of whether ‘I’m talking out of my arse’ would like to wish you all the best of luck!
So, one thing you're after is hiding library items that are on drives, not currently connected. right?
My idea was to automatically add a media filter to a source once we know it's offline. That media filter would only show items of that source, where we have a local copy. It should of course be possible to remove/add this filter manually. While this is definitely on my todo/wishlist, it's probably sth. I'm going to work on after all the rest is done.
The next thing is, that xbmc doesn't loose data when you unconnect a drive?!? Because I'm using external drives with my laptop and I never had any issues, as long as l don't do a "clean library" while drives are not connected.
The big question is, how do we find out if a source is unavailable/available? With usb drives, we could probably listen the some events of the operating system. with NAS drives, I could see different approaches... so, any ideas about that?