Dnia 2009-06-30, wto o godzinie 16:48 +0200, David McLeod pisze: > > 2. UX (User Experience) Overview > > > > The most important factor for users is just watching TV. This should > > be a priority - to make sure users can hit a button and get the TV > > experience they are used to. When they begin watching a TV channel, > > they should be greeted by a familiar, simple and unobtrusive HUD > > describing the channel they are on, the current program airing > > (which would be fetched from either the DVB card or from internet > > listings), they should also be given a visual clue of the ability to > > move up and down the HUD, which would give them information on other > > channels. When the user hits "okay" on a differing channel to the > > one currently on view, the channel changes and presents them with > > the channel they "okayed". The HUD should also offer a visual clue > > to move forward (and possible backward) in time, to show past and > > future shows on air. If the user wants a more comprehensive guide, a > > full EPG should be available, filling the screen with (for example) > > a list of 10 channels, with the upcoming 5 hours of programming, for > > quick browsing, also available should be a picture in picture, so > > the user can watch the tv with one eye, while browsing the epg with > > the other. > > > > In addition to being able to view live TV, and browse listings, the > > user should be able to pause livetv. When paused, it should start > > "recording" the program, so the user can watch everything past the > > moment of pause (as opposed to the moment they paused it, and the > > moment they unpause). The user should also be able to rewind through > > the currently watched content on the channel - so as an example, I > > am am watching the news for half an hour, I should be able to rewind > > to 15 minutes, pause, go for a coffee, come back and play from the > > 15 minute mark onwards. > > > > Also a "scheduling" interface should be available, for the user to > > browse through their EPG, and to be able to select a program to > > record. This should be possible to do with the full screen EPG while > > watching TV, as well as in a separate user interface (which is > > easier to get to, for those specific times where you wish to just > > record a program and not watch TV). > > > > Also, a search function should be available, to search through the > > EPG for a desired program. The program should be displayed with the > > ability to record (if it is on later) or watch now (if it is > > currently airing) > > > > Lastly, an area to navigate through recorded programs should be > > available, and the ability to watch and delete recordings should be > > possible, as well as remove+rerecord. (Im not sure about this, > > perhaps when a user records the program it should apear in TV Shows > > or Movies sections?)
Actually if LiveTV is more important than recorded shows is debatable. According to #mythtv-users most of the users set in their MythTV setup rarely use LiveTV. They have so much recordings set up they don't have the time to watch live. Of course the ability to watch a show currently being recorded is needed, too. The usual PVR does never show a completely 'Live' TV. It's always a recording, just a recording of what is currently broadcasted. This, in turn, allows for all the use cases you've described. What we really need, IMO, is a new way to do EPG. The stale old table of channels vs. time is soooo 90s. We need to leverage the abilities Moovida provides us with in terms of UX and design. I'm not saying I know what to do, I don't even have a set idea of what could we do, I just want us to brainstorm here. Another thing is channel hierarchy. I don't think a flat list digs it now that we have hundreds if not thousands of channels available. I think the ability to arbitrarily set up a tree of channels (where the same channel can show up in different branches) would allow for easy and user-defined grouping by service provider, channel type (movies / sports / news), favorites etc. > > 3. UI Hierarchy > > > > > > TV > > Watch > > TV Guide > > Search > > Keyboard + Results > > Media Results I know that 'Watch TV' is the usual way to start watching - just jump to the last watched channel. I find myself doing that even if I want to watch something else, I then have to wait for the channel to lock and start playing before I can switch to a different channel I actually want to watch. I think a better way to start watching would be to either to select a programme you want to watch from a "currently showing" list or a list of channels like described above with the added shortcut "watch the last watched channel". I think the 'proper' way to watch TV is to watch a programme, not a channel :) But that may just be me, I know the approach differs. > > 4. Development Overview > > The TV can be done in two ways (based on the discussion above). > > Using MythTV backend as a service, getting the EPG data from that, > > getting live tv stream from the backend, telling the backend to > > change channels, and using the backend to record channels. That would, probably, be easier as the backend side of things is complete. On the other hand Myth is recently getting a rehaul and we can't be sure what will the future bring. The thing to notice here is that there's completely no alternative UIs for MythTV anywhere. I think there's a reason. And again - have you ever tried talking to Myth devs? I can't imagine having them talk to us about any feature we'd like to extend MythTV with for our use. I don't think a patch would get in, even... I'm also not sure about Gstreamer's ability to play / rewind files saved by MythTV, my quick tests show that playing the file directly or through a mythv:// URI does give me playback, but rewinding is only possible for files that have stopped recording. > > The other method is to use Gnome DVBD, this means providing our own > > code for TV streaming, interfacing with GDVBD's EPG or using an > > outside source (preferable). Also this means writing our own code > > for things like recording, schedules, expiration, ad skipping, and > > possibly alot more. The 'external source' EPG is planned for GDVBD, anyone planning to write a TV plugin based on GDVBD would definitely need to work inside it with Sebastian Pölsterl (sebp) but I think it'd be much easier to get in this code than MythTV's. Ad skipping is a feature I myself don't rely on completely. It rarely works properly. Sure it's nice but completely unreliable. >From discussions we already had on IRC the easiest way to integrate with GDVBD would be to use UPnP. We would need to extend the protocol but that, according to Frank Scholz (d...@#elisa,#coherence), the core developer behind Coherence, should not be too difficult. One BIG drawback of GDVBD is that AFAIK it's currently DVB-only, one big pro is that it's completely gstreamer-based. Extending it beyond DVB for anything gstreamer provides shouldn't be too difficult. We should ask some container / format guru what's the best filetype to keep files that should be accessible as soon as there is some data in them and allow easy skipping. I'm glad we finally got a brainstorm about that going :) -- Michał Sawicz <[email protected]>
