A mad user's whishlist

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
ztripez Offline
Junior Member
Posts: 48
Joined: May 2008
Reputation: 0
Post: #1
XBMC is a living proof of the great achievements the open source community can do.
I've been using XBMC since back in the old day where you had to find a precompiled binary "somewhere else" for your XBOX classic.
With the release of Eden a lot of nice features have been added and my living room experience even better then before.
XBMC is truly a marvelous piece of engineering and all you developers, addon creators, skin designers, translators and supporters should be really proud of yourself.
Since I've been following this for a very long time (and even contributed now and then).
I have done a lot of thinking on how to make XBMC the ultimate media companion.

This is my list, it's long, it's somewhat far fetch and I'm totally aware that most of it would never been implemented. But you can dream eh ;D

Database
Todays database schema is old and outdated. A lot of things have changed over the years.
  • Drop RDMS and build a NoSQL database. The pros of making nsql database for XBMC are endless. Faster response times, seamless upscaling. No need to for static schemas. Addons can share infomation over the lan etc etc etc. I can go on for long time Wink.
  • Metadata should be stored in a flat state and predefined filters (and user custom made) creates an illusion of hierarchy in the frontend.
  • Metadata should have recursive linking, A tv-show is a remake of a tv-show who is a spinoff from a tv-show who is based on a move that have a soundtrack and the movie is based of a audiobook and that book is based of a move etc etc.

Backend/Server
  • Headless server mode. All media and it's meta data should be managed from here.
  • Distributed network of servers. Different backends can handle different stuff. Me my self want to seperate my media since various media groups (Tv series, Anime, Adult content etc) have different traditions on how to organize it's metadata. Prefable would be to have one of the servers to act as a controller node and add subnodes (other XBMC server) if they are avaible in Zeroconf-esc way. Is the subnode is powered of, all it’s content are seamless removed (aka adult content mode Tongue).
    The server should also be able to transmit some events over a WAN.
    Ex: one of my clients is a production company and have servers and clients on different locations.
    The controller nodes should have some way to communicate over WAN to tell each other that media has been changed/added.
  • DLNA support. To stream from and to various devices and applications. As today the XBMC can select a source to stream from, the frontend should be able to selected a source to stream to. Airplay, DLNA etc.
  • Realtime Transcoding. This is a feature i have missed for many years. With this the possibles are endless. Stream to android, make a pure webbased fronted in html etc etc.
  • Homeautomation. The server should be able to handle the lights, coffemaker, lawnmover, heck, anything that speak one or more of the open HA protocols.

Addons
Addons gets more and more popular but I think they have the wrong focus today.
As an expample: I subscribe to alot(!) of youtube channels. I want the addons to be able to tell me when a new video is avaible just as XBMC is able to tell me today when a new episode/move has been added. And be implemented in a nice way to my library.
  • Able to fork events and functions to the systems. the World of Warcraft Addons is a good example of how this could work.
  • Script/programming-language independent.
  • Store information in the backend database.
As i can see it Addons have 4 kinds of "head"-groups.
  • Media content. Merged in to the Library and be able to send notifcations of new media added etc. It should use the similar flat state as the database and fork into it seamless. the XBMC fronted have no reason to know if it's a addon or localy stored data who is displayed/played.
  • Services
    Be able to fork and add functions to XBMC . The JSON-RPC should have some announce function to tell clients what kind of services are available.
    With this in a far future there is alot of possibles; add console emulators right into to the library? just go a head.
  • Media information
    The scraper functions as of today works fine, however it would be nice to chain them and add functions or even link to other services. Ex: Scrape with IMDB, download images from The TVD and download subs from Opensubs etc, perhaps a service have forked the scraped complete event and announce the new data to you with a SMS.
  • Apps
    As same is todays "Programs" but with the extended capabilities as stated before

Front-end
  • Talks to the backend either localy or over lan.
  • XBMC theme http support. This is perhaps the most far out there idea but it would be truly awesome if the inbuilt web server could translate the current skin to an AJAX webpage solution.
  • Continue play at.. be able to select send what you are currently looking at to another frontend. I have a couple of XBMC’s and it’s often that I’m watching something in the liviingroom and it’s getting late. To be able to send what I’m looking at and the time state to my bedroom would be nice.
  • Flat library, Instead of today where you have a hardcoded hirarchy of media, Movies, TV-Shows, Addons, Pictures with subcategories (Actors, Years) etc it would be better to have predefined filters and be able to create your own. (Se the backend part)
  • Content filtrering I’m a dude. I watch adult movies now and then. I’m also abit OCD about meta data. But having my adult content listen in my library when I’m having people over for a video night isn’t that appealing. Like modern browser who have a Incognito Mode (aka Porn mode) xbmc should have something similar a system for filtering by age-rating.

I hope you find some of my ideas interesting.
find quote
RandomNinjaAtk Offline
Member
Posts: 77
Joined: Jun 2011
Reputation: 1
Location: USA -> Maryland
Post: #2
+1

Some great ideas you have Smile

"Live to Win!"
www.stevenohare.com - Personal Blog
www.oharesites.com - Domain Names, Web Hosting, Email Hosting and more
find quote
ghostelement Offline
Fan
Posts: 440
Joined: Sep 2010
Reputation: 3
Location: Portland, Oregon
Post: #3
Another +1. Lots of great ideas.

[Image: tgdb-buttonlogosmall.png]
thegamesdb.net - An open video games database.
scottbrant.net - Blog
find quote
skyking376 Offline
Junior Member
Posts: 46
Joined: Nov 2011
Reputation: 0
Post: #4
+1 from me.
find quote
Ned Scott Offline
Team-XBMC Wiki Guy
Posts: 18,365
Joined: Jan 2011
Reputation: 222
Location: Arizona, USA
Post: #5
About the server/client/transcoding/model, for the vast majority of devices this is just pointless. Almost every android phone, iOS phone, tablet, whatever, has hardware decoding. There is nothing stopping the device itself from taking the full task of being XBMC without the assistance of a transcoding server. ARM is the future in so many ways. Try to use a transcoding server on multiple devices at once, or use it over a poor network connection, and compare it to what we can do today by running XBMC directly on ARM platforms. I just don't see why we would take that kind of step back.

Now, a centralized server for keeping track of the library, acting as file server, and transcoding for the sake of connection speed, that in itself is not a bad idea. Sounds like the same idea, but there's actually a lot of different ways to approach it from a technical standpoint.

You can make easy links to the XBMC wiki using double brackets around words: [[debug log]] = debug log, [[Add-on:YouTube]] = Add-on:YouTube, [[Adding videos to the library]] = Adding videos to the library, [[userdata]] = userdata, etc
find quote
Powderking Offline
Member
Posts: 80
Joined: Aug 2011
Reputation: 0
Post: #6
I love your ideas, ztripez!

At the moment XBMC is designed to be one standalone player. The MySQL and imagefolder solution doesn't feel like a proper solution.
I used MythTV for some time and like the way they did the backend/frontend parts. The only think I didn't like about XBMC was the look of the frontend.

Still I would like to add one point: Multiuser support. If one family member watches a show maybe another one still wants to see it too. Or maybe not everyone is interested in Top Gear, etc.
(This post was last modified: 2012-03-29 15:54 by Powderking.)
find quote
Robotica Offline
Banned
Posts: 1,202
Joined: Aug 2010
Post: #7
Great idea's, most of them are known.

But the most important thing is full ARM support (besides all cpu's also all GPU's like Mali, Ardeno, PowreVR). Many devices already are on the market but the can only run xbmc for the advanced users, if possible.

In order to support ARM devices lot's have to be change and improved: Gstreamer, openmax and the way DVDplayer etc. works. This needs great efforts (some already started) and takes time to find it's way into mainline trunk.

It's more important than any other feature since this will greatly lower htpc prices..
find quote
robweber Online
Posting Freak
Posts: 823
Joined: Sep 2009
Reputation: 26
Post: #8
(2012-03-29 15:54)Powderking Wrote:  Still I would like to add one point: Multiuser support. If one family member watches a show maybe another one still wants to see it too. Or maybe not everyone is interested in Top Gear, etc.

XBMC does have multiuser support - only it uses the term Profile. It allows different users to have different media libraries for each user and even customized views or different skins.

http://wiki.xbmc.org/index.php?title=Profiles
find quote
Powderking Offline
Member
Posts: 80
Joined: Aug 2011
Reputation: 0
Post: #9
(2012-03-29 16:14)robweber Wrote:  
(2012-03-29 15:54)Powderking Wrote:  Still I would like to add one point: Multiuser support. If one family member watches a show maybe another one still wants to see it too. Or maybe not everyone is interested in Top Gear, etc.

XBMC does have multiuser support - only it uses the term Profile. It allows different users to have different media libraries for each user and even customized views or different skins.

http://wiki.xbmc.org/index.php?title=Profiles

That's great! Thanks for the info Smile

But I thought of multiuser support directly in the db. So that if one user adds a movie it is already present when the next user comes. Only the watched status is separate.
(This post was last modified: 2012-03-29 19:00 by Powderking.)
find quote
robweber Online
Posting Freak
Posts: 823
Joined: Sep 2009
Reputation: 26
Post: #10
If you setup the same sources for each profile, that is exactly how it would work. Each video DB would be separate (like the watched status), but there is no reason they can't share sources.
find quote
Powderking Offline
Member
Posts: 80
Joined: Aug 2011
Reputation: 0
Post: #11
Yes, I understand. Still the two separate DBs have to be filled separately by the scraper. But if they were in the same DB like in MythTV only one scraping would be needed.

How about the fanart and covers? Are the filenames for the same DB entry identic and can the different users share the same Thumbnails directory?
find quote
michaelrtm Offline
Junior Member
Posts: 3
Joined: Apr 2012
Reputation: 0
Post: #12
Quote:Continue play at.. be able to select send what you are currently looking at to another frontend. I have a couple of XBMC’s and it’s often that I’m watching something in the liviingroom and it’s getting late. To be able to send what I’m looking at and the time state to my bedroom would be nice.

http://wiki.xbmc.org/index.php?title=HOW..._libraries
find quote