Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] It works!



G'day all,
It's 2am and I felt the need to tell the world this damn twinhan card is
working.

The problem is that the raw stream from the card is a 204 byte packet,
standard 188 bytes of dvb and 16 bytes of crc.
On top of that, the 0x47 sync byte is complimented every 8 packets!

I have hacked dvb_demux.c pretty badly to work around this and I now get
completely error free FTA satellite. (well, as error free as it get's
with the lousy reception in Dubai anyway)

Where would be the best place to discard the extra bytes and invert the
sync byte every 8 frames?

At the moment I have a temporary static buffer in dvb_dmx_swfilter that
I copy the first 188 bytes of the packet to and invert the sync byte if
it's inverted. It's a nasty horrible hack, but it proves the data coming
from the card anyway.

I actually installed an original redhat 2.4.7-10 kernel and modules,
found a soundcard that would work with the kernel and got twinhan's
driver and application (cidst) to work and watch some telly. (it's buggy
and segfaults a lot when scanning the satellites but you can make it
work if you only scan a single transponder. It was enough to watch a bit
of BBC world and get the ioctl dumps I thought I needed)

I then used the demo code to dump a raw data stream to the disk, and
thats when I found 204 bytes between sync bytes.

The datasheet for the stv0299B tuner documents this and the byte
inversion so I should have spotted it sooner.. <doh>

Obviously the FTA card uses some other method of getting the data out as
Jamie's works with the existing bt8xx dma setup.


Many many thanks to Jamie Honan for his dst driver and many E-mails to
try and figure out what I was doing wrong..

Regards,
Brad




--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index