Unified PVR front-end: Skinning the EPG TV-Guide GUI (feedback from skinners wanted)
#16
jmarshall Wrote:To be honest, I'd tend to be a little hesitant to allow users to change the layout too much. The skinners know what they're doing and what looks good within their skin and works well from a usability point of view (for the most part). This is what they do "for a living" after all.

I guess it depends on the resolution to some extent though. Larger numbers of pixels to play with allows more options in some respects.

I suppose we could wait and see if there's an outcry for it, I don't mind retro-fitting it if the need exists.

jmarshall Wrote:Navigation-wise, I'm thinking we can show 24 hours at a time (i.e. from the start of the current timeblock), with free scrolling horizontally within the 24 hours and then a jump to the next block, or, if we can get away with it memory + loading-wise free scrolling right up to the end of the EPG information.

Vertical scrolling would be like the normal list controls today.

Sounds like good values to start with.

jmarshall Wrote:Whether or not we need to be able to navigate away from the grid (i.e. we'd currently be trapped if we use the dpad to navigate) needs to be considered as well.

I guess this depends on where we want to have the "extra" info and controls that we will need for the day to day runnings of a backend. If there was a status bar beneath Jezz_X's grid then that could show contextual information. For example - you hit record on a grid item and the subsequent available recording space is printed to the status bar.

If we go for tight integration with current XBMC way, then options to force an EPG update/reboot the machine/reload drivers could be placed in TV Settings page. The tuner strength, general server status would be found in the system information window.

Alerts could be used to warn the user of problems.
Reply
#17
my $.02,
There are some great guides avail free on the internet that have gone through several iterations and tweaking over the years... two of the biggest are zap2it.com & TitanTV.com (IMO, the most flexible/useful/robust).

I suggest checking them out as it should give you some ideas.
I'm not an expert but I play one at work.
Reply
#18
alcoheca Wrote:I totally agree - I doubt that column will scale at all with these user options. What I'm talking about is a +/- 1 unit of fine tuning for number channel rows vertically and number of time units horizontally. The emphasis firmly being on fine tuning. I think you were suggesting more control to choose more extreme grid dimensions?

I was thinking something similar to what myth currently uses. In my mythweb page I have 6 columns going across and it is split up into 30 min increments so I can see 3 hours worth of information at a time. In the myth settings you could change either of those numbers to fill the screen with as much or as little information as you feel comfortable looking at. As you mentioned earlier some people don't mind smaller text. So, what I am envisioning is the skinner would specify the overall measurements of the grid and then the user could select what ever scheme they feel comfortable with. This is just a suggestion. Obviously since I am not coding it I will be more than happy with what ever you come up with Wink

As for extra info, I can see what you mean about getting "trapped" on the grid. On linux/windows you could use tab or something to jump between the two. I am sure you could find an unused button on the xbox controller to do the same specifically in the EPG. You weren't planning on making the locations of the extra info static where you? I can see a lot of really cool layouts coming out of this if the skinner can place the ep info, now playing window controls etc in a way that fits the specific skin. Hmm lots of cool stuff to think about. Cheers.
Reply
#19
here is a better explaination on how I think the concept interactions should work

Image
Reply
#20
Rand Al Thor Wrote:I was thinking something similar to what myth currently uses. In my mythweb page I have 6 columns going across and it is split up into 30 min increments so I can see 3 hours worth of information at a time. In the myth settings you could change either of those numbers to fill the screen with as much or as little information as you feel comfortable looking at. As you mentioned earlier some people don't mind smaller text. So, what I am envisioning is the skinner would specify the overall measurements of the grid and then the user could select what ever scheme they feel comfortable with. This is just a suggestion. Obviously since I am not coding it I will be more than happy with what ever you come up with Wink

For the sake of simplicity what about an EPG size control, with condensed, regular or expanded. Wouldn't that suffice? I'm not totally convinced people need more control than that. The time is now for people to convince me otherwise Wink

Rand Al Thor Wrote:As for extra info, I can see what you mean about getting "trapped" on the grid. On linux/windows you could use tab or something to jump between the two. I am sure you could find an unused button on the xbox controller to do the same specifically in the EPG. You weren't planning on making the locations of the extra info static where you? I can see a lot of really cool layouts coming out of this if the skinner can place the ep info, now playing window controls etc in a way that fits the specific skin. Hmm lots of cool stuff to think about. Cheers.

It would be nice to hear what any other skinners think they'd like from this window. It's hard for me to gauge opinion at the moment.
Reply
#21
well just a few thoughts... A skin like Aeon could have the now playing video full screen behind the Aeon Glass. The episode info could exist in the diffused area across the bottom. The epg could fit into the existing glass panel with controls across the top matching the Aeon theme. Some other skins might prefer to have the now playing window on the lower left in a small window with episode info right below the epg. I could even see making the epg nice and big to fill most of the screen then if you hover on an item you get the episode info instead of having it showing at all times. Are these the kind of ideas you are looking for from skinners? I'm sure there are other skinners out there willing to throw some creative horsepower at the layout.
Reply
#22
The layout will always be the skinners territory, and so I don't really mean to get into that... I'd rather hear if people want all the extraneous crap I included in my mockup. How sophisticated do people want their skins to look, all bells and whistles; minimalist; somewhere in between?

My third mock up tried to cover all bases, and so its cluttered as a side effect. I was trying to think of all the likely contenders for inclusion in an EPG. I've used some truly awful EPGs in my life, and so the idea is to try and do something worthwhile this time. Striking the balance between having a sophisticated EPG that makes remote management of your PVR app all but unnecessary and getting something solid and simple to use seems pretty crucial.
Reply
#23
The more info you provide, the more options skinners have.

If you provide this information by using properties, they can choose to use it or not.
For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
Reply
#24
hi nuka1195.

That's the plan as of now, I hadn't noticed the whole SetProperty method until you mentioned it.

So each programme will be contained in a CFileItem, with the PVR specific stuff set as properties. Skinners can then choose whether or not to include the description property for the current selected programme in their layout.
Reply
#25
Don't want to make anyone mad, but I think the EPG provided by the xbmcmythtv script is pretty good. If I could use it to select/play livetv, it would pretty much meet my needs.
Reply
#26
lingenfr_xbmc Wrote:Don't want to make anyone mad, but I think the EPG provided by the xbmcmythtv script is pretty good. If I could use it to select/play livetv, it would pretty much meet my needs.

and you're mentioning this in the skin development forum because....?!

Wink
Reply
#27
Well... since Rand was making a comparison to AEON (a fine skin) and the title of thread references the EPG, I thought the developers might want to take a look at the EPG in xbmcmythtv as a starting point or an example. In the future if you have a problem with a post, you might try a PM rather than cluttering up the thread. Cheers.
Reply
#28
hey there,

I really didn't have a problem with your post, truly sorry you felt that. I do welcome all input. I was just curious... or looking for some more clues. To my very sleepy eyes it almost looked like a feature request for a script. Now of course, I can totally see it's not.

downloading xbmcmythtv to have a play with it as it's been a while since I last tried it out. I'm working on the epg grid right now, so all going well I'll have something up and running really soon. (then the abuse begins Wink )
Reply
#29
My thoughts on some configuration areas for the EPG. I've seen alot of bad EPGs in the tv apps I've tested and only a few good ones. So I set the bar pretty high, obviously all of these things don't have to be implemented on the get go, and perhaps some of these options are niche. None the less I figured I should list out all features and information I've seen in guides, and let you choose what you think fits. Main thing to nail down is storing all the information that is required so there doesn't need to be updates to the DB schema to get more information added into UI.


EPG INFO:


guide display configuration:
  • time units, 24 hours or 12 hour time
  • number of channels to display in rows
  • number of time slots to show for columns on the top
  • size of time slots: 15, 30, 60 minutes etc.
  • pixels per time slot
  • icons indicating scheduled to be recorded or scheduled to tune to
  • which language of the guide should it retrieve?
  • sort options, ascending descending: channel name, number
  • perhaps sort popup to choose which way to sort
  • display icons or channel abbreviations?


channel information:
  • channel icon
  • channel abbreviation: KWTV, FOX, FOXMO, HBOW
  • channel name
  • channel number
  • channel description
  • type of station i.e. radio, tv, PPV, dvr
  • categories: sports, local, movie, etc.
  • arrow indicating if the program goes past the edge of the display


Program information:
  • Duration, start time, end time, next showing
  • feature icons or text abbreviations: Close Captioning, Dolby Digital, tv rating, alternate languages, etc.
  • program description
  • program title
  • program genre
  • program rating
  • record, schedule, tune buttons
  • preview button? (keeps tuned channel in memory, pops up small window with new channel starts streaming, if selected, becomes current channel, if not tells tuner to go back to old channel)

features:
  • program slots don't have to match time slots i.e. 1:45 minute movie lasts 1 3/4 1 hour slots
  • number of programs in cache set as a function of channels time time slots (perhaps an advanced configuration option)
  • program information is configurable enough to be able to be displayed as scrolling through channels in a mini display the top of the screen, as well as in a pop up window with full information and tuneing buttons
  • selecting channel while on main epg display has option to tune directly to channel or to pop up question of schedule, tune, or record
  • is recording a sub option of schedule, or its own separate entity i.e. do you first click schedule to record something or do you display the option to record along side scheduling? perhaps call it schedule event i.e. record event, tune event
  • categories of channels: sports, favorites, locals, etc
  • multiple sources on 1 guide, but separated into sources: OTA, DVB


CURRENT CHANNEL INFO:


current channel bar:
  • info and icons from program information in epg
  • icon indicating pending scheduled event within configured duration of current time, configurable check frequency?
  • resolution mode: strech, normal, custom, etc.


scrolling channel bar:
  • scrolling channels and programs on a channel


information pop up:
  • pretty much identical to program epg popup
  • has tune/schedule event buttons if it is not the current channel

I ran out of steam for tonight, more on scheduling soon as I can.
Reply
#30
I've been looking forward to finding out how the MythTV integration with XBMC will go. I found this so here's my $0.02 for the EPG.

I'm a big fan of user stories - I have a personal dislike of feature lists because they don't have enough context and you can't tell if the feature will actually help you do something useful. These coarse user stories are based on how I currently use the EPG in the native MythTV client on the MythTV backend server and through the the old xbmcmythtv Python script which is now more or less dead with the new myth:// protocol support.

As a user within the EPG:

I want to find out what shows are on now on so I can choose which one to watch right now. Close integration with Live TV would be great. Perhaps Live TV goes straight to EPG at the current time?
I want to find a program in the EPG so I can schedule it to record (with all of the options, ie. once only, once every week, every week in this timeslot etc.) Please don't only allow me to scroll across the screen half an hour at a time - sometimes I just want to scroll quickly through to Thursday (from Monday) to schedule the new Lost series - I don't want to scroll past whole nights of informercials. As an aside, MythTV has an awesome interface for finding a program if you know it's name. You should probably have a look at that and see if that is in scope for what is being proposed for this PVR frontend stuff in XBMC. I would have thought so as that's really the only other part of the MythTV interface we use, but who knows...
I want to see which programs are scheduled to record and which ones can't be because there is a conflict (possibly because there are not enough tuners available) so I can make sure a show is going to record (lest the WAF factor decrease) and to potentially override which show doesn't get recorded in the case of conflicts.

Below are some of the irritating things from other EPG implementations:

Trying to show too much at once. I really don't care too much about seeing the synopsis of the show directly on the screen. If I care I'll drill down somehow. Use that real estate to show the first order information that really matters - channels, programs and statuses of programs.
Not formatting dates and or times usefully. This is a pet peeve of mine. Most people know that Lost is on Thursday night at 8:30. Yet the EPG and other areas showing when it is on or will record never show the day of the week, just the date. Please consider using the day of the week in the EPG dates and remove all the other repeated stuff, i.e. show "Sat 16" and "Sun 17" instead of "13/06/2008" and "14/06/2008". I know it's 2008 and I can probably guess it's June because the EPG only ever holds 8 days of data (here in New Zealand at any rate). As a bonus it takes up less space and you don't have to worry about those of us who prefer dd/MM/yyyy rather than MM/dd/yyyy.

Below are some of the great things from other EPG implementations:

Icons for the channel. These are great and quick visual cues that work well when finding the right row in the EPG.
Fast!. The MythTV EPG is really fast to load, whereas the xbmcmythtv one could take up to 10 seconds to load. I stopped using the xbmcmythtv one because of that.

That's pretty much it for me at the moment. I don't really care about things like color coding for categories of TV show (eg. sports, cartoons) because the EPG here in New Zealand is very sparse on information like that.

Cheers,
David
Reply

Logout Mark Read Team Forum Stats Members Help
Unified PVR front-end: Skinning the EPG TV-Guide GUI (feedback from skinners wanted)2