On Fri, 2008-07-25 at 00:36 +0200, Luc Janssen wrote: > Hello all, > > I recently upgraded my MythTV box to Mythdora 5.0 hoping to resolve some > problems I had in using MythTV. Many problems have disappeared, however... > at least one remained. > > When I select a TV-channel normally everything works fine, but sometimes > the capture appears in black and white. When I change the channel and then > return to the "black-white" channel, very often this channel reappears in > full colour! > > The same can happen when the mythtv box records a television program. The > captured video often is in black-white while at other times the capture > for the same channel appears in colour.
You likely have a chroma subcarrier locking problem. This is more likely to happen with weak or noisy signals. Taking steps to improve signal quality may make the problem go away: http://www.ivtvdriver.org/index.php/Howto:Improve_signal_quality Or, if you prefer a possible software solution, then find this line in linux/drivers/media/video/cx25840/cx25840-core.c:cx25840_initialize() cx25840_and_or(client, 0x401, ~0x18, 0); and change it to cx25840_and_or(client, 0x401, ~0x18, 0x10); And recompile and reinstall at least the cx25840 module. Then unload the ivtv and cx25840 modules and reload the ivtv module. It looks like the cx25840 module currently sets the CX25843 chroma subcarrier locking to "Manual lock rate, slow locking" (Which one should only really do when also implementing fast rate locking on channel switching - ivtv doesn't). The suggested change will set chroma subcarrier locking to "Auto lock rate". Auto lock rate uses a fast chroma subcarrier locking mechanism when you don't have chroma subcarrier lock, and a slow chroma subcarrier locking algorithm when you do have chroma subcarrier lock (to avoid pulling out of lock easily due to noise). See section 3.4.13 of the CX25840/1/2/3 data sheet at http://dl.ivtvdriver.org/datasheets/video/cx25840.pdf if you want more details. Note that the CSC_LOCK bit (0x08) of register 0x40e can be used to determine if you actually have chroma subcarrier lock or not at any given time. With some effort on the command line, v4l2-dbg can be used to inspect the cx2584x registers at any time. Regards, Andy > A few remarks: > - Without being sure I suspect this problem appears only at a few > TV-channels, i.e. this problem is not present for each TV-channel I have. > - I had this problem with my previous version of mythtv (0.20). I do not > know what version of ivtv was used. > - In the log file /var/log/mythtv/mythbackend.log I can not see any > difference in logging information whether the capturing is in colour or > B/W. > > Info: > - MythDora 5.0 > - MythTV 0.21-191.fc8 > - IVTV 1.0.3-136.fc8 > - ivtv-firmware 20070217-17 > - dmesg | grep -i ivtv: > ivtv: Start initialization, version 1.2.0 > ivtv0: Initializing card #0 > ivtv0: Autodetected Hauppauge card (cx23416 based) > ivtv0: Unreasonably low latency timer, setting to 64 (was 32) > ivtv0: Autodetected WinTV PVR 500 (unit #1) > cx25840 1-0044: cx25843-24 found @ 0x88 (ivtv i2c driver #0) > tuner 1-0060: chip found @ 0xc0 (ivtv i2c driver #0) > tuner 1-0043: chip found @ 0x86 (ivtv i2c driver #0) > tuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0) > wm8775 1-001b: chip found @ 0x36 (ivtv i2c driver #0) > ivtv0: Registered device video0 for encoder MPG (4096 kB) > ivtv0: Registered device video32 for encoder YUV (2048 kB) > ivtv0: Registered device vbi0 for encoder VBI (1024 kB) > ivtv0: Registered device video24 for encoder PCM (320 kB) > ivtv0: Registered device radio0 for encoder radio > ivtv0: Initialized card #0: WinTV PVR 500 (unit #1) > ivtv1: Initializing card #1 > ivtv1: Autodetected Hauppauge card (cx23416 based) > ivtv1: Unreasonably low latency timer, setting to 64 (was 32) > ivtv1: Correcting tveeprom data: no radio present on second unit > ivtv1: Autodetected WinTV PVR 500 (unit #2) > cx25840 2-0044: cx25843-24 found @ 0x88 (ivtv i2c driver #1) > tuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1) > tuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1) > wm8775 2-001b: chip found @ 0x36 (ivtv i2c driver #1) > ivtv1: Registered device video1 for encoder MPG (4096 kB) > ivtv1: Registered device video33 for encoder YUV (2048 kB) > ivtv1: Registered device vbi1 for encoder VBI (1024 kB) > ivtv1: Registered device video25 for encoder PCM (320 kB) > ivtv1: Initialized card #1: WinTV PVR 500 (unit #2) > ivtv: End initialization > ivtv0: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) > ivtv0: Encoder revision: 0x02060039 > ivtv1: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) > ivtv1: Encoder revision: 0x02060039 > > Does anyone have a clue where to look for further information? > > Kind regards, > > Luc _______________________________________________ ivtv-users mailing list [email protected] http://ivtvdriver.org/mailman/listinfo/ivtv-users
