[mythtv-users] Programming remote button bindings (WAS: What major features are planned for 0.27?)

Simon Hobson linux at thehobsons.co.uk
Sat Dec 1 16:49:51 UTC 2012


Mark Greenwood wrote:

>At the risk of going over the same old ground again, the kernel 
>mappings of "the play button" to "KEY_PLAY" etc, make the remote 
>layout irrelevant.

Err, no - see below

>My point of view is that there are simply too many keybindings. The 
>best interfaces can be operated with the minimum number of buttons. 
>We've both denigrated Apple remotes, but hey, they work and they 
>only have 5 buttons. Can the myth interface be operated with 5 
>buttons? Probably not. Is that a limitation of the remote, or of the 
>interface?

I disagree there. Some of the most confusing and/or 'difficult' 
interfaces I've had to use have been those that go the minimalist 
route.
Larger numbers of buttons generally make an interface 'better' 
provided those buttons actually do something useful *AND* are 
sensibly labelled. Having too few buttons leads to modal interfaces 
(how very 1970s).
Simple example : You have a button on the remote labelled "Guide", 
you press it, the program guide comes up. Simples (meep), intuitive, 
easy to learn and use. Alternative, you have to press some sort of 
menu/mode/function key which perhaps brings up a menu (which by 
necessity will vary depending what the system is doing at the time) 
and navigate to a Guide option. Worse still, you have to remember 
that by pressing some arbitrary (and unlabelled - in terms of what 
changes) button, something else on the remote will now call up the 
guide.
I've tried the Apple remote, there's one on the desk next to my 
machine - it's still in it's plastic and I would cite it as a prime 
example of how to make minimalist form win over actually working.

And no, I really do not think it would be practical to make Myth work 
with such a very basic remote - it would just be either too 
confusing, or require too much "Menu -> something -> something else" 
work to be convenient. It's not that Myth has too many features - 
pretty well all those features matter to at least a subset of the 
users and developers.
Simple example, some people here have argued that jump forward/back 
is useless, and we should be using fast forward/back. Personally, I 
never ever use FF/FR, I only ever use jump - it's just so much more 
natural to me. As long as there are different users wanting both 
options, then there's what some would call redundant features.
I also value Commercial skip forwards/back even though it is more 
than a bit flaky on UK TV. So there's another two buttons (and the 
corresponding mapping) that some would argue are redundant, others 
consider essential.
What is a problem (to me at least) is figuring out in the mapping 
what the different controls groups are, and also knowing what key 
names" are used. Eg, in MythWeb there's a page where mapping can be 
types in quite quickly, but when it comes to multimedia keys it's not 
obvious to me what I need to put in - eg, should I enter KEY_PLAY 
(what's in the Linux header file) or "Media Play " (what's appeared 
in MythWeb after mapping a button via the remote & frontend) ?


>That aside, as for your Play/Pause question, I'd expect PLAY to, er, 
>Play, and PAUSE to, well, pause. It may be a waste of buttons (I 
>like that phrase) but as a *default* the interface should do exactly 
>what it says on the button.

Sounds great, now consider someone with a remote that doesn't have 
separate buttons. There's one labelled with Play and Pause symbols, 
and I'd hazard a guess it will generate "KEY_PLAY" when pressed. They 
can quite reasonably complain that the default key mapping (Play does 
Play, Pause does Pause) is stupid, and the play key should be mapped 
to Play/Pause.
So what makes sense for one remote, may not make sense for another.

Correction: I've just looked, and there is a key defined for 
PLAYPAUSE, though I've no idea whether there is a sensible mapping 
for any particular model of remote. It'll depend on what IR code the 
manufacturer decided to send, and how a developer decided to 
translate it. If the manufacturer does differentiate between "Play" 
and "Play/Pause", then Play?Pause may well be mapped to Play because 
there's no way to tell if the remote is sending Play because the user 
pressed Play on a remote with separate Pause, or because the user 
pressed Play/Pause on a remote with separtae buttons.

-- 
Simon Hobson

Visit http://www.magpiesnestpublishing.co.uk/ for books by acclaimed
author Gladys Hobson. Novels - poetry - short stories - ideal as
Christmas stocking fillers. Some available as e-books.


More information about the mythtv-users mailing list