more changes on original files
[linux-2.4.git] / Documentation / video4linux / bttv / README
1
2 IMPORTANT:  Don't send me mails with images attached unless I ask you
3 to do so.  Mails with images attached will go to /dev/null unseen.
4
5
6 Release notes for bttv-0.7.x
7 ============================
8
9 This version is based on Ralphs 0.6.4 release.  There are alot of
10 changes.  Bugfixes, merged patches from other people, merged fixes
11 from the kernel version, port to the new i2c stack, removed support
12 for 2.0.x, code cleanups, ...
13
14 To compile this bttv version, you'll the new i2c stack.  Kernels
15 newer than 2.3.34 have this already included.  If you have a older
16 kernel, download it from:
17         http://www.lm-sensors.org/wiki/Download
18
19 You'll need at least these config options for bttv:
20 CONFIG_I2C=m
21 CONFIG_I2C_ALGOBIT=m
22 CONFIG_VIDEO_DEV=m
23
24 The latest bttv version is available from http://bytesex.org/bttv/
25
26 You'll find Ralphs original (mostly outdated) documentation in the
27 ralphs-doc subdirectory.
28
29
30 Compile bttv
31 ------------
32
33 If you are compiling the kernel version, just say 'm' if you are asked
34 for bttv.  I /strongly/ recommend to compile bttv as module, because
35 there are some insmod options for configuring the driver.  Starting
36 with 0.7.49 the most important ones are available as kernel args too.
37
38 If you downloaded the separate bttv bundle:  You need configured kernel
39 sources to compile the bttv driver.  The driver uses some Makefile
40 magic to compile the modules with your kernel's configuration
41 (wrt. module-versions, SMP, ...).  If you already have compiled the
42 kernel at least once, you probably don't have do worry about this.  If
43 not, go to /usr/src/linux and run at least "make config".  Even
44 better, compile your own kernel, you'll never become a real hacker
45 else ;-)
46 Note that you have to turn on video4linux support (CONFIG_VIDEO_DEV)
47 in the kernel to get the videodev.o module which is required by bttv.
48
49
50 Make bttv work with your card
51 -----------------------------
52
53 Setup your /etc/modules.conf file and let kmod load the modules.
54 See also:
55
56 Modules.conf:   some sample entries for /etc/modules.conf
57 Insmod-options: list of all insmod options available for bttv and
58                 the helper modules.
59 MAKEDEV:        a script to create the special files for v4l
60 CARDLIST:       List of all supported cards
61 Cards:          more detailed descriptions of known TV cards:
62                 OEM name variants, used i2c chips, ...
63                 also includes non-bttv cards.
64
65 Loading just the bttv modules isn't enouth for most cards.  The
66 drivers for the i2c tuner/sound chips must also be loaded.  bttv tries
67 to load them automagically by calling request_module() now, but this
68 obviously works only with kmod enabled.
69
70 If bttv takes very long to load (happens sometimes with the cheap
71 cards which have no tuner), try adding this to your modules.conf:
72         options i2c-algo-bit bit_test=1
73
74 The most important insmod option for bttv is "card=n" to select the
75 correct card type in case the autodetection does'nt work. If you get
76 video but no sound you've very likely specified the wrong (or no)
77 card type.  A list of supported cards is in CARDLIST.
78
79 For the WinTV/PVR you need one firmware file from the driver CD:
80 hcwamc.rbf.  The file is in the pvr45xxx.exe archive (self-extracting
81 zip file, unzip can unpack it).  Put it into the /etc/pvr directory or
82 use the firm_altera=<path> insmod option to point the driver to the
83 location of the file.
84
85 If your card isn't listed in CARDLIST or if you have trouble making
86 audio work, you should read the Sound-FAQ.
87
88
89 Autodetecting cards
90 -------------------
91
92 bttv uses the PCI Subsystem ID to autodetect the card type.  lspci lists
93 the Subsystem ID in the second line, looks like this:
94
95 00:0a.0 Multimedia video controller: Brooktree Corporation Bt878 (rev 02)
96         Subsystem: Hauppauge computer works Inc. WinTV/GO
97         Flags: bus master, medium devsel, latency 32, IRQ 5
98         Memory at e2000000 (32-bit, prefetchable) [size=4K]
99
100 only bt878-based cards can have a subsystem ID (which does not mean
101 that every card really has one).  bt848 cards can't have a Subsystem
102 ID and therefore can't be autodetected.  There is a list with the ID's
103 in bttv-cards.c (in case you are intrested or want to mail patches
104 with updates).
105
106 Old driver versions used to have a heuristic which could identify some
107 bt848-based cards.  It worked for Hauppauge and Miro cards in most
108 cases (simply because these where the first cards available on the
109 market), but misdetected other bt848 cards.  That code is gone now for
110 exactly this reason, the misdetection confused lots of people.  If you
111 have a old Hauppauge or Miro card, you'll have to load the driver with
112 card=1 or card=2 these days.
113
114
115 Still doesn't work?
116 -------------------
117
118 I do NOT have a lab with 30+ different grabber boards and a
119 PAL/NTSC/SECAM test signal generator at home, so I often can't
120 reproduce your problems.  This makes debugging very difficult for me.
121 If you have some knowledge and spare time, please try to fix this
122 yourself (patches very welcome of course...)  You know: The linux
123 slogan is "Do it yourself".
124
125 There is a mailing list: video4linux-list@redhat.com.
126 https://listman.redhat.com/mailman/listinfo/video4linux-list
127
128 If you have trouble with some specific TV card, try to ask there
129 instead of mailing me directly.  The chance that someone with the
130 same card listens there is much higher...
131
132 For problems with sound:  There are alot of different systems used
133 for TV sound all over the world.  And there are also different chips
134 which decode the audio signal.  Reports about sound problems ("stereo
135 does'nt work") are pretty useless unless you include some details
136 about your hardware and the TV sound scheme used in your country (or
137 at least the country you are living in).
138
139
140 Finally: If you mail some patches for bttv around the world (to
141 linux-kernel/Alan/Linus/...), please Cc: me.
142
143
144 Have fun with bttv,
145
146   Gerd
147
148 --
149 Gerd Knorr <kraxel@goldbach.in-berlin.de>