
webKam
Source (link to git-repo or to original if based on someone elses unmodified work):
Available as/for:
Description:webKam requires:
QtRuby(KDE 4.2 or trunk)
GStramer Ruby bindings
Gstreamer plugins good
video4linux compatible webcam
0.3.2
*Brand new Browse tool-menu-button
*Photo directory created when needed - for real this time
0.3.1
*Photo directory created when needed
*Added Flash Effect
*Added shutter sound notification
0.3
Completely new code base. Now webKam is written in Ruby and it uses Qt/KDE for GUI and GStreamer as multimedia engine.
Ratings & Comments
70 Comments
- path bug, if I install into prefix /usr/local, program will not work, as script /bin/webkam is calling binary is wrong. - requirements bug, program needs ruby-glib2, which is not mentioned in requirements. Now a showstopper: I got the program to work, but my webcam is not recognized. Kernel log says its connected: "uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:332d) input: Vega USB 2.0 Camera. as /devices/pci0000:00/0000:00:12.2/usb1/1-5/1-5.3/1-5.3.3/1-5.3.3:1.0/input/input12" but, webkam cannot find it. I use Gentoo x64, KDE 4.7.3 and kernel 3.1.2. Probably, its because kernel has changed meanwhile; perhaps because of v4l1 was depricated and replaced with v4l2. Im not ruby programmer, so if anyone has same issue and several minutes, please contribute how to solve this.. Its just tendency,.. that everytime developer is missing, programs go crap themself. :/
Hi, I get this error message when I try to start: /usr/lib64/ruby/site_ruby/1.8/x86_64-linux/qtruby4.so: libsmokebase.so.3: cannot open shared object file: No such file or directory - /usr/lib64/ruby/site_ruby/1.8/x86_64-linux/qtruby4.so (LoadError) from /usr/lib64/ruby/site_ruby/1.8/Qt.rb:1 from ./webkam_app.rb:1:in `require' from ./webkam_app.rb:1 from main.rb:1:in `require' from main.rb:1 I don't get what is wrong, all deps are installed. I use webKam from opensuse repo. Thanks in advance for your reply :)
Lucky webKam started after installing some updates on my openSUSE (zypper up). Now I am able to see the app's window, but it does not display video from my webcam (Logitech C270). Other apps like Skype or Kamoso display it properly. When started in Konsole I tried to do a photo (with still no video displayed), but then webKam crashed. Here's what it threw out in terminal: QPixmap::handle(): Pixmap is not an X11 class pixmap libv4lconvert: warning more framesizes then I can handle! libv4lconvert: warning more framesizes then I can handle! libv4l2: error setting pixformat: Urządzenie lub zasoby zajęte ./webcam_video_stream.rb:175:in `save_frame': undefined method `data' for nil:NilClass (NoMethodError) from ./photo_page.rb:103:in `save_photo' from ./photo_page.rb:97:in `loop' from ./photo_page.rb:97:in `save_photo' from ./photo_page.rb:63:in `initialize' from /usr/lib64/ruby/site_ruby/1.8/Qt/qtruby4.rb:2427:in `call' from /usr/lib64/ruby/site_ruby/1.8/Qt/qtruby4.rb:2427:in `invoke' from /usr/lib64/ruby/site_ruby/1.8/Qt/qtruby4.rb:469:in `qt_metacall' from /usr/lib64/ruby/site_ruby/1.8/Qt/qtruby4.rb:469:in `method_missing' from /usr/lib64/ruby/site_ruby/1.8/Qt/qtruby4.rb:469:in `exec' from ./webkam_app.rb:45:in `run' from main.rb:3 ./webkam_app.rb: line 47 GLib-GObject-WARNING **:instance of invalid non-instantiatable type `(null)' ./webkam_app.rb: line 47 GLib-GObject-CRITICAL **:g_signal_handler_is_connected: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed Greets :)
HI For now in my opinion WebKam is one of the best software for webcams for KDE4, but still is missing one of the most important thing - RECORDING video? When can we do it via Webkam ?? PS. sorry for my english.
Hi. I have just installed the deb package, downloadable here. Program does not start under Kubuntu 10.10 x64 with: "/usr/bin/webkam: 5: ruby: not found "
What exactly does this program do? Does it just take still shots from the webcam, or can one record video as well? The description lacks any information and the screenshots suggest that video recordings cannot be made.
Hi i have Kubuntu 9.10 KDE 4.3.4 and a integrated webcam. when starting webKam this is the message i get ins console: libv4l2: error setting pixformat: Device or resource busy ./webcam_video_stream.rb:162: [BUG] Segmentation fault ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] Aborted ---------- cheese, kopete and kamoso all work with no problems..
$ webkam /usr/bin/webkam: line 3: cd: /usr/bin/webkam/../../lib/webkam/: Not a directory ruby: No such file or directory -- main.rb (LoadError)
Same problem here. Debian SID and KDE 4.2
Hi, I made it work by modifying the /usr/bin/webkam script like this: #!/bin/sh scriptdir=`dirname "$0"` cd $scriptdir/../lib/webkam/ ruby main.rb I Don't know if it works for everyone, but you could give it a try ;)
Hello, Thank you for the tip but it didn't work. Here is the new output : ------------------ ./webcam_video_stream.rb:154:in `<=>': undefined method `<=>' for [320,640]:Gst::IntRange (NoMethodError) from ./webcam_video_stream.rb:154:in `sort!' from ./webcam_video_stream.rb:154:in `find_resolutions' from ./webcam_video_stream.rb:22:in `initialize' from ./webcam_video_stream.rb:216:in `new' from ./webcam_video_stream.rb:216:in `instance' from ./settings.rb:70:in `webcam' from ./webcam_video_stream.rb:211:in `instance' from ./main_window.rb:32:in `showEvent' from ./webkam_app.rb:43:in `method_missing' from ./webkam_app.rb:43:in `run' from main.rb:3 (ruby:7997): GStreamer-CRITICAL **: Trying to dispose element v4l2src0, but it is not in the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. GThread-ERROR **: file /build/buildd-glib2.0_2.20.4-1-i386-6KfM1O/glib2.0-2.20.4/gthread/gthread-posix.c: line 171 (g_mutex_free_posix_impl): error 'Périphérique ou ressource occupé' during 'pthread_mutex_destroy ((pthread_mutex_t *) mutex)' aborting... /usr/bin/webkam: line 7: 7997 Abandon ruby main.rb ------------------ Line 7 is the "ruby main.rb" line I don't know what is wrong.
Hi, before the fix, the program did not even start, while it is actually starting now, so the fix I proposed is probably working also for you. It seems that your problem is now that your webcam is already used by some other applications, or you have some driver or library problems. In the first case, you could try to close all the other applications that could be using the webcam; otherwise, I am sorry but I don't know how to debug this :( Probably the author of the application or other users can give you some advice...
looks like the path to main.rb is getting mixed up. do this: su -c 'vim /usr/bin/webkam' and edit it to read: ----------- #!/bin/sh cd /usr/lib/webkam/ ruby main.rb ---------- Then it will launch and work as expected.looks like the path to main.rb is getting mixed up. do this: su -c 'vim /usr/bin/webkam' and edit it to read: ----------- #!/bin/sh cd /usr/lib/webkam/ ruby main.rb ---------- Then it will launch and work as expected. You can verify the path on your own system by investigating where the /path/to/lib/webkam is. That's where main.rb is located,which is what /usr/bin/webkam is attempting to point to.
desktop:~$ webkam ./webcam_video_stream.rb:62:in `create_video_display_bin': undefined method `set_xwindow_id_with_buswatch' for nil:NilClass (NoMethodError) from ./webcam_video_stream.rb:49:in `each' from ./webcam_video_stream.rb:49:in `create_video_display_bin' from ./webcam_video_stream.rb:88:in `create_pipeline' from ./webcam_video_stream.rb:17:in `initialize' from ./webcam_video_stream.rb:216:in `new' from ./webcam_video_stream.rb:216:in `instance' from ./settings.rb:70:in `webcam' from ./webcam_video_stream.rb:211:in `instance' from ./main_window.rb:32:in `showEvent' from ./webkam_app.rb:43:in `method_missing' from ./webkam_app.rb:43:in `run' from main.rb:3 ./webkam_app.rb:47: [BUG] Segmentation fault ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux] Aborted ===================== Thanks for your work!
i'm having it too on jaunty
Hi, kubuntu 9.04, I have this error message: ./webcam_video_stream.rb:154:in `<=>': undefined method `<=>' for [176,1280]:Gst::IntRange (NoMethodError) from ./webcam_video_stream.rb:154:in `sort!' from ./webcam_video_stream.rb:154:in `find_resolutions' from ./webcam_video_stream.rb:22:in `initialize' from ./webcam_video_stream.rb:216:in `new' from ./webcam_video_stream.rb:216:in `instance' from ./settings.rb:70:in `webcam' from ./webcam_video_stream.rb:211:in `instance' from ./main_window.rb:32:in `showEvent' from ./webkam_app.rb:43:in `method_missing' from ./webkam_app.rb:43:in `run' from main.rb:3 (main.rb:20695): GStreamer-CRITICAL **: Trying to dispose element v4l2src0, but it is not in the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. GThread-ERROR **: file /build/buildd/glib2.0-2.20.1/gthread/gthread-posix.c: line 171 (g_mutex_free_posix_impl): error 'Device or resource busy' during 'pthread_mutex_destroy ((pthread_mutex_t *) mutex)' aborting... Aborted Any idea?
Same here, Kubuntu 9.04 using KDE 4.3 Beta 2
same error on Mandriva 2009.1 / KDE 4.2.4
The app starts, takes photos, stores the photos properly, the video is functioning properly, the webcam starts, but after an interval ranging from 1 minute to several minutes, the app abends with no message, error or anything. The app will restart without a problem, but then after several minutes will abend again. How can I troubleshoot this to determine the root cause?
I forgot to add the terminal results for the above post: (main.rb:6125): GStreamer-CRITICAL **: gst_caps_ref: assertion `GST_CAPS_REFCOUNT_VALUE (caps) > 0' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_ref: assertion `GST_CAPS_REFCOUNT_VALUE (caps) > 0' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_ref: assertion `GST_CAPS_REFCOUNT_VALUE (caps) > 0' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_fixed: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_pad_set_caps: assertion `caps == NULL || gst_caps_is_fixed (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_fixed: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_empty: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_any: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_empty: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_any: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_copy: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_fixed: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_empty: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_any: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_empty: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_is_any: assertion `GST_IS_CAPS (caps)' failed (main.rb:6125): GStreamer-CRITICAL **: gst_caps_copy: assertion `GST_IS_CAPS (caps)' failed /usr/lib/ruby/1.8/Qt/qtruby4.rb:820: [BUG] Segmentation fault ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] Aborted
I had few suggestion to make this even more popular application. Extend it's use as video diary. Set it to allow user to use microphone on the webcams (other sources as well) and the video/snapshot feature. I believe there is people who would like to record diaries on themselfs on it. Like just taking a snapshot and then recording the voice-only. The laptop users would like that to make recordings of easily and then just get them automatically stored to harddrive wanted directory by date and short explanation with nepomuk tags/rating etc. I have webcam and our family has liked to do these, because you can then easily store them to drive and when the DVD-size is reached or wanted period is gone trought, the DVD gets burned and stored to shelf. This way diaries comes more personal when you can leave messages on them by sound-only / sound+snapshot / sound+video combinations. We have done these now trought kdenlive but it is too massive application for it and small, simple application would be hit the star! ;-)
is it avaiable in debian repositories?
You should look happier on the pictures you know ^^ ! It's a good app, nice and easy. Do you plan on making it able to record video (taking sound also) ?
Hi Nice app, though I cant test it a lot because it doesn't seem to like my webcam at all. No picture at all in webKam, but it works perfectly fine in Kopete. It's a built in camera on a samsung nc10 netbook. I know this netbook still isn't supported very well in linux, but the webcam always worked fine in cheese.
Kubuntu jaunty here, webkam it's simply perfect :) Thanks !