View Full Version : RFC: One ty server for all

04-10-2003, 02:10 PM
I would like to use this thread as a method for the various developers to communicate on the feasibility and implementation of a single server for sending out ty files off the tivo. Since tytool, tystudio, and mplayer all have a different server which does the same thing, it would seem logical that they could all use the same one with minimal changes. Additional functionality could either be added to the server, or provided by a secondary server setup. Please feel free to discuss this topic.

No political BS (this includes debates regarding open source, gpl, etc). The fact that all the programs would be sharing it assumes that this would be an open standard, and probably an open source server.
No posts flames, praises, etc. Lets keep this thread technically oriented, or at least directed towards the goal of defining what should or shouldnt be included.

As the rules of the thread are clear, I will be removing posts which do not fit.

04-10-2003, 03:05 PM
I would love to see a unified standard. Id also love to see authentication as part of the standard.

For Example:
Request id from a certain IP Address
Request is for a particular server name.. (ie tivo.mydomain.com) but not if if the request comes in for the IP Address.


04-10-2003, 03:14 PM
Why not just use vserver? I don't think theres anything that you can't do with it.

If you want authentication, just use an SSL proxy on another computer since a tivo is too slow to do the crypto processing.

04-10-2003, 03:18 PM
Barring technical reasons, I'd like to see it build off the ftp-like stuff. Having a single module that would work as a normal ftp daemon on port 21 and an mfs server on port wxyz would allow us to run one less process on the Tivo. (I know the ftp daemon is pretty light weight, but they all add up.) For this to work, the existing mfs-ftp would need to impliment a lot better compatibility with ftp commands.

It also needs to be "niced", so it's as non-disruptive as possible to normal Tivo activity. What would really be cool is if it had enough intelligence to snoop process activity, and dynamically throttle itself to x percentage of total CPU, to avoid interferring with a current recording session.

04-10-2003, 03:19 PM
Sounds good (in theory) but competition is good. It appears that some of the programs work better with some configurations than others.

A long term poster is unable to get mfs_ftp to work (some type of problem with his network) but he can use other programs.

There are so many varieties of Tivo (SA, DTivo, UK), tivo software, types of PC and PC configurations (OS, CPU, RAM) that I suspect one approach may not optimum for all users.

I'd like it if the ty output could be compatable enough that once you have extracted a ty file you could use it with whatever tool you want. I get (slightly) better extractions with tytools than with tystudio but the ty files don't seem to be 100% compatable.

04-10-2003, 03:53 PM
Definitely shouldn't be written in TCL, so the current mfs-ftp isn't realy a good idea unless its ported to a better language.

04-10-2003, 05:28 PM
Originally posted by AlphaWolf
Why not just use vserver? I don't think theres anything that you can't do with it.

If you want authentication, just use an SSL proxy on another computer since a tivo is too slow to do the crypto processing.

why not indeed? i believe mplayer is using it currently. so, if we use vserver as a baseline, does it need any extra functionality to get it up and going with tystudio for example? obviously tystuidio needs to be modified in some way.

If vserver were used, would it make sence to implement the ftp style interface of mfs_ftp? thoughts?

04-10-2003, 06:15 PM

I'm not to much against using plain vserver - there is however some not so nice side effects. Things like ftp can't be implemented directly and indexing and so forth is not an option.

However if we could use vserver as a base and extend it then it would be a nice option. Since Jdiner released his (well mostly tridge) sources of tserver we could easily back port those changes to vserver.

Hmm, need to think for a while how to do it although :). Tyserver/Tyindex is not that good in it's present stage - basically a quick one day hack. Well the goal of tyserver/tyindex is not that bad but the implementation is - need a better way to do it.

Cheers Olof

04-10-2003, 07:56 PM
olaf_sc: I am thinking that improvements should be made to vserver to make it able to perform all of the same functions of mfs-ftp, tyserver, and jdiners tserver. On top of that, allow it to also function as the regular unix ftp server (non MFS). However, in the interest of speed and keeping the code small, should eliminate redundant functions (e.g. the things that both tyserver and tserver do) and adjust the client code to be able to work for the unified server. With the correct adjustments to tyindex, it could not only run on the tivo itself, but optionaly on a remote system as well, or even a hard drive that has been removed from a tivo and mounted to a PC.

Lots of ideas here on paper, but who is going to write the code? :)

04-11-2003, 04:47 PM
Well it doesn't really matter what "code base" that will be the one that is going to be modified. As long as the code code that is created supports the functionality that we are aiming for.

What I can see is most probably a new server package which basically inherits the functionaly of the most popular servers that we have out there (with the exception of web natually). There should also be some switches enabling the user to start the server in different modes etc..

Been doing consept coding the last couple of days in regards to tyindex and will start writing a new "xserver" the week that comes. If everything goes according to plan the server will be flexible enough to handle different roles.

Been nice to take some days off from the whole Tivo project - was quite tired of it in general and needed to get some fresh air inorder to come up with fresh ideas.

Cheers Olaf

04-11-2003, 07:09 PM
Olaf, great to see you back and fresh as a daisy! remember, you have to make us look good on The Screen Savers, so make sure you get your beauty sleep!

Can't wait to see how the developments on the tyeditor come along. As always, it's a priviledge to be part of the Alpha/Beta test team.

04-17-2003, 09:58 AM
I like this idea of standard Tivo-side server. Perhaps with some kind of extension hooks for plugins like Olaf's indexer or mplayer or FTP or XNS streaming. It should support Olaf's and Josh's extractions and provide a listing of show specs on the NowShowing in a standard XML format or some other straightforward listing. And it should be able to read the FSID chunks for any client. And it should handle the networking for all the OSes being supported.

The plugin capability would allow starting and stopping FTP service or streaming for this new mplayer or a similar player for devices like XBoxes.

At any rate, it would be excellent to unify this server part. It would prevent so much duplication of effort by our developers and let them concentrate on developing the features everyone wants most instead of fiddling with these networking/extraction issues all the time. And it would help newbies who currently have to contend with installing a bunch of different packages which all do much the same thing.