Help - Search - Members - Calendar
Full Version: problems with S3 Savage and uvc driver with QC 9000 Pro
Skype Community > English > Development, Betas and Skype Garage > Archive > Skype 2.0 Beta for Linux
shugyo
Hi All,
I have no trouble running SkyPE 2 Beta on linux Ubuntu sid or Ubuntu Gutsy either i386 or AMD64 with Logitech QuickCam 9000 Pro when the graphics cards are nVidia: GTX 7800 or MX 440 both OK. But, on an older Toshiba Dynabook (Japanese model name DB650C/4RC) with S3 Savage I get interlaced lines---I can tell the picture is kind of there because I can make out some features as I move the camera.

Here is my X11 video driver setting:

Section "Device"
Identifier "S3 Inc. 86C270-294 Savage/IX-MV"
Driver "savage"
BusID "PCI:1:0:0"

I already tested with luvcview and it works fine, no crashes even after 15 minute test while working on the PC. I also have all requisite packages (dbus, qt, libasound2, libsigc++, uvc, v4l, etc.) that I could think of.

I did not find any specific information on problems with SkyPE with this card, any pointers appreciated. I will add to Ubuntu wiki information on which specific graphics cards and drivers are working OK with this QC and SkyPE.

Many thanks in advance, Gernot Hassenpflug
Andypoo
Hi -- are you running the latest svn build of uvc on this machine?

Andy.
shugyo
QUOTE(Andypoo @ Sat Nov 24 2007, 15:29) [snapback]467681[/snapback]

Hi -- are you running the latest svn build of uvc on this machine?


No, it was the same Debian unstable uvc driver version as is working on my other Debian i386 with an nVidia card. I'll see if I can install the latest SVN and get back to you with an update.

Edit:

Installed revision 147 of the UVC sources from Berlios. Loaded module. luvcview still works. But the interlacing still happens as before. How can I set options to make the logfile useful here?

Thanks, Gernot
Andypoo
To activate the logfile, simply mkdir ~/.Skype/Logs, then run Skype, go to Options, Video, Test the device for 10 seconds, close the Options dialog, close Skype and send the resulting .log file from the Logs directory to a post on this forum.

Also, if you can make a screenshot of the options window during the test, this could also be useful.

Thanks for that.
Andy.
shugyo
QUOTE(Andypoo @ Sun Nov 25 2007, 12:45) [snapback]467898[/snapback]
To activate the logfile, simply mkdir ~/.Skype/Logs, then run Skype, go to Options, Video, Test the device for 10 seconds, close the Options dialog, close Skype and send the resulting .log file from the Logs directory to a post on this forum.


OK, 10 seconds generates about 175kB of binary .log file, ack! I've also gzipped the .trace file and attach it.

QUOTE(Andypoo @ Sun Nov 25 2007, 12:45) [snapback]467898[/snapback]
Also, if you can make a screenshot of the options window during the test, this could also be useful.


I tried this before, and the screenshot did not capture the interlacing, it just gave a blue screen there. So I will photographed the video options screen instead and attach that pic below.

Extra info: It seems I've given incorrect info: SkyPE also does not work with my MX440 nVidia card in a PIII 850MHz machine (which I swore I saw worked before, but it was late and it could have been just the luvcview...) So now I've tested SkyPE and luvcview with the following kernels on 2 machines, one with S3 savage, and one with MX440 nVidia:

kernel luvcview SkyPE
------- ---------- --------
2.6.22-3-686-bigmem interlaced interlaced
2.6.22.3.686 OK interlaced
2.6.22-2-686 OK interlaced
2.6.18-4-686-bigmem OK interlaced

It does work fine on my newer Toshiba laptop with PentiumM and GeForce 6600TE type nVidia card (and of course the Ubuntu Gutsy with AMD64 and 7800 series nVidia cards). Hope this helps.

Regards, Gernot

Edit: I should add I get no difference whether I use the Debian Etch package (although I use unstable Debian), static, or dynamic SkyPE installations.
shugyo
(Andy, please don't forget to peruse also my previous mail, which I edited for you)

I've run the v4l-info tool after doing a quick test in the SkyPE video options window. I got this at the prompt
CODE

v4l-info > test1
ioctl VIDIOCGCHAN: Invalid argument
ioctl VIDIOCGTUNER: Invalid argument
ioctl VIDIOCGAUDIO: Invalid argument
ioctl VIDIOCGFBUF: Invalid argument

and the file is attached in zipped format.
shugyo
Problem solved! It turns out to be a resolution problem. On both i386 machines, one with an nVidia MX440, the other with the S3 Savage.

1. Querying the camera yields:
CODE
$ luvcview -L
luvcview version 0.2.1
Video driver: x11
A window manager is available
video /dev/video0
/dev/video0 does not support read i/o
{ pixelformat = 'MJPG', description = 'MJPEG' }
{ discrete: width = 160, height = 120 }
        Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 176, height = 144 }
        Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 320, height = 240 }
        Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 352, height = 288 }
        Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 640, height = 480 }
        Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 800, height = 600 }
        Time interval between frame: 1/15, 1/10, 1/5,
{ pixelformat = 'YUYV', description = 'YUV 4:2:2 (YUYV)' }
{ discrete: width = 160, height = 120 }
        Time interval between frame: 1/15, 1/10, 1/5,
{ discrete: width = 176, height = 144 }
        Time interval between frame: 1/15, 1/10, 1/5,


2. Since I think it was said here that SkyPE requires YUV rather than MJPG, I decided to add the 176x144 resolution to the ~/.SkyPE/<user>/config.xml file. Opening it on the MX440 card machine reveals for the Video section only the following:
CODE
<Video>
  <AutoSend>1</AutoSend>
  <Device>/dev/video0</Device>
</Video>


To this I then appended the three lines to give a total of:
CODE
<Video>
  <AutoSend>1</AutoSend>
  <Device>/dev/video0</Device>
  <CaptureHeight>144</CaptureHeight>
  <CaptureWidth>176</CaptureWidth>
  <Fps>10</Fps>
</Video>


And hey presto, it worked!

3. For the other machine with the S3 card, surprise, no <Video> section at all!!! So I added one based on the above format, and hey presto, it worked!

Conclusion: Some problems are very simple to solve, and this solution should be in a Wiki! The bad news seems to be that SkyPE does not write anything about the resolution into the config file by itself, or does so only when certain options are activated.

I hope this is useful to someone. I will try tomorrow and see if it can also resolve the "frozen lower half of video" problem on my third machine, the only one where SkyPE and camera "worked" out of the box.

Regards, Gernot
Andypoo
Good news, shuygo. Even better news is that I have a resolution test in the next version which should use the lower resolution when normal resolution is unavailable, so hopefully this fix will also help this camera.

Andy.
shugyo
QUOTE(Andypoo @ Thu Nov 29 2007, 12:20) [snapback]469562[/snapback]

Good news, shuygo. Even better news is that I have a resolution test in the next version which should use the lower resolution when normal resolution is unavailable, so hopefully this fix will also help this camera.


Roger! And yes, all problems with all my setups on 4 different machines were solved by choosing resolutions and frame speeds manually: too high and problems would emerge (like frozen lower half).

I would suggest that---to allow users to control their bandwidth (I saw a post here where someone was surprised a windows users was only using some 20% of the linux user's bandwidth with the same camera!)---the resolution test should include manual controls whereby the user can vary the settings: luvcview, for example, can tell the user exactly which YUV modes are supported, and I am sure you guys can do something similar and add a control. That would be really cool!
Nevell
QUOTE
$ luvcview -L
luvcview version 0.2.1
Video driver: x11
A window manager is available
video /dev/video0
/dev/video0 does not support read i/o
{ pixelformat = 'MJPG', description = 'MJPEG' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 352, height = 288 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 800, height = 600 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 960, height = 720 }
Time interval between frame: 1/15, 1/10, 1/5,
{ pixelformat = 'YUYV', description = 'YUV 4:2:2 (YUYV)' }
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 352, height = 288 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 800, height = 600 }
Time interval between frame: 1/25, 1/20, 1/15, 1/10, 1/5,
{ discrete: width = 960, height = 720 }
Time interval between frame: 1/10, 1/5,
{ discrete: width = 1600, height = 1200 }
Time interval between frame: 1/5,


I'm add into the /my_home_folder/.Skype/my_username/config.xml):
<Video>
<AutoSend>1</AutoSend>
<CaptureHeight>720</CaptureHeight>
<CaptureWidth>960</CaptureWidth>
<Device>/dev/video0</Device>
<Fps>15</Fps>
</Video>
also i tried 320@240@30fps

Next, i'm start the Skype, press the TEST button, then i see black image and after 15-20 sec. Skype is crashed (close).
P.S. Kopete, Cheese work with my cam... But after my experiments with the other drivers i see in the luvcview not more 5 fps...

Andypoo
960x720 @ 15fps isn't supported by your driver given what oyu've noted above - so I'm not sure why you have tried this particular combination.

I'd recommend removing the CaptureWidth, CaptureHeight and Fps config entries, then sending a log with 2.0.0.27 release.

Thanks,
Andy.
Nevell
done wink.png
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.