# Tivo and Neuros Development - $2500 Bounty



## rbautch (Feb 6, 2004)

I'm starting this thread is an open invitation to collaboratively pursue the $2500 Bounty #2 for developing a TWP module for exporting Tivo recording information to Neuros. Neuros is a slick little open source video archiver that does some pretty cool things, like transfer video content directly from your Tivo to portable players (I could do this without Neuros but the multi-step hassle of getting it there means I rarely do it). Imagine if Tivo developed their software this way!

Poking around the Neuros Community leads me to believe that the Neuros end of the project will be relatively trivial, and the bulk of the development will be in exporting recording information from Tivo. Rather than peel off with a few partners and try to develop this privately, I'd like to use this as an open development forum to exchange ideas, contribute code, and participate in any way you want. You DON'T have to be a developer to contribute ideas. I'm concerned more with the challenge rather than the money, and would leave the distribution of $ to the "judges" from Neuros and DVRupgrade. I'll ask the new TCF owners and moderators to confirm this discussion is okay before we go down this road. I also invite staff from Neuros DVRupgrade to participate in this thread, contribute ideas, and keep us on the right path.


----------



## rbautch (Feb 6, 2004)

Initial thoughts:

Development could be based on the existing ui_todo.itcl ui_season_pass.itcl modules of Tivowebplus. In the final "neuros.itcl" module, I envision that users will be able to select a series or a particular recording with a simple check box next to each item in the todo list or seasonpass list. Information about selected recordings would then be periodically written to a text file and transferred to the Neuros box with wget. Wget would run the Neuros box with a cron job. The TWP module would also have a feature to initiate the text file transfer, overwriting current settings.


----------



## BTUx9 (Nov 13, 2003)

Here are my initial thoughts:

1) I don't think the goal of the 2nd bounty is very useful. Effectively, it's rendering the tivo unusable whenever one of the shows you're interested is on/being recorded by the OSD. Since we're talking about a TWP module, why not just stack up the recordings and let them be xferred during a certain time period (overnight, or while you're at work)

2) As written, I doubt the bounty is likely to be completed, because it necessitates controlling tivo playback. So far, the only method to do so on tivos is using key events. 
For S1s, that isn't an issue, but for S2 Dtivos (the most common tivo, IIRC) that's a definite issue. 
While there is now a working sendkey utility for S2s (sendkeyplus), I don't believe it's GPL, and it relies on routerplus, which DEFINITELY is not.

as a side note, I don't believe bounty #1 will work, either... again, because of the inability to control tivo playback without key events.


----------



## JoeBorn (Dec 12, 2004)

BTUx9, sorry for my ignorance, but could you expand on why it would render the TiVo useless while the OSD is recording? I'm not clear on that.

Actually, I'm not clear why either would necessitate initiating playback either. I guess I'm confused.


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> BTUx9, sorry for my ignorance, but could you expand on why it would render the TiVo useless while the OSD is recording? I'm not clear on that.
> 
> Actually, I'm not clear why either would necessitate initiating playback either. I guess I'm confused.


As I understand it, the idea is that the OSD is supposed to be recording from the tivo output... that means that the tivo couldn't be used while this was occurring (i.e. you couldn't watch a recorded show).

As for the playback control, if my family is any indication of general tivo usage, the tivo is very often left paused on a show... without playback control to unpause, the OSD would be recording hours worth of a still image. There's also the issue of dual tuners on dtivos... no guarantee that the tuner being displayed is actually the one with the desired show (other than double-recording them, which would be an extreme waste).


----------



## JoeBorn (Dec 12, 2004)

BTUx9 said:


> As I understand it, the idea is that the OSD is supposed to be recording from the tivo output... that means that the tivo couldn't be used while this was occurring (i.e. you couldn't watch a recorded show).


Oh... well I don't think it has to be that way, the OSD has its own IR blaster, so it could control any tuner box you want. I guess there's a problem if, for whatever reason, the TiVo is the only tuner you have around, but I was kind of under the impression that most installations had a separate tuner box of some kind, either a set-top box, or VCR or something, do you think that's not the case?


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> Oh... well I don't think it has to be that way, the OSD has its own IR blaster, so it could control any tuner box you want. I guess there's a problem if, for whatever reason, the TiVo is the only tuner you have around, but I was kind of under the impression that most installations had a separate tuner box of some kind, either a set-top box, or VCR or something, do you think that's not the case?


Certainly in the case of S1 and S2 dtivos, they aren't using an external tuner.
I also think that many of the S1 Standalones are being used to tune cable (rather than an external cable box).

I'm just afraid that if you reduce your target to people using hacked S1 standalones with a cable box, it'll be a rather small audience.


----------



## tivoupgrade (Sep 27, 2000)

BTUx9 said:


> Certainly in the case of S1 and S2 dtivos, they aren't using an external tuner.
> I also think that many of the S1 Standalones are being used to tune cable (rather than an external cable box).
> 
> I'm just afraid that if you reduce your target to people using hacked S1 standalones with a cable box, it'll be a rather small audience.


In that sense, the important thing is to shape the scope of the bounty, and the tools that emerge, to be useful to a broader audience, not a smaller one.

You've raised some good questions and good points.

You mentioned the notion of 'stacking up' programs earlier and that may be a good solution for spooling of programs when a DVR is in an unattended mode.

I'll go back and look at the bounty wording - I think I might have been TOO specific when stating the goal by actually suggesting an explicit way of solving the problem, when in fact, the more general goal of TiVo/Neuros interoperability is really what needs to be addressed.

Thx for pointing these things out.

Lou


----------



## JoeBorn (Dec 12, 2004)

tivoupgrade said:


> In that sense, the important thing is to shape the scope of the bounty, and the tools that emerge, to be useful to a broader audience, not a smaller one.


It might be interesting to do a survey just to get a feel for how folks want to do this. I suppose it will be all over the map, but you never know a single option might emerge as a clear leader. My guess is that it's better to serve a smaller group of people really well, than a broader group in a more incomplete way. We do have some options:

*"stack up" and xfer at night (or whenever)
*use a VCR as a tuner for standard cable folks
*use a sat tuner box for direct tv

Each has some plusses and minuses, some require extra gear, but on the plus side they can be used in other rooms, etc. I expect that could be an interesting discussion in and of itself.


----------



## BTUx9 (Nov 13, 2003)

Just to clarify, for #2 and #3, the tivo is hardly involved at all... it'd only be supplying the guide data/UI.


----------



## JoeBorn (Dec 12, 2004)

BTUx9 said:


> Just to clarify, for #2 and #3, the tivo is hardly involved at all... it'd only be supplying the guide data/UI.


well, my thinking was that it's just essentially streamlining the process of TiVo2go, but if TiVo would see it differently, then it's a non starter. Others would be a better judge of that than I.


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> well, my thinking was that it's just essentially streamlining the process of TiVo2go, but if TiVo would see it differently, then it's a non starter. Others would be a better judge of that than I.


That wasn't my point at all.
TTG takes content off the tivo to use elsewhere.
#2 and #3 have nothing to do with the content on the tivo.
(where content is a recording)

My point was that #2 and #3 could be done equally as well (or better) on any PC that had access to guide data... the tivo is somewhat superfluous (except for supplying the needed guide data).


----------



## JoeBorn (Dec 12, 2004)

BTUx9 said:


> My point was that #2 and #3 could be done equally as well (or better) on any PC that had access to guide data... the tivo is somewhat superfluous (except for supplying the needed guide data).


fair enough. Although isn't all this really more about how you configure the OSD once the bounties are completed? I mean once the OSD gets the recording information, it can decide, based on how its installed if it needs to use the IR blaster or not. Correct me if I'm wrong, but essentially if the bounty was completed (by whatever means) and somehow the OSD was getting the time and channel recording information, then a user could hook it to the TiVo outputs , and if it started to be a nuisance (for all the reasons you suggested) then they could simply move the OSD to sit on the output of a different device and just program the IR blaster accordingly.

I don't mean to be difficult, I'm actually just getting my arms around the situation myself. Do I have it right?


----------



## rbautch (Feb 6, 2004)

Many moons ago, before I knew what Tivo hacking was, I used a very crude but effective means of Tivo extraction. I would periodically unplug the Tivo in my bedroom, drag it down to my PC, and connect it to a capture card to extract video for burning to DVD. I borrowed the small TV from my kids room so I could navigate the Tivo user interface and play the shows one by one. As cumbersome as this sounds, I think a fair number of people pull shows off their unhacked Tivos this way, or might be tempted to do it if the process was a little easier. I would bet that most users on TCF do not have a hacked tivo, and don't have a way to pull shows off Tivo. I commute 2 hours a day on a train, and it would be nice to swap out a memory card in Neuros each day, to take my shows with me on my laptop. Fellow DTivo users without access to TTG really have no practical way to regularly extract, transcode, and transfer Tivo recordings to our portable devices.

I like BTUx9's idea of stacking shows up and recording them in off hours. There's already a batch play module in TWP that accomplishes the task of playing multiple shows sequentially. The remaining functionality would entail adding the ability to periodically schedule the creation of batch recordings, triggering the Tivo to play it during off hours, and teaching the Neuros to separate it into individual recordings.


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> fair enough. Although isn't all this really more about how you configure the OSD once the bounties are completed? I mean once the OSD gets the recording information, it can decide, based on how its installed if it needs to use the IR blaster or not. Correct me if I'm wrong, but essentially if the bounty was completed (by whatever means) and somehow the OSD was getting the time and channel recording information, then a user could hook it to the TiVo outputs , and if it started to be a nuisance (for all the reasons you suggested) then they could simply move the OSD to sit on the output of a different device and just program the IR blaster accordingly.
> 
> I don't mean to be difficult, I'm actually just getting my arms around the situation myself. Do I have it right?


you are getting the idea, but I'm afraid that only the S1 standalone unit could be used as "just another source" as far as using an IR blaster. This is because the other units are dual-tuner, and there'd be no way for the OSD wouldn't know which tuner was being displayed, so they'd have to be handled differently.

I'm sorry my posts have been about all the things that WON'T work, but before people put effort into this, I want to make sure that these issues have been considered, and solutions have been found.

rbautch: stacking still relies on access to the event system in some form, and unless ADH was willing to let routerplus be distributed with this (highly unlikely), it may leave S2 dtivos out in the cold. The blaster of the OSD may, possibly work, but I doubt it may not be reliable enough. It would be tough navigating the NPL blind -- without access to info as to where you were. That being said, there could be a trick or 2 to help with that.


----------



## JoeBorn (Dec 12, 2004)

BTUx9 said:


> rbautch: stacking still relies on access to the event system in some form, and unless ADH was willing to let routerplus be distributed with this (highly unlikely), it may leave S2 dtivos out in the cold. The blaster of the OSD may, possibly work, but I doubt it may not be reliable enough. It would be tough navigating the NPL blind -- without access to info as to where you were. That being said, there could be a trick or 2 to help with that.


I think it's great you are pointing out things that won't work, that's really keeping us from going down blind alleys. I don't know the context of ADH and routerplus, but there's no reason everything has to be open source or freeware. If there are binaries with APIs, then maybe we can make a deal to distribute them. I'm still of the mind that its better to find a really good solution for some subset of the tivo population (and if that includes unhacked tivos so much the better) than to find a mediocre solution for everybody. My personal opinion anyway. Of course, it goes without saying that I'm sure hoping that I'm included in that subset


----------



## rbautch (Feb 6, 2004)

BTUx9 said:


> The blaster of the OSD may, possibly work, but I doubt it may not be reliable enough. It would be tough navigating the NPL blind -- without access to info as to where you were. That being said, there could be a trick or 2 to help with that.


True, however it would be more reliable to select a single batched recording, say once per day, than to try to select and play individual recordings. The reliability could be increased even further if the batch recording could be positioned at the very top of the Now Playing List. This would boil it down to 3 key presses, each of which could be repeated multiple times: list, ch-up, and play.


----------



## BTUx9 (Nov 13, 2003)

rbautch said:


> True, however it would be more reliable to select a single batched recording, say once per day, than to try to select and play individual recordings.


yes, it would be more reliable, but there could be some real problems breaking it up on the OSD... I really don't think a single composite recording on the OSD would be nearly as useful, and the timing issues for starting and stopping recording... well... it MIGHT work, but there's a good chance a fair percent of the recordings would be off... maybe by only a few seconds up to a minute, but some much worse.


> The reliability could be increased even further if the batch recording could be positioned at the very top of the Now Playing List.


Just what I was thinking, and that SHOULD be possible. Trying it without doing so would involve messing with the sort order, making it much less reliable.


----------



## vmarks (Dec 11, 2004)

This feels a lot like some kind of automation for the Save to VCR option I remember from series 1 TiVO units. 

The uniqueness as I read it is that it's done at the same time, rather than consecutively as save to VCR would be.

This seems very useful.

The issue is, you'd want the OSD remote disabled so that it doesn't change channel with its IR blaster, and let TiVO do the driving, let TiVO handle the schedule and so on... but that's my way of thinking about it- smarter people will have better answers..


----------



## JoeBorn (Dec 12, 2004)

queuing up a bunch and recording in batch would be useful as well IMHO. Is there anyway to do this without a hacked Tivo? Anything in tips and tricks to get more than one video to play automatically?


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> queuing up a bunch and recording in batch would be useful as well IMHO. Is there anyway to do this without a hacked Tivo? Anything in tips and tricks to get more than one video to play automatically?


none that I know of.


----------



## davezatz (Apr 18, 2002)

Anyone know if bounty #1 is being discussed online anywhere?


----------



## flatcurve (Sep 27, 2007)

Here's something that occurred to me over the weekend: HME. I know it can't control anything on the TiVo side in terms of schedule and video, but it could theoretically control the OSD, no?


----------



## BTUx9 (Nov 13, 2003)

flatcurve said:


> Here's something that occurred to me over the weekend: HME. I know it can't control anything on the TiVo side in terms of schedule and video, but it could theoretically control the OSD, no?


In a rudimentary way... if you're thinking in terms of video using the HME protocol, I find that EXTREMELY unlikely.


----------



## flatcurve (Sep 27, 2007)

No, I mean just as a front end to control the OSD.


----------



## BTUx9 (Nov 13, 2003)

flatcurve said:


> No, I mean just as a front end to control the OSD.


Apologies... brain fart... I read your suggestion as OSD=On Screen Display, not the Neuros

Yes, an HME app SHOULD be able to control the neuros from the tivo UI (having never done any HME programming, I can't say for certain, tho)


----------



## JoeBorn (Dec 12, 2004)

BTUx9 said:


> Apologies... brain fart... I read your suggestion as OSD=On Screen Display, not the Neuros
> 
> Yes, an HME app SHOULD be able to control the neuros from the tivo UI (having never done any HME programming, I can't say for certain, tho)


so isn't that a possible, unhacked tivo solution?


----------



## BTUx9 (Nov 13, 2003)

JoeBorn said:


> so isn't that a possible, unhacked tivo solution?


Solution to what? This bounty isn't at all about manually controlling the Neuros via the tivo's UI (which is what HME may allow you to do), and AFAIK HME doesn't let you access ANY scheduling info.


----------



## tivoupgrade (Sep 27, 2000)

BTUx9 said:


> Solution to what? This bounty isn't at all about manually controlling the Neuros via the tivo's UI (which is what HME may allow you to do)


Not necessarily. Here is the synopsis of the bounty:

_We want to see your OSD recording, hand-in-hand with your TiVo so you can enjoy your content on-the-go!_

[edit] My point being that we don't want the bounty to seem restrictive in too many ways; we just want to see some good integration between TiVo and the OSD and had some initial thoughts on the approach to take. If it morphs into something else, so be it!



> and AFAIK HME doesn't let you access ANY scheduling info.


That puts some obvious limitations on things, but it sounds like there are still some opportunities related to using HME...


----------



## BrianEWilliams (Apr 15, 2002)

The New York Times
January 6, 2008
Novelties
What This Gadget Can Do Is Up to You
By ANNE EISENBERG

HACKERS, welcome! Here are detailed circuit diagrams of our products  modify them as you wish.

Thats not an announcement youll find on the Web sites of most consumer electronics manufacturers, who tend to keep information on the innards of their machines as private as possible.

But Neuros Technology International, creator of a new video recorder, has decided to go in a different direction. The company, based in Chicago, is providing full documentation of the hardware platform for its recorder, the Neuros OSD (for open source device), so that skilled users can customize or hack the device  and then pass along the improvements to others.

The OSD is a versatile recorder. Using a memory card or a U.S.B. storage device, it saves copies of DVDs, VHS tapes and television programs from satellite receivers, cable boxes, TVs and any other device with standard video output.

Because the OSD saves the recordings in the popular compressed video format MPEG-4 (pronounced EM-peg), the programs can be watched on a host of devices, including iPods and smartphones. The OSD is for sale at Frys, Micro Center, J&R Electronics and other locations for about $230.

The OSDs capabilities will grow to suit changing times, said Joe Born, founder and chief executive of the company. Digital video is a fast-moving space, he said, and many consumers dont want to buy a new piece of hardware every time a media company comes out with a new way to watch its shows. The best way to address this problem was to make the product open source, allowing our smartest developers and users to modify it.

The OSD has not only open hardware, but also open software: it is based on the Linux operating system. Neuros Technology encourages hacking of the device; it has contests with cash rewards for new applications for the OSD. One winner, for instance, designed a program that lets people use it to watch YouTube on their televisions.

Using the OSD for daily video recording demands no special technical background, and no PC is required. Setup is easy: Plug a U.S.B. hard drive or other memory device into one side of this lightweight unit, and plug the TV and, for example, the DVD player into the other side.

I recorded a show from a DVD this way and, to my delight, I was soon watching it on my iPod. Thank you, hackers!

The OSD does not have a display screen. Its menu is viewed on the television screen and navigated by using the remote control that comes with it. The device can also be connected to a computer or to a home network of computers.

People who are tired of stacks of DVDs and VHS tapes in the living room may find the Neuros an inexpensive way to tidy up: an entire library can be archived on a U.S.B. hard drive. Then you can stroll through your own personal video shop from the living room couch or, when traveling, plug the drive into a laptop to watch programs recorded from satellite or cable service at home.

But these are just the daily functions, designed for duffers like me. Gamers at their consoles can record their online contests, edit the videos and share them with friends. Brett Manners, a mechanical engineer and wind-surfing instructor in Perth, Australia, had another innovative use for the device. He rigged up a combination of the OSD and a video camera and used it to record his wind-surfing adventures directly to MPEG-4 format. (To watch some excerpts, see Windsurfing With the Neuros OSD on YouTube.)

Products like the OSD are a good example of a small but growing trend toward openness, said Jimmy Guterman, editor of Release 2.0, a technology and business newsletter published by OReilly Media of Sebastopol, Calif.

The open source hardware movement parallels the earlier open source software movement that started off as a renegade thing 15 years ago, he said. Now its the center of I.T. at many major Web sites like Google.

He hopes for the same openness in hardware, although he said that the issue was more complicated. Companies may keep some aspects of their hardware closed, while opening others, he said.

Paul Saffo, a Silicon Valley forecaster, said openness was likely to apply to new products like the OSD, rather than to existing proprietary products. Its a lot easier to design future products with openness built into them, he said, than to open a closed product.


----------

