Date: Sun, 15 Feb 1998 16:23:41 +0100 From: Eivind Eklund <eivind@yes.no> To: Ian Freislich <iang@iafrica.com> Cc: multimedia@FreeBSD.ORG Subject: Re: Audio using haupauge wintv card Message-ID: <19980215162341.13873@follo.net> In-Reply-To: <28814.887541272@iafrica.com>; from Ian Freislich on Sun, Feb 15, 1998 at 01:14:32PM %2B0200 References: <19980214024906.28444@follo.net> <28814.887541272@iafrica.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Feb 15, 1998 at 01:14:32PM +0200, Ian Freislich wrote:
> > > Call me stupid. I presume you mean in /usr/src/sys/pci/brooktree848.c
> > > and these lines:
> > > /* CARD_HAUPPAUGE */
> > > { "Hauppauge WinCast/TV", /* the 'name' */
> > > NULL, /* the tuner */
> > > 0, /* dbx is optional */
> > > 0,
> > > PFC8582_WADDR, /* EEProm type */
> > > (u_char)(256 / EEPROMBLOCKSIZE), /* 256 bytes */
> > > { 0x00, 0x02, 0x01, 0x01, 1 } }, /* audio MUX values */
> >
> > The first one is for the tuner, the second is for the external, etc.
> > Look at the header file. Each of these select an audio source.
>
> I surmise that these numbers are channel numbers used by the audio
> mux to select the audio input for the line out. From what I can
> make out, the first is the value is used when the program is set
> to 'Tuner' the second for 'Video' (line in), the third is unused
> and the fourth is the chennel selected when in 'mute'.
>
> I've deduced the following channel numbers for the audio MUX (I
> seriously doubt that Haupauge would change these assignments from
> version to version):
It wouldn't surprise me. PC hardware manufacturers do gratious changes all
the time.
Index: brooktree848.c
===================================================================
RCS file: /home/ncvs/src/sys/pci/brooktree848.c,v
retrieving revision 1.28
diff -u -r1.28 brooktree848.c
--- brooktree848.c 1998/02/09 06:10:44 1.28
+++ brooktree848.c 1998/02/14 08:45:59
@@ -2012,6 +2012,11 @@
case TVTUNER_SETCHNL:
temp_mute( bktr, TRUE );
temp = tv_channel( bktr, (int)*(unsigned long *)arg );
+ bktr->card.audiomuxs[0] =
+ bktr->card.audiomuxs[1] =
+ bktr->card.audiomuxs[2] =
+ bktr->card.audiomuxs[3] =
+ (*(unsigned long *)arg & GPIO_AUDIOMUX_BITS);
temp_mute( bktr, FALSE );
if ( temp < 0 )
return( EINVAL );
will tie the audio MUX input select to the TV channel selected; see if this
give you audio anywhere.
> Setting the mute channel to 2 passes line in to line out when the
> output is muted. (I'd expect this result.)
>
> Setting the tuner channel to 2 should pass line in to line out when
> the tuner is selected, but this does not happen. I find this
> surprising. I also tried 0 to 0x0f values for the tuner with no
> success.
That sound extremely strange, yes. It sound like some of our initialization
may be incomplete. Amancio, any idea?
> Something that did surprise me about the software was that it could
> select input from 4 sources and not 3 like the FreeBSD driver.
> Namely: tuner, ext 1, ext 2, svideo.
We could support that. The problem is that these things tend to differ from
card to card; at a max, a single card might support 16 in-devices, so we
_could_ need to add 16 types for each new card discovered...
> Without a circuit diagram or some kind of decent technical
> documentation I'm totally at a loss. The board has one of those
> msp3410 chips on it and a Philips tuner chip whose part number
> escapes me, but which I suspect is part of the audio stage of the
> TV tuner. Does the driver have to program this tuner at all or does
> it know what side-band it should be examining for the audio track?
The MSP3410 is NICAM and radio support. I have been lent one of these to
write support for; I have the docs, but haven't gotten around to doing any
code yet.
The driver shouldn't have to program more than the Bt848 and the tuner,
AFAIK - but I have not experimented at all on a Hauppauge. I'll try to
borrow the one my co-worker have for a few days; I doubt I can have it for
long, as he use it as his primary TV.
Eivind.
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19980215162341.13873>
