What is Kamoso

A lot of people has been asking me (or complaining) what is Kamoso and what we intend to do with it, so I’ve decided to use a blog post to explain it.

Short Description:
Kamoso is an application for taking Pictures and Videos using any webcam.

Long Description:
Kamoso is an application between two worlds, “Multimedia” and “Toys”. While its main propose may be seen as just “Take Pictures” and “Take Videos”, our plan goes beyond that: we are planning to add a bunch of effects that will allow to the user to play with the webcam, we want it to be fun, in the end. All of these is followed by a tightly integration with the Web 2.0, by adding export features to the most common Web 2.0 services, such YouTube, Facebook, twitpic…

Current 2.0 (aka Velázquez):
  • Make Kamoso rock solid
  • We moved to QtGStreamer (part of the last point)
  • Improve interface usability
3.0 (Future):

  • Effects: investigate what GStreamer offers and try to get the best out of it
  • Simplify Web 2.0 integration: make it easier to add support for new services
  • Interface candy: make the interface more appealing to the eye, properly integrate the effects

Screenshoots:

Kamoso 1

Videos:

Small review of Kamoso 2.0
Pre 2.0

Help needed:

  • Semaphore designs (What happens from when you click at the shot button, and when the picture is actually taken)
  • Mockups, ideas, whatever!
  • Markus

    Why do you use GStreamer instead of the actually cross-platform Phonon capture API?

    • http://www.afiestas.org afiestas

      Because today Phonon doesn’t support what we need, and because we want to guarantee the same experience in all platforms we support (which atm is only linux).

  • http://www.linux-wizard.net FACORAT Fabrice
    • http://www.afiestas.org afiestas

      Thanks for the icon, we’ll use the Oxygen version in alpha2

      About Cheese, we keep a good track of it, and by sure we’ll try to catchup in the 3.0 version.

      Thanks for the links!

  • Blablabla

    For me, Kamoso is an application that seems like a never-compilable application under Gentoo:

    – <<>>
    Build type Gentoo
    Install path /usr
    Compiler flags:
    C -march=prescott -O2 -pipe -fomit-frame-pointer -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common
    C++ -march=prescott -O2 -pipe -fomit-frame-pointer -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common -Werror=return-type -Woverloaded-virtual -fno-threadsafe-statics -fvisibility=hidden -fvisibility-inlines-hidden
    Linker flags:
    Executable -Wl,–enable-new-dtags -Wl,-O1 -Wl,–as-needed
    Module -Wl,–enable-new-dtags -Wl,–fatal-warnings -Wl,–no-undefined -lc -Wl,-O1 -Wl,–as-needed
    Shared -Wl,–enable-new-dtags -Wl,–fatal-warnings -Wl,–no-undefined -lc -Wl,-O1 -Wl,–as-needed

    – Configuring incomplete, errors occurred!
    * ERROR: media-video/kamoso-9999 failed:
    * cmake failed
    *
    * Call stack:
    * ebuild.sh, line 56: Called src_configure
    * environment, line 4227: Called kde4-base_src_configure
    * environment, line 3330: Called cmake-utils_src_configure
    * environment, line 1261: Called _execute_optionaly ‘src_configure’
    * environment, line 643: Called enable_cmake-utils_src_configure
    * environment, line 1695: Called die
    * The specific snippet of code:
    * “${CMAKE_BINARY}” “${cmakeargs[@]}” “${CMAKE_USE_DIR}” || die “cmake failed”;
    *
    * If you need support, post the output of ‘emerge –info =media-video/kamoso-9999′,
    * the complete build log and the output of ‘emerge -pqv =media-video/kamoso-9999′.
    * This ebuild used the following eclasses from overlays:
    * /var/lib/layman/kde/eclass/kde4-base.eclass
    * /var/lib/layman/kde/eclass/kde4-functions.eclass
    * /var/lib/layman/kde/eclass/git-2.eclass
    * This ebuild is from an overlay named ‘kde’: ‘/var/lib/layman/kde/’
    * The complete build log is located at ‘/var/tmp/portage/media-video/kamoso-9999/temp/build.log’.
    * The ebuild environment file is located at ‘/var/tmp/portage/media-video/kamoso-9999/temp/environment’.
    * S: ‘/var/tmp/portage/media-video/kamoso-9999/work/kamoso-9999′

    • http://www.afiestas.org afiestas

      Mmm, do you have QtGstreamer?

  • nick

    Hi, nice app, but, last time i tried it, i couldn’t resize the window less than the webcam resolution, making it unusable in a small netbook. Gnome’s Cheese has this ability.

  • flows

    Idea: What about integrating it into system settings, so photos taken using kamoso can be used directly as a user account image.

  • http://jancoding.wordpress.com JanKusanagi

    Hi!

    Maybe the “traffic light” could be changed to look a little more realistic, like the real horizontal traffic lights:
    http://jancoding.files.wordpress.com/2011/02/horizontal-traffic-light-3.jpg
    http://jancoding.files.wordpress.com/2011/02/horizontal-traffic-light-2.jpg
    http://jancoding.files.wordpress.com/2011/02/horizontal-traffic-light-1.jpg

    Probably the Oxygen team could help with this :)

    Or maybe this could be replaced by other kind of signals, like a “ready… go! with-a-flag” signal used in races:
    http://jancoding.files.wordpress.com/2011/02/flag-start-signal.jpg

    Or a gunfire signal:
    http://jancoding.files.wordpress.com/2011/02/gun-start-signal.jpg

    It could also be a face, getting ready to smile and say “cheese!” (translatable label, of course) in each of the 3 frames.

    But still, the traffic light is probably the best for this kind of thing. Does it have sounds in v2.0?
    Like “ding… ding…. ding…. diiiiiiing!” That could help too, in case you can’t/don’t want to be looking at the screen.

    Great job, keep it up :)
    A lot of people will love those (future) effects and funny things.

  • http://gkiagia.wordpress.com George Kiagiadakis

    @Markus
    Fwiw, GStreamer is also cross-platform. With a few minor modifications I think kamoso would work fine on all platforms where video capture is supported (currently these are only linux, windows and mac afaik).

  • Reza Shah

    i have tried old Qtgstreamer with effect from Gstreamer in my never ending plasmoid :).
    And i believe kamoso can utilize Gstreamer’s effect better.

    • http://www.afiestas.org afiestas

      Yes, for 3.0 we’ll use QtGstreamer in the right way ™, we’re thinking on sharing the pipeline effects with Cheese (they already .desktop files defining the pipeline) so we can unify efforts.

      ATM 2.0 is a version where we want to have something that just work to take pictures and record video, since is something that KDE has been lacking for a lot time now.

  • zayed

    I hope it works fine in small screen (i.e netbook ).

    • http://www.afiestas.org afiestas

      I will work on that.

  • http://syvolc.briolet.fr/ Syvolc

    Hello,

    why don’t use KIPI Plugins to export pictures ?

    Website : http://www.kipi-plugins.org/
    Exemple : http://agateau.files.wordpress.com/2010/11/20101120-share-menu21.png

    • http://www.afiestas.org afiestas

      We do use kipi-plugins, but not all of them.

      We would like to whitelist the ones interesting for Kamoso, some of them are a little bit cluttered allowing a lot of advanced options that we don’t really want.

      BTW, the Youtube Kamoso export is also a kipi-plugin.

  • http://gnuski.blogspot.com/ lefty.crupps

    How about the ability to stream over a network, in such a format that VLC and Kaffeine can watch? Those can both act as clients, and maybe both as servers (VLC for sure) if you need some implementation ideas.

    Looks like a cool app, I’ll have to keep an eye on it! Well done.

    • http://www.afiestas.org afiestas

      That would be nice, maybe something to do with a plugin since is not the main propose of the application.

      Thanks for the idea!

  • Pingback: Kamoso, el Cheese para KDE | MuyLinux

  • fasd

    you need to tweak the layout e.g make things align vertically, now semaphore is way to much to the left and miniatures should have width of the video capture (now is wider)

    PS semaphore is ugly as hell!

    please look at this maybe it will help you:

    http://img541.imageshack.us/img541/4849/14981637.jpg
    http://img593.imageshack.us/img593/4206/79191884.jpg

    • http://www.afiestas.org afiestas

      Some of these issues are already solved ! glad to see that we think more or less the same.

      We’ll work on the rest and thanks for the pictures.

  • nucleo

    Hi,

    kamoso-2.0 alpha2 crashes when I try to open settings if camera is not present

    http://pastebin.com/raw.php?i=M1mtPAMD

  • Marco Ballesio

    Have you considered using the CV plugins to get something like this?

    http://www.youtube.com/watch?v=5DGPQcr3GyQ&feature=mfu_in_order&list=UL

  • Blablabla

    I can’t still use Kamoso, I think that something is wrong with Qt-Gstreamer. Always that I try to run kamoso, I get:

    ASSERT: “ptr.m_class” in file /var/tmp/portage/media-sound/qt-gstreamer-0.10.1/work/qt-gstreamer-0.10.1/src/QGst/Ui/../../QGlib/refpointer.h, line 332

    I’m using Qt-Gstreamer-0.10.0 and Kamoso from Git. Both of them are installed with Portage. I tried installing Qt-Gstreamer from Git but I get the same problem…

    • http://www.afiestas.org afiestas

      I’m not sure what’s the problem :/ can you please fill a bug at bugs.kde.org ?

  • Blablabla

    @afiestas
    Sorry for the late comment, I’ve just did the report: https://bugs.kde.org/post_bug.cgi. Thank you so much, I will hope for fixing. If you need more information just ask me, I put all information I could :)

  • http://elhilal.blogspot.com mnajem

    @Blablabla

    how do you get portage for kamoso? from overlay?
    how to emerge then?

  • Doug

    Please, somebody, email me a WRITTEN instruction for use of Kamoso. I really need to know how to
    deal with video: not only how to start it, but more important, how to end it, and how to get the sound from
    the camera microphone to record with the video.
    –Doug [email protected]

  • Matt

    Looks like https://github.com/hipersayanX/Webcamoid#readme is what you try to achieve. It already supports effects and uses the same backend.

  • Pingback: Kamoso, para grabar clases con la webcam desde Linux « Metauniversidad

  • maurobit

    Hi Alex, how i can to hide the pictures viewer?, thanks you so much. Something like:

  • maurobit
  • http://twshuttle.com/services Mobile Website

    if you need a proffesional Mobile Website or web design check out our services here at

  • http://[email protected] anxova

    Hola, tengo Kamoso desde hace tiempo, aunque siempre lo he usado desde Mint KDE o Kubuntu. Desde hace unos meses uso Chakra, e instalé Kamoso. Pero repentinamente ha dejado de funcionar, supongo que por alguna actualización de software. He probado a desinstalar y volver a instalar Kamoso pero tampoco. El caso es que el programa arranca, pero no enciende la cámara del portátil. Cuando quiero hacer una foto o sacar un vídeo Kamoso se cierra (por ejemplo, después de hacer la cuenta atrás al hacer una foto). Tiene toda la pinta de que no “conecta” correctamente con la cámara. He buscado en foros pero por ahora no encuentro una solución al problema.

    El portátil es un Sony Vaio VGN-FZ21Z pero tengo instalado el driver y sé que funciona bien porque desde otros programas KDE puedo utilizar la cámara (por ejemplo, desde Gwenview usando KIPI plugins).

    El error que me da es este:
    “Application: Kamoso (kamoso), signal: Segmentation fault
    Using host libthread_db library “/lib/libthread_db.so.1″.
    [Current thread is 1 (Thread 0x7f82a4a4e7c0 (LWP 3296))]

    Thread 2 (Thread 0x7f828e532700 (LWP 3297)):
    #0 0x00007f82a070196d in poll () from /lib/libc.so.6
    #1 0x00007f829d28a644 in ?? () from /usr/lib/libglib-2.0.so.0
    #2 0x00007f829d28a764 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
    #3 0x00007f82a14d0e26 in QEventDispatcherGlib::processEvents(QFlags) () from /usr/lib/libQtCore.so.4
    #4 0x00007f82a14a2f4f in QEventLoop::processEvents(QFlags) () from /usr/lib/libQtCore.so.4
    #5 0x00007f82a14a3245 in QEventLoop::exec(QFlags) () from /usr/lib/libQtCore.so.4
    #6 0x00007f82a13a264f in QThread::exec() () from /usr/lib/libQtCore.so.4
    #7 0x00007f82a1484893 in ?? () from /usr/lib/libQtCore.so.4
    #8 0x00007f82a13a4c8f in ?? () from /usr/lib/libQtCore.so.4
    #9 0x00007f82a11140a2 in start_thread () from /lib/libpthread.so.0
    #10 0x00007f82a070a43d in clone () from /lib/libc.so.6

    Thread 1 (Thread 0x7f82a4a4e7c0 (LWP 3296)):
    [KCrash Handler]
    #5 0x00007f82a30e8d80 in QGst::Bin::getElementByName(char const*, QGst::Bin::RecursionType) const () from /usr/lib/libQtGStreamer-0.10.so.0
    #6 0×0000000000424118 in _start ()”

    Muchas gracias de antemano y felicidades por el programa.

    • http://www.afiestas.org afiestas

      Hola, podrías reportar un bug en http://bugs.kde.org ?

      Para arreglar el problema necesitaremos un poco más de información, qué distribución utilizas?
      Tambíen, ejecuta “kdebug-dialog”, activa cualquier cosa que se llame “kamoso”. Luego ejecuta Kamoso en una terminal y haz copy/paste del output.

      Gracias !

  • http://[email protected] anxova

    Estoy en Chakra Benz (2013.09) pero estoy comprobando que tengo algún paquete roto, por lo que tras intentar varias soluciones voy a cortar por lo sano y reinstalar. Si tras la reinstalación sigue dándome los mismos problemas entonces sí abriré un bug para este sistema y hardware. Muchas gracias.

  • http://[email protected] anxova

    Hola, efectivamente, tras la reinstalación el bug sigue apareciendo. Seguramente tenga algo que ver con las últimas actualizaciones de Chakra, pero desconozco cuándo dejó de funcionar. El caso es que con el sistema recién instalado, hace un mes más o menos, kamoso funcionaba correctamente.

    He abierto un nuevo bug en KDE Bugtracking System tras comprobar que ninguno de los abiertos correspondía exactamente a mi caso:

    https://bugs.kde.org/show_bug.cgi?id=329605

    Gracias por todo.

  • Pingback: Ehulearning – Kamoso, para grabar clases con la webcam desde Linux