View unanswered posts | View active topics It is currently Sun May 19, 2019 7:11 am



Reply to topic  [ 15 posts ]  Go to page Previous  1, 2
 PWC driver 
Author Message

Joined: Wed May 25, 2011 11:05 am
Posts: 521
Post Re: PWC driver
What does dmesg say when camera is plugged in?
Also some info here http://en.gentoo-wiki.com/wiki/Webcam#Philips


Fri Nov 04, 2011 7:32 pm
Profile

Joined: Fri Oct 28, 2011 2:32 pm
Posts: 14
Post Re: PWC driver
Hi,

Well had other teaching distractions. back on the case now.

I have recompiled the PWC driver with debug error messages enabled.
When I run guvcview I get this stack of output (see bottom of post).
If I run cheese OR guvcview I get a reasonable monochrome image overlaid with patchy blocks of colour. So the colour decoding is wrong.

I tried to take the PWC driver & v4l driver from linux 3.1 source and compiled tjhat into myh your trimslice kernel. Of course I crashed and burned, as I got deeper into it I finally found I was needing to configure tegra code to handle the USB ports. (bad news) so i stopped.

I am completely puzzled as to why I am getting so much trouble with the PWC driver as I had thought the Philips SPC900 camera was well supported under linux.

Any ideas please, most welcome!
Regards,

Phil
----------------- cut here for debug output for camera operation under uvcview -----
trim@trimslice:~$ guvcview
guvcview 1.4.1
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.front.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM front
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.surround40.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround40
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.surround51.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround41
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.surround51.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround50
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.surround51.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround51
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.surround71.0:CARD=0'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround71
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM iec958
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards..pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4184:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4663:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
video device: /dev/video0
/dev/video0 - device 1
Init. Philips SPC 900NC webcam (location: usb-tegra-ehci.2-1.3)
{ pixelformat = 'PWC2', description = 'Raw Philips Webcam' }
{ not supported - request format(843274064) support at http://guvcview.berlios.de }
{ pixelformat = 'YU12', description = '4:2:0, planar, Y-Cb-Cr' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'RGB3', description = 'RGB3' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'BGR3', description = 'BGR3' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'YV12', description = 'YV12' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
vid:0471
pid:0329
driver:pwc
checking format: 842093913
Unable to set 1/5 fps
VIDIOC_S_PARM error: Invalid argument
VIDIOC_G_PARM - Unable to get timeperframe: Invalid argument
fps is set to 1/5
drawing controls

NEXT_CTRL flag not supported
VIDIOC_G_EXT_CTRLS failed
using VIDIOC_G_CTRL for user class controls
fps is set to 1/5
no codec detected for H264
no codec detected for MP3 - (lavc)
write /home/trim/.guvcviewrc OK
free controls
cleaned allocations - 100%
Closing portaudio ...OK
Closing GTK... OK
trim@trimslice:~$


Thu Nov 10, 2011 9:55 am
Profile

Joined: Fri Oct 28, 2011 2:32 pm
Posts: 14
Post Re: PWC driver
Hi, just noticed you asked for dmesg listing.

best
Phil

dmesg output

dmesg | grep pwc
[ 2.345209] pwc: Philips webcam module version 10.0.14 loaded.
[ 2.351049] pwc: Supports Philips PCA645/646, PCVC675/680/690, PCVC720[40]/730/740/750 & PCVC830/840.
[ 2.360268] pwc: Also supports the Askey VC010, various Logitech Quickcams, Samsung MPC-C10 and MPC-C30,
[ 2.369764] pwc: the Creative WebCam 5 & Pro Ex, SOTEC Afina Eye and Visionite VCS-UC300 and VCS-UM100.
[ 2.379190] pwc: Trace options: 0x0001
[ 164.153312] pwc: Philips SPC 900NC USB webcam detected.
[ 164.571139] pwc: Registered as video0.
[ 216.903230] pwc: Closing video device: 115 frames received, dumped 2 frames, 0 frames with errors.
[ 258.883506] pwc: Closing video device: 23 frames received, dumped 2 frames, 0 frames with errors.
[90808.660986] pwc: Closing video device: 1046 frames received, dumped 260 frames, 2 frames with errors.
[90848.722124] pwc: Closing video device: 304 frames received, dumped 170 frames, 1 frames with errors.
[90881.789756] pwc: Closing video device: 240 frames received, dumped 0 frames, 4 frames with errors.
[90887.949264] pwc: Closing video device: 45 frames received, dumped 0 frames, 0 frames with errors.
[90906.377409] pwc: Closing video device: 169 frames received, dumped 2 frames, 0 frames with errors.
[91012.116190] pwc: Closing video device: 171 frames received, dumped 160 frames, 1 frames with errors.


Mon Nov 14, 2011 1:45 pm
Profile

Joined: Fri Oct 28, 2011 2:32 pm
Posts: 14
Post Re: PWC driver
I definitely need help on this one.

I now know that the camera (which works at 160x120 on all other linux builds on Beagleboard, a win32 machine and pandaboard) does not decode the colour information properly on trimslice. The symptom is that I get a monochrome picture that is correct, overlaid with bursts of random colour. It seems the colour decoding is wrong.

I think this is not a driver issue, as the PWC driver appears to be the same as on these other machines.

I write to ask if there is a USB issue on trimslice that I am not taking into account. It could be that the YUV420 data stream from the camera is not being buffered properly in the USB driver. The camera is a 'full speed' device, not USB2.0

Any ideas??


Thu Nov 17, 2011 10:55 am
Profile

Joined: Fri Oct 28, 2011 2:32 pm
Posts: 14
Post Re: PWC driver
Well, I have now successfully installed Ubuntu 11.10 ontop of trimslice 2.6.38.3. And I have added the PCW driver to menuconfig.

I get this error when I run guvcview (see end of output listing)

video device: /dev/video0
Init. Philips SPC 900NC webcam (location: usb-tegra-ehci.2-1.3)
{ pixelformat = 'PWC2', description = 'Raw Philips Webcam' }
{ not supported - request format(843274064) support at http://guvcview.berlios.de }
{ pixelformat = 'YU12', description = '4:2:0, planar, Y-Cb-Cr' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'RGB3', description = 'RGB3' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'BGR3', description = 'BGR3' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
{ pixelformat = 'YV12', description = 'YV12' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/5, 1/10, 1/15, 1/20, 1/25, 1/30,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/5, 1/10, 1/15,
vid:0471
pid:0329
driver:pwc
checking format: 842093913
Unable to set 1/5 fps
VIDIOC_S_PARM error: Invalid argument
VIDIOC_G_PARM - Unable to get timeperframe: Invalid argument
fps is set to 1/5
drawing controls

NEXT_CTRL flag not supported
VIDIOC_G_EXT_CTRLS failed
using VIDIOC_G_CTRL for user class controls
fps is set to 1/5
no codec detected for H264
no codec detected for MP3 - (lavc)
Checking video mode 160x120@32bpp : OK
*** glibc detected *** guvcview: malloc(): memory corruption: 0x00209cb0 ***
Aborted
----------------------------------------------

I kind of suspect its a v4l issue, but I am a bit lost in the depths here.
Any ideas anyone??

Phil


Attachments:
File comment: this is the fault with the camera. You can see a correct monchrome image that is behind the incorrect colour channels.I think this is a YUV decode issue in V4L. but I cannot prove it.
spc900-fault.png
spc900-fault.png [ 96.31 KiB | Viewed 5224 times ]
Thu Dec 15, 2011 11:13 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 15 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.