Opened 5 years ago

Closed 4 years ago

#18 closed defect (fixed)

Webcam setup crashes qutecom

Reported by: micu Owned by: vadim
Priority: critical Milestone:
Component: misc Version:
Keywords: webcam, crash Cc:

Description

Thanks a lot for developing Qutecom. I'd really love to use it with my webcam (046d:09a4: Logitech Quickcam E 3500).

But when I select my webcam, which is found correctly, and I select "Webcam preview", it ouputs

(warn) 17:26:49 [Common] virtual WebcamErrorCode? V4L2WebcamDriver::setPalette(pixosi): Failed settings pixel format.

I can see myself for about 1-3 seconds, then qutecom crashes and it says

qutecom: ../../src/xcb_lock.c:33: _XCBUnlockDisplay: Assertion `xcb_get_request_sent(dpy->xcb->connection) == dpy->request' failed.

I used this
<http://repo.apokryph.org/ubuntu/binary/qutecom_2.2-1_i686.deb>
version on kubuntu hardy (8.04), but a friend of mine tried it yesterday with a self-compiled version out of the the hg sources on intrepid, the same cam, and got the same error.

Change History (5)

comment:1 in reply to: ↑ description Changed 5 years ago by micu

Okay, this time I tried with rev 221 from the sources. Here is the backtrace. Is there a way I can help you?

michi@denkbrett:/tmp/qutecom-2.2/build/debug$ gdb qutecom
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run
Starting program: /tmp/qutecom-2.2/build/debug/qutecom
[Thread debugging using libthread_db enabled]
[New Thread 0xb5a9e710 (LWP 12989)]
[New Thread 0xb5a9db90 (LWP 12992)]
[New Thread 0xb529cb90 (LWP 12993)]
Qt: gdb: -nograb added to command-line options.

Use the -dograb option to enforce grabbing.

[New Thread 0xb4882b90 (LWP 12994)]
[New Thread 0xb3f52b90 (LWP 12997)]
(info) 21:38:12 [Common] void QtLanguage::loadLanguageFromConfig(): no Qt translation available for locale 'en'
[New Thread 0xb34ffb90 (LWP 13000)]
[New Thread 0xb2b88b90 (LWP 13001)]
[New Thread 0xb2387b90 (LWP 13002)]
[New Thread 0xb1adcb90 (LWP 13003)]
[New Thread 0xb12dbb90 (LWP 13004)]
[Thread 0xb2b88b90 (LWP 13001) exited]
[Thread 0xb12dbb90 (LWP 13004) exited]
(warn) 21:38:28 [Common] virtual WebcamErrorCode? V4L2WebcamDriver::setPalette(pixosi): Failed settings pixel format.
[New Thread 0xaf3ffb90 (LWP 13031)]
qutecom: ../../src/xcb_lock.c:77: _XGetXCBBuffer: Assertion `((int) ((xcb_req) - (dpy->request)) >= 0)' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb5a9e710 (LWP 12989)]
0xb7f50410 in kernel_vsyscall ()
(gdb) bt
#0 0xb7f50410 in
kernel_vsyscall ()
#1 0xb63c9085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb63caa01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb63c210e in assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4 0xb62f6324 in _XGetXCBBuffer () from /usr/lib/libX11.so.6
#5 0xb62f75f3 in _XSend () from /usr/lib/libX11.so.6
#6 0xb62e3e10 in ?? () from /usr/lib/libX11.so.6
#7 0xb62e2f8a in ?? () from /usr/lib/libX11.so.6
#8 0xb62e403f in XPutImage () from /usr/lib/libX11.so.6
#9 0xb6bb769e in QPixmap::fromImage () from /usr/lib/libQtGui.so.4
#10 0xb6be07ba in QPaintEngine::drawImage () from /usr/lib/libQtGui.so.4
#11 0xb6c6f049 in ?? () from /usr/lib/libQtGui.so.4
#12 0xb6be9e83 in ?? () from /usr/lib/libQtGui.so.4
#13 0xb6bebd0e in QPainter::drawRects () from /usr/lib/libQtGui.so.4
#14 0xb6bec051 in QPainter::fillRect () from /usr/lib/libQtGui.so.4
#15 0xb6d801d4 in ?? () from /usr/lib/libQtGui.so.4
#16 0xb6d92a3f in ?? () from /usr/lib/libQtGui.so.4
#17 0xb6b4de39 in QWidgetPrivate::paintBackground () from /usr/lib/libQtGui.so.4
#18 0xb6c83d9c in QWidgetPrivate::drawWidget () from /usr/lib/libQtGui.so.4
#19 0xb6c84841 in ?? () from /usr/lib/libQtGui.so.4
#20 0xb6c84cfd in ?? () from /usr/lib/libQtGui.so.4
#21 0xb6b544b3 in QWidget::event () from /usr/lib/libQtGui.so.4
#22 0xb6e036ff in QAbstractButton::event () from /usr/lib/libQtGui.so.4
#23 0xb6e180c6 in QCheckBox::event () from /usr/lib/libQtGui.so.4
#24 0xb6b0a28d in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#25 0xb6b0dc4c in QApplication::notify () from /usr/lib/libQtGui.so.4
#26 0xb71e0c1b in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#27 0xb71e2505 in QCoreApplicationPrivate::sendPostedEvents () from /usr/lib/libQtCore.so.4
#28 0xb7208fcf in QEventDispatcherUNIX::processEvents () from /usr/lib/libQtCore.so.4
#29 0xb6b8c013 in ?? () from /usr/lib/libQtGui.so.4
#30 0xb71dffb2 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#31 0xb71e00bc in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#32 0xb71e288a in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#33 0xb6b096e7 in QApplication::exec () from /usr/lib/libQtGui.so.4
#34 0x0863c085 in QtFactory::exec (this=0x8ba2e18) at /tmp/qutecom-2.2/wengophone/src/presentation/qt/QtFactory.cpp:114
#35 0x08608957 in main (argc=1, argv=0xbf9136a4) at /tmp/qutecom-2.2/wengophone/src/presentation/main.cpp:344
(gdb)

comment:2 follow-up: Changed 5 years ago by micu

Okay. Maybe this has to do with the strange format my cam uses. My cam works fine with Skype, it works with Kopete and with a new version of Ekiga.

It doesn't work with SIP communicator!
It says:

[java] Able to open path: /dev/video0

[java] opened v4l2 device
[java] Found UVC Camera (046d:09a4) card with uvcvideo v4l2 driver
[java] discover_inputs()
[java] Found sources: 1
[java] 0 - Camera 1 (2)
[java] unknown or unsupported format: 1448695129

I googled a while and found out that at least according to http://doc.trolltech.com/qtextended4.4/qtopiacamera.html, this number means
QtopiaCamera::UYVY 1498831189 YUV 4:2:2

Can this be the reason. Do you have any idea?

comment:3 in reply to: ↑ 2 Changed 5 years ago by micu

format: 1448695129

at least according to http://doc.trolltech.com/qtextended4.4/qtopiacamera.html, this number means
QtopiaCamera::UYVY 1498831189 YUV 4:2:2

AAhh, sorry, posted wrong line:

QtopiaCamera::YUYV 1448695129 YUV 4:2:2

comment:4 Changed 4 years ago by cavedon

I have the same problem on Debian sid, both 32-bit and 64-bit.

My webcam is
uvcvideo: Found UVC 1.00 device HP Webcam (04f2:b016)
and was working with wengophone-2.2

Here you can find the backtrace for all the threads
http://allievi.sssup.it/cavedon/qutecom-video-bt.log

Note that that thread #1 is running code inside libxcb.so.
Maybe a race condition?

Here is the link to the message I posted to the ML: http://lists.qutecom.org/pipermail/qutecom-dev/2008-December/000601.html

comment:5 Changed 4 years ago by vadim

  • Resolution set to fixed
  • Status changed from new to closed

It seems to be a Qt Bug.
Multithreaded programs should call XInitThreads at init time

see: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=495498

Note: See TracTickets for help on using tickets.