[ExtractStream] Re: Welcome to ExtractStream

Dale Reed daler at n...
Tue, 4 Sep 2001 12:02:04 -0700


nickhull@y... wrote:
>
> I've been spending more time looking at the TiVo in the past week.
> The Summer months have been too busy for me to provide any input. I
> am impressed with the recent developments and pleased to see that
> someone has written a PC based decoder (ConvertStream).

There is actually several of us working on enhancing it. We have
Converstream working well (and fast at 900KB/Sec+ transfers with
netscat) on the Win32 platform. Netmplex has also been converted
by Gary to win32 and the next step is some additional mods to use only
one netcat (built in) and add ConvertStream support to netmplex.

> If anyone is interested - that was how ExtractStream was partly
> developed. I am not a Linux programmer, purely writing for Windows
> PC's. All the initial work was done in Windows using raw dumps from a
> donor's TiVo for data. Someone else in the team took my code and made
> a TiVo version for testing, then enhanced it with convoluted
> buffering.

I see the point of it, but on my conversions, I simply yanked all
the buffering stuff. I didn't see any performance gains on the
WIN32 platform with it, and it definately taked a lot of Dr. Pepper
and late nights to understand it. :)

I used raw dumps and comparisions with ExtractStream -2 to get
ConvertStream working on Win32. Lots of fun. :)

> I wrote the initial mplex supplied in the first version. This was
> basically a hack of the Linux mplex, but converted to do one pass
> conversions. Previously it required two passes through the mpeg in
> order to multiplex. I stripped away all but the most essential code,
> and then used some calculated constants to fill the gaps. If
> anything, the mplex program was what I took the most pride in. This
> code allowed an mpeg to be played straight from the TiVo onto a PC.

I'd like to talk to you about this (offline). Mplex is were we are
having the most problems, since most of us don't understand the
underlying mpeg streams. Our goal is to take a raw Tystream from the
tivo using a single netcat and have (via a built in netcat) ConverStream
and mplex put it directly into an mpeg file. We have everything but
the mplex part done. :)

> One thing that I am surprised about - nobody has made significant
> changes to the data search algorythms. We knew that they were buggy
> at the time of release, but little has been done with them. Maybe an
> ex-member of #tivo would care to enlighten us.

There have been some, but again, most of us don't come from mpeg or
video backgrounds. I've been finding lots of refereneces and such on the
net about them, and it helps, though.

> Also, it was rumored that #tivo had found a way to perform a simple
> multiplex without significantly splitting the streams. Any input
> there?

Thats kind of the goal of what I'm doing. With ConvertStream and mplex
put into the same program (with a netcat front end) you could take a raw
tystream intput and output a mpeg2 video w/out intermediate files. netmplex
also does the same thing, but it splits the streams on the tivo side and
uses
two netcat instances on each side to transer the individual streams
(although it
still doesn't use any intermediate files. There are mainly timing issued
between
the two streams that most people (no matter what method they use to convert
the streams) complain about (video and audio not synced).

Dale