(The following is largely while movie watching with mplayer...)
I've mapped four buttons to PAUSE, PLAY, REW, and FFWD. REW works as expected - it skips back 10 seconds. All the rest have quirks...
PAUSE works mostly as expected - If playing, tapping PAUSE pauses playback, as expected. If paused, tapping PAUSE plays briefly, then pauses again. This isn't too bad, but would be neater if it either unpaused, or did nothing. If paused, and PAUSE is held for a while then released, then play resumes.
PLAY works nothing like expected, and is probably the least useful. I'm tempted to unbind it and use the button for something else. If playing, tapping PLAY briefly pauses, then plays. If paused, tapping briefly plays, then pauses. If playing, and PLAY is held, it pauses while PLAY is held, then plays when released. If paused, and PLAY is held, it's the reverse; plays while held then pauses when released.
Logically I'd expect PLAY to start playing after being paused.
FFWD. Hmmm. This is the weird one. Sure, it skips forward 10 seconds, but it ALSO toggles the mplayer OSD!! What the...
Hmm, it just occurred to me that perhaps Freevo is reading the joystick and sending mplayer commands, AND mplayer itself may be reading the joystick - and doing bad things. I'll have to investigate that a bit more. (Isn't it amazing how problems can be worked through by writing a rant to other people? ^_^)
But any other ideas, suggestions would be welcome.
Another issue is the Analog Stick usage. It's basically unusable. It acts like a digital stick, sort of. Past a certain threshold, it's ON. The problem is that it's very hard to do single steps - so it jumps down several menu levels.
I'm considering rewriting chunks of the Joy plugin myself, but I'm new to Python, and short on time. Here's how I'd do it (from my understanding of the workings of it), if someone else wants to give the implementation a bash:
- Treat the analog position as a time delay. The further the stick is pushed, the shorter the delay. So pushing it a little bit would effectively move through the menu slowly, and pushing it far would move quickly.
- I wouldn't use sleep delays - I'd use vars to track for each axis the micro-time of the last triggered event, and base the next event on the delta of then and now, compared to the position of the stick. When an event is triggered, update the event time, do the event. That should give versatile response, without adding pauses to the event loop.
-- . Trevor Phillips - http://jurai.murdoch.edu.au/ . : Web Technical Administrator - [EMAIL PROTECTED] : | IT Services - Murdoch University | >--------------------------------------------------------------------< | On nights such as this, evil deeds are done. And good deeds, of / | course. But mostly evil, on the whole. / \ -- (Terry Pratchett, Wyrd Sisters) /
------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Freevo-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-users
