Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Feb 2007 14:50:11 +0100
From:      Danny Pansters <danny@ricin.com>
To:        freebsd-multimedia@freebsd.org
Subject:   Re: brooktree 880: cx23880-19 TV chip
Message-ID:  <200702251450.11382.danny@ricin.com>
In-Reply-To: <80f4f2b20702241801i37b9e845m65e5e359980b4976@mail.gmail.com>
References:  <80f4f2b20702241801i37b9e845m65e5e359980b4976@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 25 February 2007 03:01, Jim Stapleton wrote:
> I ready that hauppauge was the best bet for a TV Tuner that would work
> in BSD. So I got a WinTV-Radio. Sadly you can't see the chip they use
> in the tuner before you buy. The website showed most of the chips were

This the capture chip. The tuner is a different thing. And both need to be 
supported. For example many Leadtek TV cards have a bt878 capture chip but 
they have an unsupported (on freeBSD) Samsung tuner. 

For bktr analog TV I'd recommend a nice little cheap Miro card, Hauppauge is 
often rather shoddy hardware IMHO (messy soldering, cards that need to be 
bend a bit to fit in the slot and PC case causing mechanical strain, those 
kind of things). At least the older WinTV cards were.

> 848 and 878, so I figured that I would be safe, and I would take the
> risk of getting a 881, and I've seen hints that one could get working.
>
> I got the 880 which isn't even listed.

AFAIK this is another type of capture chip, it may be supported by the pvrxxx 
port that people have been discussing lately, since it's called CXabcd (CX= 
conexant the newer name for brooktree, it seems to refer to a newer line of 
capture chips). Ask usleepless. I don't have this hardware and if I 
understand correctly  it uses a binary blob which to me is a turn-off.

Or it may be possible to use it with bktr by mutilating the driver a little 
bit further. No one will notice the extra cuts and bruises :)

> I installed the bktrbsd and  kbtv ports for a test. KBTV gives me a

There are better ways to test, but if you run the kbtv's bt848 support module 
in a somewhat more spartan way -- that is: load it on the python interactive 
prompt -- the error code returned will give you a good hint at which stage  
it goes wrong. http://freebsd.ricin.com/kbtv/pydoc/bt848.html#-viewer_init

People may find the output from dmesg, kldload, pciconf -lv useful.

> viewer init error. I have gotten this to work on another card (but
> there were bugs with the output, very choppy with blocks of video that
> didn't get updated).

That's not much of a bug report, but then again, if you get choppy output I 
suspect a driver problem and/or poor hardware. And possibly a X config that 
doesn't make SDL very happy (e.g. no XV). 

<background info that may be of interest>
The bt848 module merely does one memcpy every time the driver signals that it 
has a new frame. This hardly consumes any CPU if the actual drawing is 
outsourced to the GPU. However if for some reason there's no hardware 
accellaration at all possible with the GPU  then CPU shoots up alright, 
10-20%. I see this on my amd64 test box which has a nvidia SLI card that will 
only work reliably with xorg's xv driver if HW accel is completely turned 
off. While the video is still smooth, moving the window around and resizing 
is very slooooow.
</background info that may be of interest>

> Original setup:
> sjss@elrond 20:55:09 (1) ~  > sysctl hw.bt848.card; sysctl hw.bt848.tuner;
> hw.bt848.card: -1
> hw.bt848.tuner: -1

Well, you can set these to whatever you want, if the hardware is not supported 
it's not going to help. E.g. if your dmesg or console output when loading the 
kld is utterly useless, don't expect any miracles from the sysctls.

>
> I tried to fix it with:
> sjss@elrond 20:57:03 (0) ~  > sudo sysctl hw.bt848.card=2; sudo sysctl
> hw.bt848.tuner=9;
> hw.bt848.card: 2 -> 2
> hw.bt848.tuner: -1 -> 9
>
>
> but got the same error.
>
>
> I figure the tuner is probably not going to work. I was wondering if
> anyone had any leads on where I might find a solution to this, either:
> (A) someone got it to work already, and I just didn't know what port to
> instal (B) someone got it to work already, but the task won't be as
> pleasant as dealing with ports

Another thing you could try is boot linux and see what v4l thinks about the 
card. It has very verbose probing output.

> (c) someone is fairly sure they could write the driver if someone else

* ducks and takes cover *

> donated the hardware... (Note: this would involve me buying one or two
> more tuners, until I got two 881s or 880s, or an 848/878, and sending
> the other individual whichever 880/881s I had spare).

HTH,

Dan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200702251450.11382.danny>