Common error messages
- Errors about RTC, the Linux real time clock
device
- Video card memory errors
Capture card problems
- Channels black-and-white and numbers
off-by-one
- Too few buffers with bttv before
kernel 2.4.21
- bttv takes a long time to load
- Audio problems with Prolink PixelView
cards
- Poor performance with the rivatv driver
- Unable to tune to channels using the
bttv, saa7134 or cx88 drivers
Video card problems
- No YUY2 with the Radeon FireGL drivers
- Corrupted YUY2 video with EPIA onboard
video
- Terrible XVIDEO performance with
Radeon cards and XFree86 4.3
- Poor performance with SiS driver in XFree86 4.2.1
and earlier
- XVIDEO always-on-top with some Radeon cards
- Corrupted image borders on NVIDIA cards
in overscan modes
- No XVIDEO support on pre-GeForce NVIDIA
cards with the "nv" driver
- Problems with NVIDIA TNT and TNT2 cards
- XVIDEO initialization problem with the savage
driver
Driver conflicts
- Using overlay mode in xawtv or zapping causes
system instabilities
- apm driver known to cause frame drops
- ntfs driver known to cause frame drops
Common error messages
Enhanced Real Time Clock support in your kernel can help applications
like tvtime improve the smoothness of their output. The kernel module
that provides this feature is called rtc, and it is compiled and
installed by default on most Linux distributions.
This feature will improve the quality of tvtime's output, but is
NOT required for tvtime to operate.
Reasons why tvtime might not be able to use /dev/rtc include:
- Your user does not have read/write access to the device
file /dev/rtc.
- You compiled your own kernel and forgot to enable the RTC device.
- Your user does not have the rights to get high resolution timers.
If your user does not have sufficient priviledge, the RTC device
cannot be used for high-resolution timers. To solve this, you can
do one of the following:
- Run tvtime as root.
- Set the tvtime executable SUID root using this command:
chmod u+s /usr/bin/tvtime.
- Allow user processes the ability to use high resolution timers
by running this command as root every time your machine boots:
sysctl -w dev.rtc.max-user-freq=1024
tvtime uses the XVIDEO extension, which allocates video card
memory. We have experienced some problems where the X server fails
to provide enough video card memory for tvtime to use it. This can
happen if your video card is old and simply doesn't have enough memory
to hold the framebuffer and tvtime at once. However, there are also
bugs in X servers and X drivers that can cause this.
If your distribution is using the
Xorg X server and you
are seeing these errors, please comment on
Xorg bug
474.
Capture card problems
The tuner driver defaults to detecting a PAL tuner on many NTSC
capture cards, a notable example being the ATI TV Wonder cards. This
causes all of the cable frequencies to be out of alignment, channel
numbers are off-by-one and slightly detuned. To fix this, the tuner
type must be told explicitly when loading your capture driver. For
example, with the bttv driver use the following:
modprobe bttv tuner=2
You may have to first remove the bttv module if it is already
loaded. To make this change automatic, in your
/etc/modules.conf file, add the following line:
options bttv tuner=2
This will ensure that whenever the tuner module is loaded, it will
use the correct tuner for this card. If this does not fix the problem
please post a bug report on
the
tvtime bugs page.
In older versions of bttv, this module option could also be passed
to the tuner module. This method is deprecated in newer 2.6 kernels,
and so you must pass the parameter to the capture driver itself.
To attack this problem, we believe that the tuner module must be
fixed to correctly detect the difference in tuner, as so many users
are affected by this problem. To help with this, please follow up on
tvtime bug 711428.
The popular bttv capture
driver only provided applications with two buffers by default in
versions shipped with kernels before 2.4.21. Our advanced
deinterlacing algorithms require a longer history of past input
frames in order to predict motion in the video stream.
To give applications more buffers, use this option when
loading the bttv driver:
modprobe bttv gbuffers=4
To make this change automatic, add the following in your
/etc/modules.conf file:
options bttv gbuffers=4
On some cards without a tuner, bttv can take a long time to load
(a few minutes). If you see this problem, try using this option
in your modules.conf file for loading the i2c-algo-bit
module:
options i2c-algo-bit bit_test=1
If that does not help, please post a bug report.
The bttv driver seems to misdetect Prolink Pixelview cards pretty
badly. There are five Prolink cards listed in CARDLIST for the bttv
driver:
card=16 - Prolink Pixelview PlayTV (bt878)
card=37 - Prolink PixelView PlayTV pro
card=50 - Prolink PV-BT878P+4E /
PixelView PlayTV PAK /
Lenco MXTV-9578 CP
card=70 - Prolink Pixelview PV-BT878P+ (Rev.4C)
card=72 - Prolink Pixelview PV-BT878P+9B
(PlayTV Pro rev.9B FM+NICAM)
The bttv driver cannot seem to autodetect these cards correctly.
We have found that cards which should use card=70 but are
instead loaded using card=72 are causing audio mute/unmute
to fail randomly, or even be inverted, resulting in no audio or just
snippets of audio. To avoid this, please make sure you are using the
correct variant of this card. Specifically, the rev 9D of
the newer Pixelview cards should use card=70 and not
card=72.
By default, the rivatv the driver copies frames from video memory
into system memory, which can harm performance. Performance can be
improved by using DMA to transfer the frames, however, this
option only works when using the open-source "nv" driver in X,
not with the NVIDIA binary drivers.
You can turn on dma support as follows in your modules.conf
file:
options rivatv dma=1
The bttv, saa7134, and cx88 drivers each support a wide variety
of cards which all use the same chip. In particular, these cards
differ in what tuner they use, how many inputs they have, and how
it is configured.
Often, these drivers cannot autodetect the |