Guvcview aims to provide a simple GTK interface for capturing and viewing video from devices supported by the Linux UVC driver, although it should also work with any v4l2 compatible device.
The project is based on luvcview for video rendering, but all controls are build using a GTK2 interface.
Guvcview (since version 0.9.9) has a control only window, (from console: guvcview --control_only
, --control_panel
in newer versions), this allows image control on other apps, like ekiga, cheese, mplayer, skype...
Audio.
Guvcview audio support is based on the portaudio library, up until version 0.9.3 the blocking API was used for audio capture, since version 0.9.4 the callback method is used instead, this provides better performance, it is also the preferred method for the portaudio API.
All interfaces (ALSA, OSD, JACK, ...) supported by portaudio should be available in guvcview. Just make sure portaudio was compiled with the desired interfaces enabled.
UVC Dynamic controls.
The Linux UVC driver has an implementation for extension controls (these are vendor specific controls and are supported in the UVC spec.), they are called dynamic controls since they must be dynamically loaded into the driver.
Until today only logitech has supplied specs for their UVC webcam extension controls, these are supported by guvcview.
In new driver revisions admin rights are needed in order to add these controls to the driver, so there are basically two solutions:
start guvcview as root (using sudo
) at least once per session, since version 1.2.0 you can do this with the option --add_ctrls
avoiding the need to fully launch guvcview
install libwebcam this software has a udev script that should add the necessary controls to your logitech camera.
Install Guvcview to Ubuntu 12.04 via ppa
sudo add-apt-repository ppa:pj-assis/ppa
sudo apt-get update
sudo apt-get install guvcview
Testing a couple of Webcam tools because of the slowness of Cheese (Very slow indeed) as suggested by Geppettvs I have the following:
GUCView (As suggested by Geppettvs) which installs and works the following way:
The following line will add the PPA for this app, update the repositories and install the app:
sudo add-apt-repository ppa:pj-assis/ppa -y && sudo apt-get update && sudo apt-get install guvcview
After which you can run the app with the command guvcview. Be warned that if your webcam is not in /dev/video0 it will throw a warning. You will need to change it to where your webcam is, for example:
guvcview -d /dev/video1
- In my case it was in video1, but it can be in video2, video3... Depends on what USB port it was connected to. guvcview does not automatically detect the webcam if it is connected in another one that is not video0.
This offers many options compared to Cheese:
Camorama - Much faster than guvcview and obviously MUCH more than Cheese
It has the same problem as guvcview in regards to finding the webcam device. You need to run it from terminal like this: camorama -d /dev/video1
if your webcam is not in video0.
There is also Kamerka but since it needed to download a lot of KDE libraries I tested this one in another Pc with Kubuntu and works excellent.
Best Answer
There is NO option to edit fps in cheese. Cheese just streams direct video input from your webcam.
You mention slow fps during recording, but I'm assuming that the video displayed in cheese even when not recording has the same slow fps, right? In effect, the fps you see before recording is what you are recording?
If so, I imagine you are recording in your room? which means low lighting.
If fps does improve outside, it means that webcam driver is running with an auto-exposure setting ON. (That means the fps depends directly on the webcam exposure. More light more fps. Less light less fps.)
Some webcam drivers might have an option to turn this setting off.
To check : Install the
v4l2ucp
program. Once installed, you can start the program from the menu itemSystem > Preferences > Video4Linux Control Panel
. Check if you have the options for Automatic Gain and Exposure (a checkbox) , Exposure , Gain. If you have the options, then you can turn it off and adjust the options as suitable.If you do not have the options, it means your webcam driver does not yet support the auto-exposure options.
If the webcam has options to toggle Auto-Exposure when you boot into Windows, then you're in luck. The option can be included in Linux kernel for your webcam.
Check if there is an existing bug requesting the feature: Search in Product: v4l-dvb
If not, File a bug in the kernel. Product: v4l-dvb , Select Component: webcam
Bug is an enhancement feature request and should include following info: