Rob Shortt wrote:
> We will also need some diseqc support.  

What is this?

> I have also written code for retrieving EPG data from DVB.

We also have code pieces for that already.

> I was definately only talking about mencoder for v4l, since it would
> be too much work for us to worry about it right now.

Yes, we will concentrate on dvb and ivtv.

>> o How to support a network for recorder
>> o How to get data without using NFS
>> o Different ideas (Raw UDP/RTP/HTTP)
>> o Where to use the chunk file system
>> o How to sync EPG data
>> o How to autoconfigure the system
>
> I have some ideas on these items too.  We can discuss these in more
> detail when you send the email.

OK, here some details.

Worst case: we have 4 different PCs. One for Freevo, one for the
recordserver, one for the recorder and one with all the harddrives and
NFS. We can't just record into a file, because the GUI will see the
new files too late because of NFS. So we need some sort of streaming,
but also need the file chunks for temp storage.

GUI -> recordserver: I want to watch TV at channel X
recordserver checks which recorder to use
recordserver -> recorder: Record something with live tv output
recorder -> recordserver: here is an url
recordserver -> GUI: here is an url

There are two possible ways of using the network:

1. Add a HTTP server inside the recorder. The recorder will save the
   chunks over NFS, but it will also read the files. Since it is the
   same machine, no NFS delays due to local caching.

   The recorder will return an url to connect to to get the
   data. Mplayer can seek in HTTP streams. But I have no idea if this
   also works when the file is still growing when watching. Also it
   may be a problem when you want to seek after current time.

2. Send data via UDP. We will need to add time shifting into the
   client. The recorder will send the raw data over UPD, maybe
   multicast, maybe also in RTP.

   The client will receive the data, show it and store the data as
   file chunks to make live pause possible.

I prefer 2., but it will require changes to the player. I guess it
will be easier to change xine, so we will focus on xine for now. Maybe
a python program can receive the data nd store it as normal file to
support all kinds of player. This would require a special kaa.record
device to receive UDP data.

Now to the epg. The recorder can get EPG data while it is idle. It
could save the data somewhere and has a webserver
http://recorder:888/epg to make it possible to download the epg as
xmltv.

Now we need to sync our databases between the machines. The master is
always the recorderserver. It will query the recorder for the EPG from
time to time to keep the db up to date. It will have a special version
attribute. E.g. the current version is 3. Now the recordserver also as
an url to receive the database as xmltv listing. The GUI on a
different machine will recive the data and adds it to its own
db. After some time

GUI -> recordserver: get db version
recordserver -> GUI: 3

Nothing happens. Now the recordserver updates its epg. The version
will be set to 4 and all new programs will get a flag '4'

GUI -> recordserver: get db version
recordserver -> GUI: 4

GUI -> recordserver: get db > 3
recordserver -> GUI: http://recordserver:1234/specialurl

and the GUI can receive the update.



Comments please


Dischi

-- 
In California they don't throw their garbage away -- they make it into
television shows.
                -- Woody Allen, "Annie Hall"

Attachment: pgpJ6s0Urp6cI.pgp
Description: PGP signature

Reply via email to