Color problem with MPX-885 card (cx23885)
Hello
First of all, I don't know, if this is the right mailing list. I haven't found any other. The video4linux list seems to be abandoned.
I am testing a Commell MPX-885 mini-pcie card, which is based on a cx23885 chip. There is "initial" support in the linux kernel for this card:
My system is based on Ubuntu 12.04LTS amd64 with kernel 3.2.0.32.
The driver in general works. There are a couple of problems, however, which to my mind are probably easy to fix for someone understanding the driver:
1.) MINOR PROBLEM: The card is not auto-recognized. The module needs to be loaded with the option "card=32" to get it recognized.
2.) MINOR PROBLEM: With PAL camera, there is a black left border of about 20-30 pixel. No border on the right side.
3.) MAJOR PROBLEM: The image is mainly black & white only with some green and red information. There are vertical light green and red stripes
I have attached a captured image demonstrating the color problem (and also the border) to a bug report here:
https://bugzilla.kernel.org/show_bug.cgi?id=50411
I would really like to get this card fully working. Is there anybody here who can help me or direct me to a place where someone can help me.
Thanks a lot
Michael
Quoted 11 lines · Neuer User
Hello
First of all, I don't know, if this is the right mailing list. I haven't found any other. The video4linux list seems to be abandoned.
I am testing a Commell MPX-885 mini-pcie card, which is based on a cx23885 chip. There is "initial" support in the linux kernel for this card:
My system is based on Ubuntu 12.04LTS amd64 with kernel 3.2.0.32.
You should start by installing the current media_build tree. There were a bunch of cx23885 fixes done back in June, which won't be in 12.04. I believe this issue may already be fixed.
Cheers,
Devin
Signature · 2 lines
Devin J. Heitmueller - Kernel Labs http://www.kernellabs.com
Hello David
Thanks for taking the time to help.
I had looked through the linux-media GIT tree for any commits that have "cx23885" in the description. The last ones I found were from mid 2011.
That was probably why I did not try any newer kernels. Stupid me. Should have tried anyway.
I can confirm that the biggest problem, the color problem, is fixed at least with kernel 3.5.7 (maybe earlier).
The minor ones (card not autodetected, and black border on the left side) can probably be dealt with, e.g. in postprocessing. Or is there a chance to fix these in the driver?
Michael
Am 13.11.2012 16:02, schrieb Devin Heitmueller:
Quoted 8 lines
You should start by installing the current
media_buildtree. There were a bunch of cx23885 fixes done back in June, which won't be in 12.04. I believe this issue may already be fixed.Cheers,
Devin
Quoted 2 lines · Neuer User
I had looked through the linux-media GIT tree for any commits that have "cx23885" in the description. The last ones I found were from mid 2011.
Yeah, the changes were actually made to the cx25840 driver, which is used/shared by the cx23885.
Quoted 2 lines
I can confirm that the biggest problem, the color problem, is fixed at least with kernel 3.5.7 (maybe earlier).
Ok, good.
Quoted 3 lines
The minor ones (card not autodetected, and black border on the left side) can probably be dealt with, e.g. in postprocessing. Or is there a chance to fix these in the driver?
They can almost certainly be fixed in the driver (the black border is a result of incorrect HSYNC configuration for PAL standards). The bigger issue though is finding someone willing to do the work. If this is for a commercial application, you may wish to reach out to Steven Toth. He did the original MPX support as a consulting project.
Devin
Signature · 2 lines
Devin J. Heitmueller - Kernel Labs http://www.kernellabs.com
Am 13.11.2012 18:07, schrieb Devin Heitmueller:
Quoted 5 lines · Neuer User
Quoted 3 lines
The minor ones (card not autodetected, and black border on the left side) can probably be dealt with, e.g. in postprocessing. Or is there a chance to fix these in the driver?
Quoted 8 lines
They can almost certainly be fixed in the driver (the black border is a result of incorrect HSYNC configuration for PAL standards). The bigger issue though is finding someone willing to do the work. If this is for a commercial application, you may wish to reach out to Steven Toth. He did the original MPX support as a consulting project.
Devin
Hi Devin
Thanks for the help.
The HSYNC problem is bigger than I thought. I compared the captured image with an image from another (USB) video digitizer and it is obvious that the image has lost about 10-20% on the right side and on the bottom.
Can probably be easily fixed. But it is no commercial project, so I need to do it myself, I guess. I hope there are some settings in the driver. Any idea where I need to look? (Is it the cx23885 driver at all or even the cx25840?)
Michael
Quoted 8 lines · Neuer User
The HSYNC problem is bigger than I thought. I compared the captured image with an image from another (USB) video digitizer and it is obvious that the image has lost about 10-20% on the right side and on the bottom.
Can probably be easily fixed. But it is no commercial project, so I need to do it myself, I guess. I hope there are some settings in the driver. Any idea where I need to look? (Is it the cx23885 driver at all or even the cx25840?)
Almost certainly just changes needed for the cx25840 driver. These are all basic issues with the video decoder core. Google around - the cx25840 datasheet is readily available. You have to watch out though because there are some subtle differences that you won't be able to detect if it's a cx23887 or cx23888 as opposed to the cx23885.
Regarding the cropped image, what capture resolution are you using? Perhaps the scaler isn't working and you're setting the capture to something like "640x480" (which would effectively crop out lines 640-720 on the horizontal and lines 480-576 on the vertical).
Devin
Signature · 2 lines
Devin J. Heitmueller - Kernel Labs http://www.kernellabs.com
Am 13.11.2012 19:54, schrieb Devin Heitmueller:
Quoted 5 lines
Almost certainly just changes needed for the cx25840 driver. These are all basic issues with the video decoder core. Google around - the cx25840 datasheet is readily available. You have to watch out though because there are some subtle differences that you won't be able to detect if it's a cx23887 or cx23888 as opposed to the cx23885.
Well, I will try to have a look at the sources, but probably, I won't be able to patch it correctly, if the changes necessara are more than absolutely basic and obvious...
I once compiled the tw68 driver for another card. And here the borders were also not correct. In this driver it was very easy to find the settings to change.
Quoted 8 lines
Regarding the cropped image, what capture resolution are you using? Perhaps the scaler isn't working and you're setting the capture to something like "640x480" (which would effectively crop out lines 640-720 on the horizontal and lines 480-576 on the vertical).
Devin
Thanks, you probably hinted me into the right direction. I use mplayer to play the video stream and mplayer does indeed recognize a 640x480 video stream.
I am not using any crop settings for these tests. But maybe it is possible to tell mplayer that the stream is 720x576 instead of the 640x480 it believes. That is, if the stream coming from the driver is really not 640x480.
Quoted 8 lines · Neuer User
Thanks, you probably hinted me into the right direction. I use mplayer to play the video stream and mplayer does indeed recognize a 640x480 video stream.
I am not using any crop settings for these tests. But maybe it is possible to tell mplayer that the stream is 720x576 instead of the 640x480 it believes. That is, if the stream coming from the driver is really not 640x480.
Just to be clear, I wasn't intending to suggest that you were using any of the actual V4L2 cropping features. I'm just saying that if the video scaler were broken, it's possible that the frames are *effectively* being cropped at 640x480.
But yeah, you should definitely try capturing at 720x576 in mplayer. You can specific command line arguments to mplayer to set the width and height.
Devin
Signature · 2 lines
Devin J. Heitmueller - Kernel Labs http://www.kernellabs.com
Am 13.11.2012 20:12, schrieb Devin Heitmueller:
Quoted 4 lines
Just to be clear, I wasn't intending to suggest that you were using any of the actual V4L2 cropping features. I'm just saying that if the video scaler were broken, it's possible that the frames are *effectively* being cropped at 640x480.
Absolutely, you found the problem. Thanks a lot. Indeed as soon as I define a resolution (even the 640x480) I get the full picture. Only if NO resolution is specified, I get 640x480 as a croped version.
Funny bug. For me I can live with the current solution. I can define the resolution with mplayer and crop out the black left border. (Hopefully QTMultimedia can do that also...)
Again, you have been very helpful. Thank you very very much.
Michael
Quoted 7 lines
But yeah, you should definitely try capturing at 720x576 in mplayer. You can specific command line arguments to mplayer to set the width and height.
Devin