Getting Skype to work on intrepid ibex with video

I have a logitech quick cam express web cam and a cheap microphone I picked up at nehru place. I installed skype from the repos and neither the audio nor the video would work. Chats worked fine though. So began trying to get them to work.

I decided I would get the latest deb version from the skype website and work with that. You can get the deb package or other packages from here.

During install I am warned that it is better to keep the older version from the repository itself, but I go ahead and install the new version.

I still have no luck and the test video in video options of skype shows a green noise, with no audio input.

Audio Input Setup

First the Audio. Make sure that your alsa mixer settings are proper. You could try recording with the sound recorder or audacity to ensure that your microphone is plugged in right.

Then in the Audio options in Skype set the Audio input device (Sound in) to the hardware device. For me it is HDA Intel (hw:Intel,0). Sound Out and Ringing should be set to pulse audio.

Go ahead and do a test call from the main skype window. You should now have audio. If not, try changing the sound input to various values, applying and then testing.

Video Setup
This seems to a common problem with Skype on Intrepid Ibex. I got the workaround from a thread on Ubuntu Forums.

We begin based on a tutorial by Howard Shane.

Since this is Ubuntu, we are assuming the USB device is already mounted and ready to go. However we can check by
$ lsusb
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 046d:0928 Logitech, Inc. Quickcam Express
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 045e:0084 Microsoft Corp. Basic Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

In my system, it shows the camera on the second line. Your camera should be detected too.

Once you are sure that your camera is up and running, you can install cheese to see if the cam works.

$ sudo aptitude -y install cheese
$ cheese

Start the Video playback and ensure that your camera is online.

Ok, now we only have to configure skype to startup differently.
$ sudo gedit /usr/local/bin/skype

Paste the following lines into the file
#!/bin/bash
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so /usr/bin/skype

Then make the file executable.
$ sudo chmod a+x /usr/local/bin/skype

Skype now works fine with video too. To test, open skype options and select the video section. Select the appropriate camera (there usually should be only one) and click the ‘test video’ button on the top right. If everything is ok, then the button will be replaced by the video.

Downloading Google Videos

I recently looked up a few videos by Randy Pausch, one was his ‘last lecture‘ and the other was on time management. The former was on Youtube and the other was on Google Videos.

The Youtube video was easy to download with youtube-dl on my Linux Mint Distro, (for how to do this, look up this simple tutorial) but I was stuck on the Google Video. Google Video apparently doesn’t have any download link and is not popular enough for developer to have tools designed for it yet.

I tried ‘Flash Video Resources Downloader’ firefox extension, but it open up a website which says that the flv file is not accessible. I finally had to give up on that and begin some frantic googling.

Jason Striegel at hackszine has made a cool script which seems to work excellent. I have the video downloading in the background at present. The file is 171 mb and the download speed is only like 15 kBps, so it is gonna take some time.

I just need to create a bookmark containing a certain javascript code. In Firefox, I cannot add a bookmark with the address entered manually, so i just bookmarked a page at random, then went to Bookmarks|Organize Bookmarks, selected the previously created bookmark and edited its properties to point to the script he mentions.

This is the exact command for Google Video
javascript:window.open(unescape(document.getElementById('VideoPlayback').src.match(/videoUrl=([^$)]*)/)[1]));

And this is for Youtube
javascript:window.open('http://youtube.com/get_video?video_id='+window.location.href.split('?')[1].match(/v=([^(&|$)]*)/)[1]+'&t='+document.getElementById('movie_player').src.match(/t=([^(&|$)]*)/)[1]);

On a side note, the file downloaded will be ‘get-video.flv’ at your default download location or wherever you ask it to download. I can foresee some problems with multiple video downloads in some situations, but firefox just appends a (#) at the end of the video so generally it should not be a problem.