"Play" vs. "Pause" vs. "Play/Pause" functionality
#1
Hello,

I have recently set up an XBMC system with a Wesena IR remote receiver, and an RC6 remote with separate Play and Pause buttons.

The receiver is configured to send proper MCE keycodes (CTRL-P for pause, CTRL-SHIFT-P for play).

Keymap.xml correctly has the "Play" function" assigned to CTRL-SHIFT-P, and "Pause" to CTRL-P. The trouble is that they both do the same thing!

The issue I'm encountering is that XBMC treats its "Play", "Pause" and "Play/Pause" functions the same when it comes to playback: Each one of those functions seems to toggle between play and pause.

Most other equipment seems to treat Play and Pause differently. Pause toggles between playing and paused state,, but Play always puts the equipment in playing mode, it never pauses playback.

I have a semblance of understanding of how "Pause" and "Play/Pause" is different within XBMC -- "Pause" toggles playback and pause for media, while "Play/Pause" does the same plus it acts as a selector/OK button when in a file or media list.. But then, how is "Play" different from "Play/Pause"?

I would like to know if it's possible to configure XBMC to make the "Play" function mimic other equipment with discrete play and pause buttons, i.e. make "Play" perform a single function -- put XBMC in state of playback, rather than two functions that depend on the current state.

Hitting "Play" on the remote and holding it just a bit too hard, or "bouncing" the button is annoying -- XBMC treats it as multiple keypresses and plays and pauses, plays and pauses... I'd just like to make it only play.


Thanks in advance!
Reply
#2
The Play action does this according to the wiki ' Play the selected item (or folder of items), or unpause a paused item.'

So I am not sure if you can change that. However it also seems to pause. Not sure its really a problem though
If I have helped you or increased your knowledge, click the 'thumbs up' button to give thanks :) (People with less than 20 posts won't see the "thumbs up" button.)
Reply
#3
(2014-08-31, 11:25)nickr Wrote: So I am not sure if you can change that. However it also seems to pause. Not sure its really a problem though

It is a problem, because the play button does not pause playback on any VCR, DVD, BD, or media player that I remember using that also has a discrete Pause button.

So if "Play" function pauses, why have a separate "Play" function that does the exact same thing as "Play/Pause"?...
Reply
#4
What do you want the Play button to do when something is already playing?

This also assists people with limited buttons on their remote.
If I have helped you or increased your knowledge, click the 'thumbs up' button to give thanks :) (People with less than 20 posts won't see the "thumbs up" button.)
Reply
#5
(2014-08-31, 22:15)nickr Wrote: What do you want the Play button to do when something is already playing?

This also assists people with limited buttons on their remote.

Same thing my DirecTV DVR, and every DVD and BD player I've ever used do -- keep media playing and maybe show the position I'm at in the video. While playing, Play button can do anything EXCEPT for the interrupting playback.

People with limited buttons on the remote, or remotes with combined play/pause button should use the PausePlay toggle in XBMC.

All I'm asking is for how to make Play a discrete function, instead of the same toggle as PausePlay -- the way that it is on other devices with discrete play and pause buttons.

(If you think about it, the other transport buttons are generally discrete -- "Stop" never "unstops" the media, skip forward/back never unskip (you use the opposite button to undo the effect) and fast forward and rewind never unfastforward or unrewind. So why should the "Play" button become "Unplay" if another button already has "Unplay" functionality?)

Lastly, I'm looking at this:
http://wiki.xbmc.org/?title=Keyboard_controls

Space bar is mapped to "Pause/Play", the toggle. "P" is mapped to "play". Logically speaking, the two functions should be different, and "Play" should not be identical to "Pause/Play"...
Reply
#6
I know that is what the wiki says but in reality there does not seem to be any difference between play and play/pause. I just tried a keyboard on an openelec system and <space> and <p> seem to have identical function - both toggle play and pause.

In dvdplayer.cpp these lines appear (I am not familiar enough with the code to know if this is what we are looking for, but here goes: ) From https://github.com/xbmc/xbmc/blob/879b95...Player.cpp

Code:
// return to normal speed if it was paused before, pause otherwise
if (m_playSpeed == DVD_PLAYSPEED_PAUSE)
{
SetPlaySpeed(DVD_PLAYSPEED_NORMAL);
m_callback.OnPlayBackResumed();
}
else
{
SetPlaySpeed(DVD_PLAYSPEED_PAUSE);
m_callback.OnPlayBackPaused();
}

These seems to imply a toggle.

Unlike you, I don't consider it necessarily a fault, and it is very quick to get used to it.
If I have helped you or increased your knowledge, click the 'thumbs up' button to give thanks :) (People with less than 20 posts won't see the "thumbs up" button.)
Reply
#7
I'm not entirely sure but I think this will be fixed for Helix, see https://github.com/xbmc/xbmc/pull/5245
Reply
#8
Not quite sure what this means:


Quote:(new) press play while something is playing -> play selected item

When I am watching a movie (and assuming I am not venturing off into a list of media while my movie plays in the background) what is the "selected item"?
If I have helped you or increased your knowledge, click the 'thumbs up' button to give thanks :) (People with less than 20 posts won't see the "thumbs up" button.)
Reply
#9
I assume the currently playing item, so the movie just continues.

What happens when you press P while a music track is playing? as this change is meant to align the logic between playback of Music and Video items, with Video adopting the Music logic if I've understood right.
Reply
#10
the (new) feature is only while in a library/list view - no change during fullscreen playback. But Odeen has a valid point - if somebody wants play/pause behavior he should use PlayPause action in the keymap. Note that I merged PR5244 just a couple minutes ago which will make use of the PlayPause action in keymaps for play_pause keys. So we now could actually change the default behavior of Play to really ever only trigger play/select and nothing else. Will have a look and add required changes to PR5245
Reply
#11
Oops it seems I did misunderstand.

Thanks for confirming da-anda Smile
Reply
#12
PR5307 should fix mentioned issue
Reply

Logout Mark Read Team Forum Stats Members Help
"Play" vs. "Pause" vs. "Play/Pause" functionality0