INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Some thoughts on how best to manage multi-point control of all my media?  (Read 2774 times)

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

It seems they all serve the same basic service, the "remote" control/use of our media.  However, I've not been able to get the kind of control/usage that I want with any of these options.  I'll try to describe my "ideal" situation below.

I want a "just works" way to have full control over my library, for multiple profiles (profile being my name for a user interface with the media).  I want to be able to initiate the downloading of podcasts or videos, backup discs, auto import and tag media from various devices, to watch/tune live or recorded TV (or any video) and to initiate TV recordings from any profile, without having to have a tuner installed on the device the profile is currently running on, as long as there is a tuner available *somewhere* that the Library Server (LS) has access to (likely the machine the LS is installed on.)

You would configure the LS to know where all the media is, what filters, codecs and settings to use for optimal playback of which file types, what and where to auto import, any and all settings related to the media and it's *usage* are managed here; this way, there's just one central place to make updates and changes about media playback information.  As new codecs and capabilities come into play, this will make testing and tweaking faster and easier I think.  

Each device will have to relay it's capabilities to the LS when it connects, it seems MC and windows 7 do a good job of recognizing my devices, so this should be easy  :)  My laptop will communicate that it only has a stereo playback device, a microphone, a webcam, and any portable or permanent storage devices connected, and MC asks whether or not I want to share them with other profiles.  On my laptop I will have a copy of MC installed, which is what gives me the ability to have/use my personal profile.  A device that does not have MC installed (like my phone) will need to use the basic interface that we see now, (webremote).  it would be great if I could tell my phone to use my personal profile, but without MC installed, I don't know how this would work.  I assume this is also how DLNA works, with this basic interface.

The profiles control the devices and negotiate the the media playback capabilities, codec and filter information and decide how best to playback the media on the selected zone, using the media from the LS.  Anything the zone is not capable handling is changed/managed by the profile.  For example, my laptop does not have 5.1 surround, only stereo, so the profile will negotiate abilities and availabilities and the LS only sends stereo to this zone, based on this zone's distinct capabilities, again doing the required conversion processing where the media is stored, and saving bandwidth.

Once the LS is configured to know what media is where, what and from where to auto import, where to save any new media and how to best playback all this media, it just sits there waiting for some profile to ask it for something.  So I launch my personal profile from my laptop and it tells the server it's ready for some action and it quickly displays to me the last known media information, music, video, cover art, play stats, thumbnails, etc.  Meanwhile the LS updates the profile with any new media since it was last connected (like new TV shows or pictures uploaded/saved by another profile), in the background, in a low priority thread so the library loading is as fast as possible, sacrificing initial accuracy for startup display speed.

When the profile requests something; a recorded or live TV feed, a video, a music file, podcast, whatever, the connection speed and zone capabilities would be analyzed and an appropriate bitrate would be calculated and the (possibly down converted or from the stack) file would be streamed to the device to ensure smooth playback, quality being reduced as necessary, as we'd all rather see smooth bad video than choppy good video.  The capabilities of the zone and the media file are compared by the profile and the lowest common denominator is used to process the file being requested/served.  If the zone can't handle 1080p (or the LS doesn't have that high of quality available), the profile goes down the list of available quality and settings on each side until there is agreement in availability/choice, then uses that quality/setting for playback on the selected zone (which may or may not be on the device used to select/control the media)  Of course, doing the conversion work on the LS side in order to send the smaller file to be streamed, allowing more bandwidth for everyone.

The profile can be allowed to have full access/control over the media, thru the LS, or it could be restricted.  I don't want a "Party" profile having any delete/rename privileges (but I do want to be able to use that profile from my mobile device and maybe 10 minutes later from the HTPC which is showing visualizations and then again I want to crank up the volume from the mobile device later in the evening.)  I don't want to log in and out on each device each time.  I want the LS to allow the "Party" profile to switch between 2 devices and the most recent to request it can control, and one has priority, if necessary (competing volume requests at the same time maybe.)  However, normally I will want to launch my personal profile from whichever device, see the current/updated media available to me, fully tagged, and be able to use or change it as I wish.  Additionally, my changes need to be available to other profiles in (close to) real time.

Views and ratings and playlists and play stats would be profile specific, but some of these things could be shared.  For example, if I create a great play/smartlist, I want to be able to 'send' it to another profile (thru the server?) and they can accept/install the smartlist, or view, or split view.  Being able to share these with other users here on the forum would be very cool also I think.  I'm sure some people have some great workflow or usage or theater view designs that I would find very useful.

Clearly this sounds like a bit of a tall order, but a lot of what I'm requesting works, or nearly works using one of these methods, but it doesn't do all of this from any method I've discovered.

If the Library Server was reconsidered to be as I describe, nothing more than the gatekeeper/organizer/librarian/configuration manager/playback provider for just the media; and the profiles were just the organizer of the display and control and playback and management of the media, on the devices to the configured and available zones, perhaps it's not as much work to implement this paradigm as has been imagined.  The playback tools and the settings and so forth seems to do most of these tasks already, one way or another.  Just not simply or cohesively.  Maybe just restructuring the way the pieces connect and moving the tools and connections and responsibilities around some might get this to a usable state reasonably quickly, with further refinement to increase usability and speed and integration after the restructure is working.

I know people have been asking for client/server for a LONG time, and I think this would solve all of the requests and reasons I saw given and maybe more, and it really might not be that hard to get working.  I would love to see MC pursue this path for a while, I think it would increase the WAF, and usability tremendously by just having a simple profile to control and manage the media, and putting the how-to's onto the LS and device connections, as negotiated by the profile in the background to make it all just happen so the common user doesn't have to worry about it so much.  But more importantly, having any profile automatically update itself with any changes made by any other profile (as far as new or deleted or moved or renamed files), but simultaneously allowing each profile to keep separate ratings and views and stats and things, so I can rename a file but other profiles will be aware of this change and update the connection info automatically, but it won't affect their view of this file, as far as rating, last played, etc go.

The option dialog box might have to be re-organized to put the LS stuff in one place and the profile stuff (ratings, views, lists, etc) in another and the device stuff in another, but I think it might just be re-organization, I don't think many new options and things would need to be created.

As for Zones; each device can be/have one or more zones.  My HTPC has 2 zones, one is via the optical out to my receiver, offering 5.1 ch output, and the other is stereo to another input on the receiver for it's second zone, which goes to speakers on my patio.,  With another sound card installed, I could have more zones, all configured separately.  Each zone must have a unique name, and each can specify if it's shared with certain profiles.  If shared, I could open my personal profile on my laptop, send a smartlist to play on the wifi device zone connected to the speakers in the garage.  Then i could turn it off from my phone in bed when I suddenly remember it's still playing, using only the basic profile it offers.

DLNA devices would use the basic interface and also be zones themselves, much as they currently function I believe.

So you just install MC, set up the Library Server settings, configure each device and it's zones, then use your profile to request the media you want and MC handles all the connections and translations automatically in the background.

Would this not be a much easier way to manage it all?
Logged
pretend this is something funny

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

really?!?!?  Nobody else thinks this would be helpful/useful/convenient?

Setup your profile, and every device you connect with shows all your media your way.  No more fiddling with obscure settings, or having to set up filters and defaults on each machine separately, and each user sees all the media their way, from any machine or device the use to connect with?

To me this is the holy grail of MC's power combined the ultimate in user friendliess .  This would solve at least 1/2 of the requests I have seen for features or changes in how to improve MC in a client/server setting.

Or is it just that no one thinks JRiver can/will implement this?

I think they are about 70% or more of the way to having this work right now.  They would just need to re-organize how the pieces fit together, but I think it would be totally worth the effort.

Plus, making it easy for my wife to just use it would make my life much more enjoyable in regards to all our media and how we can each enjoy it more.

No one??

Am I missing some big downside to this?
Logged
pretend this is something funny

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72544
  • Where did I put my teeth?

Could you summarize your idea in 2 or 3 sentences?  It's a very long post.

Autoconfigure clients?
Logged

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

2 or 3 sentences, no, but I'll try to abbreviate.  (it's like asking you to tell me all about MC in 2 or 3 words) :)

Break MC into parts.

Profiles are similar to libraries.  I set up my profile the way I want, my view schemes, my ratings, my preferences for playback (gapless, shuffle, etc). 

Devices are similar to DLNA devices.  they are setup once, system wide.  This device (my laptop for example) has a connection speed to the server of wireless G, a screensize of 1024 x 768, a dual core processor, 4gb of memory, and is willing to share media located in C:\Music, has whatever codecs installed, and has a TV tuner card installed.

Server is similar to library server.  It is used to setup all the system specific settings.  Store all new media to what location, auto import form where, convert files using these settings, encode using these settings, etc.

When I open MC on any device, it asks who I am, then shows me my profile.  it connects to the server, and displays all available media, no matter who ripped, or where it's located, all TV shows, the TV program info that is available on the system, etc.  MC (the server) keeps track of what connections and conversions are necessary to display my media to whatever profile on my current device, and handles all the codecs and updating and everything in the background.  Ideally the server would be always on (assuming you want full-time availability of the media) and will allow multiple connections and streaming to any profile signed in on any device.  It would also allow the "client/server" effect everyone keeps asking about. 

Let me have full control (or not if the admin chooses read only access - party or guest profile for example) of tagging, saving, deleting, moving, initiating, whatever of all of my media by using the server to keep track of where everything is, and just show any logged on profile what is currently available.  If I tag a bunch of files, or record new shows, or import new photos, other profiles should automatically be aware of the changes/new files available.

this lets me setup all the back-end "techie" stuff, but let's my wife just open MC, select who she is, and shows her all the media available to her, and MC (the server) manages any conversions or connection or codec issues in the background and just plays the media to her device per her profile and she doesn't need to "set anything up" on her machine.  She can tag and rate and play and download as she wants, and it doesn't change anything in my profile.

I hope that helps.

Like I said, you guys can do most of this already, but one has to know where to find and set hundreds of settings to get it to work on a machine; which she could never do on her own, and I have to do it on every machine, and anything I change on mine, I have to remember to change everywhere; which is really just too hard to manage now.

Logged
pretend this is something funny

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

Jim, was that (hopefully) easier to get the jist of? 

It may sound complicated, but it's really just a re-configure of the mostly already existing parts of MC. 

Let a basic user have very little setup, but their own views and ratings and such, so they get media their way.  Very easy for them.

Put the grunt work of tracking and organizing and making it all work together onto the server/back end.

Connect, select, play, enjoy.

do you see the beauty of it? :)



Logged
pretend this is something funny

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72544
  • Where did I put my teeth?

You've said a lot, and I still haven't completely understood, but ....

Settings should be portable.  I agree.  MC15 can import settings from MC14 now.  We might be able to extend that.

Devices are a rat's nest.  Even the DLNA standard isn't really a reliable standard.  We're thinking, for example, about buying a $1000 Sony TV just to make sure it can do what a Samsung TV does now (and that wasn't easy).

I appreciate the thought you've put into this and don't mean to sound dismissive.

Are the garden pictures on Pix01 yours?  Looks like fun.
Logged

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

Settings should be portable.  I agree.  MC15 can import settings from MC14 now.  We might be able to extend that.

After re-reading that; I would say settings should not just be portable; they should be separate.  the become a separate component of MC (a profile), that just connects to the media (server).  That's kind of the point of all this; maybe that makes more sense :)
Logged
pretend this is something funny

JustinChase

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3276
  • Getting older every day

Yeah, I can ramble a bit  :P, but as you can see it is somewhat complicated, and hard for me to explain well, which is why I tried to give so much detail.

I kind of "flushed it out" while I was writing, so it's not as concise at first, but I really do think it would be beneficial in terms of allowing the basic/non-dedicated listener/user to just use the power to play what they want easily.

I can only imagine the weird things you must have to struggle with to get all the network stuff to function at all, let alone to work as well as it has gotten in the recent past.  It's gotten pretty good recently. :)

If you take the DLNA devices out of the equation for a minute, and just look at machines with MC installed.

The basic premise is to put the load of management onto one machine; the server.  let it manage all the media specific tasks, import, convert, move, rename, rip, burn, encode, decode, copy, network settings, remote control stuff, TV guides and recordings, all the stuff that directly affects the media itself.  

One machine/copy of MC handles all of this, but it doesn't have anything to do with tagging or rating or viewing or displaying, or selecting.  It just sits there in the background, waiting to supply media to profile reqeusts.

All the stuff that I might do differently than you might do, ratings, views, split screens, playlists, naming preferences, subscribed podcasts, radio stations,  etc.  This is all managed by a profile.  

Since both machines would have MC installed (or both components on the same machine), they are both designed to facilitate the necessary communication to use the server's configured abilities and resources to simply serve the media to the profile.

As it is now, my copy of MC on my laptop has to be completely configured for where to store files, how to convert, how to name, etc.  it needs to be done also on each machine and they all have to match, and if I rename something from one machine, I have to update the others somehow, and try to keep it all in sync myself.  not so much fun.

My proposal splits this to put all the heavy lifting in one place, for everyone, to be configured independently from the profile things, which would still be managed per user.  if the local machine needs some codecs or files or whatever to actually render the media locally, let MC manage getting the necessary files in the correct places, but without user intervention.  the server has to know what is available on each device, to know how to move the media properly, and that will not be easy, but if it's managed in one place, it might help.

the profiles just adjust how a user sees the media, and each person can be different.  but they don't have to know anything about "how" it works to enjoy.

I really hope that makes more sense.

One of the biggest knocks against MC is that it's so powerful, it's too hard to use it all well.  Sure, geeks and enthusiasts love all the tinkering, or we wouldn't be on this board.  But the mainstream user just wants to turn it on and enjoy their media.

I'll try to spend some time this weekend separating the things I think are profile things and which are server things.

And yes, those are my garden photos :)  I've got many more to upload still, we've been busy back there :)  Thanks again.

Logged
pretend this is something funny

HTPC4ME

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 2760
  • LIFE IS A RADIO... CRANK IT UP TO 11!

<watching this Topic With High Interest!
Logged
Pages: [1]   Go Up