Michael,
    did you get any takers for your $1000 offer?
 
Personally, I'd have just used some/all of the existing "jump points" that are in myth (a keystroke that takes you to a specific/known location/view) in conjunction with lircd as a socket listner daemon for stuffing extra/following key-strokes.       Stuffing key strokes works, so long as you know with certainty what your starting point was (hence the jump point/s). 
 
Anyway, are you still looking for somone to do it?   If so, let me know, and let me know a timeframe.   I'd expect I could do it within a month, probably less.   (  My C++ is a bit rusty). ... but my C is less rusty....  to be honest, my perl is light-years ahead of them both.  (yes, I've written daemon/s reliably in perl before) ... if you are interested in some of my prior work have a look at http://netreg.sf.net  v2 was almost entirely my work - written for, and implemented by Griffith University, Brisbane, Queensland, Australia.  (and still in use 2+ years later).
 
Buzz.
 



From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Anderson
Sent: Saturday, 10 December 2005 5:57 AM
To: [email protected]
Subject: [mythtv] $1,000 offer for a Myth front-end socket control

I am supposed to present a client with PVR options for their set-top box, both open source like Myth and VDR, and closed, proprietary ones we license.  We would like to present a Myth-solution, but cannot because we never found a way to send the Myth front-end commands directly, such as over a socket.  It seems LIRC and other programs that want to control Myth just simulate keystrokes (ie send an ‘up’ key when it’s time to change the channel).  We’ve done this too, but the end-result is pretty unusable; we can’t definitely make the EPG appear when the user hits the ‘EPG’ button on his remote, we can only send a keypress which, depending on what’s onscreen, may or may not have the desired effect.

 

I’ve done similar things with other open source projects, and it’s usually a trivial task, like a day or two.  There’s probably just 1 place where an interceptor or hook needs to go that opens a socket and listens for commands, and relays those commands back into the Myth frontend.  And we already have socket classes to encapsulate all that work.  But I know nothing about Myth front-end’s architecture and have some other deadlines, so I got approval to offer $1,000 to anybody who would do it.  Hopefully with Myth it’s also just a day or two for someone who knows where to put those hooks.  Details are:

 

---------DELIVERABLE-----------

We would provide the ‘client app’: a C++ console app (ie no X), compilable with gcc on Linux 2.6 kernel that contains a class with function stubs for each of the commands to be implemented below.  The developer can type the commands in the console to make the app call the function stubs.  We assume responsibility for giving you this client app.  The deliverable is: a) adding the code to Myth front end so that it allows this external client app to communicate commands and get status info directly, likely by listening on a socket, and b) adding the code to the client app to connect to whatever Myth front end is running on the current box and implementing the function stubs.  The end result is you can run Myth front end (it’s sitting at the menu), and you can run this new client app, which will say something like ‘connected to Myth front end’, and then you can type into the client app ‘goto EPG’ and the EPG appears, and ‘goto normal tv’ and ‘tune to channel 50’, ‘set playback speed=pause’, and Myth will be on channel 50 with paused video.  Again, we will give you the client app that accepts the commands from the console, parses them, and calls the appropriate functions.  We already have a c++ class that handles socket communications if you wish to use it.

 

---------PAYMENT TERMS-------------

Payment terms: $500 via your choice of paypal, IKobo, or U.S. check as soon as you can show that you know how to do it, by providing a client app and Myth front end where the client app can connect to Myth and do 1 thing, jump directly to the EPG or live tv no matter what Myth’s current state, without using keyboard stuffing.  There’s no need to provide source code at this point—just show that you know how to do it.  The other $500 paid immediately when it’s done and we are able to send the commands listed below and have Myth execute them regardless of the front end’s current state.  Any code for Myth must be submitted back under the GPL license, of course, so this same mechanism can be used for tighter integration with LIRC.

 

--------------Commands to be implemented----------------

 

Tune to Specific Channel

Channel Up/Down

Goto time code

Set Playback Speed (ie 4x, -1x rewind, 0x pause, 1/4x, etc.)

Goto Mode or Menu (parameter is the menu: ie goto EPG menu, goto ‘normal viewing tv’, goto ‘recorded tv options’, goto ‘setup screen’)

Play a given file/recording

Get Current Timecode (including indicating if it’s time lapse tv or live tv)

Get Current Status (ie live tv, time lapse tv, etc., and what mode is active: epg, tv viewing, etc.

Move OSD (move highlight up/down/left/right, page u/d/l/r, hit enter – same thing like simulating keypresses)

Goto input on TV Tuner card

Jump to beginning of ring buffer

Jump to live TV

 

Eventually the other Myth commands should be supported, and that can be discussed later, but this is enough for me to make my demo.

 

You can email replies back to this list or directly to michael.anderson [at] plutohome [dot] com

_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

Reply via email to