Question: Will the core be coded in .NET? Which programming language, and which .NET framework version/platform?
I think that C# is probably best just because MediaPortal and MeediOS uses it (and it is of .NET most similar to C++).
Also separate the 'core' backend front the frontend 'GUI' and make them run standalone from each other.
Suggestions:
- Don't call it "
XBMC" something as I'm sure that Boxee, Plex, MediaPortal, and MeediOS user will want to use it as well if turns out good, and I think that it will probably better to share one common media manager between all these projects, and much easier for all users.
- Use the
Mono framework as default if it's going to be coded in dotnet, that way it should work on Linux, Mac, and Windows for cross-platform domination(!).
- If possible make it have a Web based GUI interface, with it supporting multiple platforms out-of-the-box, (which should be easier if it uses a WebGUI by default), and as a bonus it should be accessible from any web browser, even over the internet.
- Make it as modular as possible, dynamic libraries, and separate the backends from the GUI with an API so others can write scripts/plugins for it or even a new GUI, (which means that your default GUI should also only use this API).
- Use XBMC's scraper API so that you can reuse XBMC's XML scraper format files without modifications.
- Hash the files so there is no need to scrape meta data for a file again if it has been moved, (and use XBMC's hash method if possible so that the hashes are the same).
-Make use of the
MediaInfo library or similar to extract tags from media files, (especially useful on home movies that can not be scraped online). The
MediaInfo library is cross-platform and can be compiled as a dynamic library for Linux, Mac, and Windows.
Best of luck and happy coding!
PS! Here is a list of existing media managers for XBMC (threads that been tagged with "
media manager"):
http://forum.xbmc.org/tags.php?tag=media+manager
Good for reference and for hunting volunteers