uvcvideo module does not work with Dell XPS 12 webcam

Bug #1708922 reported by emk2203 on 2017-08-06
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
cheese (Ubuntu)
Medium
Unassigned
ffmpeg (Ubuntu)
Low
Unassigned
linux (Ubuntu)
Medium
Unassigned

Bug Description

uvcvideo: Found UVC 1.00 device Integrated Webcam (0bda:5716) from Dell XPS 12 laptop (9Q33 version) does not work properly for several versions of the kernel now.

guvcview nor cheese both show the issue, so it's the uvcvideo driver. Starting at 640x480 and higher resolutions, parts of lower half of video flickers / don't show image.

Error messages:
V4L2_CORE: (jpeg decoder) error while decoding frame
V4L2_CORE: (jpeg decoder) Ignoring empty buffer
V4L2_CORE: Error - Couldn't decode frame

VLC seems to use another driver AND DOES NOT SHOW issue.

ProblemType: Crash
DistroRelease: Ubuntu 17.10
Package: cheese 3.24.0-0ubuntu1
ProcVersionSignature: Ubuntu 4.11.0-10.15-generic 4.11.8
Uname: Linux 4.11.0-10-generic x86_64
ApportVersion: 2.20.6-0ubuntu4
Architecture: amd64
CrashCounter: 1
CurrentDesktop: GNOME
Date: Sun Aug 6 12:15:28 2017
ExecutablePath: /usr/bin/cheese
InstallationDate: Installed on 2017-04-01 (127 days ago)
InstallationMedia: Ubuntu 17.04 "Zesty Zapus" - Beta amd64 (20170331)
MachineType: Dell Inc. XPS 12-9Q33
ProcCmdline: cheese
ProcEnviron:
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=de_DE.UTF-8
 SHELL=/bin/bash
RelatedPackageVersions:
 cheese 3.24.0-0ubuntu1
 cheese-common 3.24.0-0ubuntu1
Signal: 8
SourcePackage: linux
StacktraceTop:
 cheese_camera_play () from /usr/lib/x86_64-linux-gnu/libcheese.so.8
 ?? ()
 g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
 ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
 g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
Title: cheese crashed with SIGFPE in cheese_camera_play()
UpgradeStatus: Upgraded to artful on 2017-06-08 (59 days ago)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
dmi.bios.date: 03/03/2015
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A08
dmi.board.name: XPS 12-9Q33
dmi.board.vendor: Dell Inc.
dmi.board.version: A08
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.chassis.version: Not Specified
dmi.modalias: dmi:bvnDellInc.:bvrA08:bd03/03/2015:svnDellInc.:pnXPS12-9Q33:pvrA08:rvnDellInc.:rnXPS12-9Q33:rvrA08:cvnDellInc.:ct8:cvrNotSpecified:
dmi.product.name: XPS 12-9Q33
dmi.product.version: A08
dmi.sys.vendor: Dell Inc.

emk2203 (emk2203) wrote :

StacktraceTop:
 cheese_camera_set_new_caps (camera=0x561943bee460) at libcheese/cheese-camera.c:772
 cheese_camera_play (camera=0x561943bee460) at libcheese/cheese-camera.c:789
 cheese_camera_switch_camera_device (camera=<optimized out>) at libcheese/cheese-camera.c:714
 cheese_preferences_dialog_on_source_change (combo=0x561944509330, self=0x561944588320) at src/cheese-preferences.c:601
 _cheese_preferences_dialog_on_source_change_gtk_combo_box_changed (_sender=0x561944509330, self=0x561944588320) at src/cheese-preferences.c:613

Changed in linux (Ubuntu):
importance: Undecided → Medium
tags: removed: need-amd64-retrace
Kai-Heng Feng (kaihengfeng) wrote :

Can you attach dmesg?

information type: Private → Public

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1708922

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
  • dmesg.log Edit (56.7 KiB, text/x-log; charset="US-ASCII"; name="dmesg.log")

Here it is:

2017-08-11 8:19 GMT+02:00 Kai-Heng Feng <email address hidden>:

> Can you attach dmesg?
>
> ** Information type changed from Private to Public
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1708922
>
> Title:
> uvcvideo module does not work with Dell XPS 12 webcam
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/
> 1708922/+subscriptions
>

Kai-Heng Feng (kaihengfeng) wrote :

Nothing suspicious. Why do you think it's a kernel bug?

emk2203 (emk2203) wrote :

I researched the issue some time ago. My webcam and several others like HP
are affected by a faulty driver for this webcam, which should be the kernel
uvcvideo module. This is the reason why it happens in several progs, like
guvcview and cheese.

vlc does it's own thing and does not rely on the kernel driver. This is the
reason why it's unaffected.

Am 12.08.2017 3:31 PM schrieb "Kai-Heng Feng" <email address hidden>:

> Nothing suspicious. Why do you think it's a kernel bug?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1708922
>
> Title:
> uvcvideo module does not work with Dell XPS 12 webcam
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/
> 1708922/+subscriptions
>

Kai-Heng Feng (kaihengfeng) wrote :

So which kernel module does VLC use?

Kai-Heng Feng (kaihengfeng) wrote :

Okay, the error happens in avcodec_send_packet() or avcodec_receive_frame().
Needs to find out what ffmpeg did here...

emk2203 (emk2203) wrote :
Download full text (5.0 KiB)

Here is my output from ffmpeg -f alsa -i default -f v4l2 -s 640x480 -i
/dev/video0 -acodec flac -vcodec libx264 output.mkv
ffmpeg version 3.3.3-1ubuntu1 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 6.4.0 (Ubuntu 6.4.0-2ubuntu1) 20170724
  configuration: --prefix=/usr --extra-version=1ubuntu1
--toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
--incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping
--enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa
--enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
--enable-libcdio --enable-libflite --enable-libfontconfig
--enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm
--enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt
--enable-libopus --enable-libpulse --enable-librubberband --enable-libshine
--enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh
--enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid
--enable-libzmq --enable-libzvbi --enable-omx --enable-openal
--enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883
--enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264
--enable-shared
  libavutil 55. 58.100 / 55. 58.100
  libavcodec 57. 89.100 / 57. 89.100
  libavformat 57. 71.100 / 57. 71.100
  libavdevice 57. 6.100 / 57. 6.100
  libavfilter 6. 82.100 / 6. 82.100
  libavresample 3. 5. 0 / 3. 5. 0
  libswscale 4. 6.100 / 4. 6.100
  libswresample 2. 7.100 / 2. 7.100
  libpostproc 54. 5.100 / 54. 5.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, alsa, from 'default':
  Duration: N/A, start: 1502723857.171781, bitrate: 1536 kb/s
    Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
[video4linux2,v4l2 @ 0x3ddca87320] Dequeued v4l2 buffer contains 32756
bytes, but 614400 were expected. Flags: 0x00012001.
Input #1, video4linux2,v4l2, from '/dev/video0':
  Duration: N/A, bitrate: 147456 kb/s
    Stream #1:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 640x480,
147456 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
Stream mapping:
  Stream #1:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
  Stream #0:0 -> #0:1 (pcm_s16le (native) -> flac (native))
Press [q] to stop, [?] for help
[video4linux2,v4l2 @ 0x3ddca87320] Dequeued v4l2 buffer contains 32534
bytes, but 614400 were expected. Flags: 0x00012001.
/dev/video0: Invalid data found when processing input
[alsa @ 0x3ddca6a520] Thread message queue blocking; consider raising the
thread_queue_size option (current value: 8)
frame= 0 fps=0.0 q=0.0 size= 0kB time=-577014:32:22.77 bitrate=
-0.0kbframe= 0 fps=0.0 q=0.0 size= 0kB time=-577014:32:22.77
bitrate= -0.0kbframe= 0 fps=0.0 q=0.0 size= 0kB
time=-577014:32:22.77 bitrate= -0.0kbframe= 0 fps=0.0 q=0.0 size=
 0kB time=-577014:32:22.77 bitrate= -0.0kbframe= 0 fps=0.0 q=0.0 size=
     0kB time=-577014:32:22.77 bitrate= -0.0kbframe= 0 fps=0.0 q=0.0
size= 0kB time=-577014:32:22.77 bitrate= -0.0kbframe= 0 fps=0.0
q=0.0 size= 0kB time=-577014:32:22.77 b...

Read more...

emk2203 (emk2203) wrote :

Further information: ffmpeg stops after it detects broken frames, with
error messages like here:
https://superuser.com/questions/1048637/ffmpeg-video-recording-freezes-after-invalid-data-found-when-processing-input

[video4linux2,v4l2 @ 0xed0c353440] Dequeued v4l2 buffer contains 32533
bytes, but 614400 were expected. Flags: 0x00012001.
/dev/video0: Invalid data found when processing input
Finishing stream 0:0 without any data written to it.

ffmpeg behaviour is already in a 2 year old feature request which applies
here as well: https://trac.ffmpeg.org/ticket/4795

This confirms that the kernel uvcvideo driver is the source of the problem
- it delivers the broken frames to ffmpeg.

Kai-Heng Feng <email address hidden> schrieb am So., 13. Aug. 2017
um 17:25 Uhr:

> Okay, the error happens in avcodec_send_packet() or
> avcodec_receive_frame().
> Needs to find out what ffmpeg did here...
>
> ** Also affects: ffmpeg (Ubuntu)
> Importance: Undecided
> Status: New
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1708922
>
> Title:
> uvcvideo module does not work with Dell XPS 12 webcam
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/ffmpeg/+bug/1708922/+subscriptions
>

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ffmpeg (Ubuntu):
status: New → Confirmed
James Cowgill (jcowgill) wrote :

I don't see how this is a bug in ffmpeg. The feature request linked in this bug report is asking for a workaround for a buggy kernel driver which will not fix the underlying issue, and isn't going to fix any other programs using the webcam anyway.

Changed in ffmpeg (Ubuntu):
status: Confirmed → Incomplete
Kai-Heng Feng (kaihengfeng) wrote :

I am not familiar in this area, but why does VLC work but not other Apps?

James Cowgill (jcowgill) wrote :

No idea. Maybe vlc has some hacks to workaround buggy drivers?

Kai-Heng Feng (kaihengfeng) wrote :

Unfortunately I don't have the machine, so this requires the bug reporters to find out.

no longer affects: linux
Changed in ffmpeg (Ubuntu):
importance: Undecided → Low
Reinhard Tartler (siretart) wrote :

Looking at the stacktrace, this is coming from /usr/bin/cheese. Even with bad input from the driver (which seems like a valid issue to investigate and improve) - an error message is preferable to a SIGFPE as seen in the initial report.

Changed in cheese (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
emk2203 (emk2203) wrote :

Original reporter here. I am willing to assist wherever I can, but I
reported chiefly because I cannot debug or investigate of my own.

Regarding the cheese issue, the exact same issue arises when just using
uvcvideo, so it is definitely something passed on from the driver.

2018-04-12 15:52 GMT+02:00 Reinhard Tartler <email address hidden>:

> Looking at the stacktrace, this is coming from /usr/bin/cheese. Even
> with bad input from the driver (which seems like a valid issue to
> investigate and improve) - an error message is preferable to a SIGFPE as
> seen in the initial report.
>
> ** Also affects: linux via
> https://trac.ffmpeg.org/ticket/4795
> Importance: Unknown
> Status: Unknown
>
> ** No longer affects: linux
>
> ** Changed in: ffmpeg (Ubuntu)
> Importance: Undecided => Low
>
> ** Also affects: cheese (Ubuntu)
> Importance: Undecided
> Status: New
>
> ** Changed in: cheese (Ubuntu)
> Importance: Undecided => Medium
>
> ** Changed in: cheese (Ubuntu)
> Status: New => Confirmed
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1708922
>
> Title:
> uvcvideo module does not work with Dell XPS 12 webcam
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/cheese/+bug/
> 1708922/+subscriptions
>

Reinhard Tartler (siretart) wrote :

If you can, please file a separate bug for uvcvideo with a stacktrace. Then
please link those bugs

The easiest way is probably by using apport on the crash file, I guess.

On Thu, Apr 12, 2018, 17:21 emk2203 <email address hidden> wrote:

> Original reporter here. I am willing to assist wherever I can, but I
> reported chiefly because I cannot debug or investigate of my own.
>
> Regarding the cheese issue, the exact same issue arises when just using
> uvcvideo, so it is definitely something passed on from the driver.
>
> 2018-04-12 15:52 GMT+02:00 Reinhard Tartler <email address hidden>:
>
> > Looking at the stacktrace, this is coming from /usr/bin/cheese. Even
> > with bad input from the driver (which seems like a valid issue to
> > investigate and improve) - an error message is preferable to a SIGFPE as
> > seen in the initial report.
> >
> > ** Also affects: linux via
> > https://trac.ffmpeg.org/ticket/4795
> > Importance: Unknown
> > Status: Unknown
> >
> > ** No longer affects: linux
> >
> > ** Changed in: ffmpeg (Ubuntu)
> > Importance: Undecided => Low
> >
> > ** Also affects: cheese (Ubuntu)
> > Importance: Undecided
> > Status: New
> >
> > ** Changed in: cheese (Ubuntu)
> > Importance: Undecided => Medium
> >
> > ** Changed in: cheese (Ubuntu)
> > Status: New => Confirmed
> >
> > --
> > You received this bug notification because you are subscribed to the bug
> > report.
> > https://bugs.launchpad.net/bugs/1708922
> >
> > Title:
> > uvcvideo module does not work with Dell XPS 12 webcam
> >
> > To manage notifications about this bug go to:
> > https://bugs.launchpad.net/ubuntu/+source/cheese/+bug/
> > 1708922/+subscriptions
> >
>
> --
> You received this bug notification because you are a member of MOTU
> Media Team, which is subscribed to ffmpeg in Ubuntu.
> https://bugs.launchpad.net/bugs/1708922
>
> Title:
> uvcvideo module does not work with Dell XPS 12 webcam
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/cheese/+bug/1708922/+subscriptions
>
> Launchpad-Notification-Type: bug
> Launchpad-Bug: distribution=ubuntu; sourcepackage=cheese; component=main;
> status=Confirmed; importance=Medium; assignee=None;
> Launchpad-Bug: distribution=ubuntu; sourcepackage=ffmpeg;
> component=universe; status=Incomplete; importance=Low; assignee=None;
> Launchpad-Bug: distribution=ubuntu; sourcepackage=linux; component=main;
> status=Incomplete; importance=Medium; assignee=None;
> Launchpad-Bug-Tags: amd64 apport-crash artful gstreamer-error
> Launchpad-Bug-Information-Type: Public
> Launchpad-Bug-Private: no
> Launchpad-Bug-Security-Vulnerability: no
> Launchpad-Bug-Commenters: apport emk2203 janitor jcowgill kaihengfeng
> siretart ubuntu-kernel-bot
> Launchpad-Bug-Reporter: emk2203 (emk2203)
> Launchpad-Bug-Modifier: emk2203 (emk2203)
> Launchpad-Message-Rationale: Subscriber (ffmpeg in Ubuntu) @motumedia
> Launchpad-Message-For: motumedia
>

emk2203 (emk2203) wrote :
Download full text (3.5 KiB)

Ok, I will do that.

Reinhard Tartler <email address hidden> schrieb am Do., 12. Apr. 2018, 23:29:

> If you can, please file a separate bug for uvcvideo with a stacktrace. Then
> please link those bugs
>
> The easiest way is probably by using apport on the crash file, I guess.
>
> On Thu, Apr 12, 2018, 17:21 emk2203 <email address hidden> wrote:
>
> > Original reporter here. I am willing to assist wherever I can, but I
> > reported chiefly because I cannot debug or investigate of my own.
> >
> > Regarding the cheese issue, the exact same issue arises when just using
> > uvcvideo, so it is definitely something passed on from the driver.
> >
> > 2018-04-12 15:52 GMT+02:00 Reinhard Tartler <email address hidden>:
> >
> > > Looking at the stacktrace, this is coming from /usr/bin/cheese. Even
> > > with bad input from the driver (which seems like a valid issue to
> > > investigate and improve) - an error message is preferable to a SIGFPE
> as
> > > seen in the initial report.
> > >
> > > ** Also affects: linux via
> > > https://trac.ffmpeg.org/ticket/4795
> > > Importance: Unknown
> > > Status: Unknown
> > >
> > > ** No longer affects: linux
> > >
> > > ** Changed in: ffmpeg (Ubuntu)
> > > Importance: Undecided => Low
> > >
> > > ** Also affects: cheese (Ubuntu)
> > > Importance: Undecided
> > > Status: New
> > >
> > > ** Changed in: cheese (Ubuntu)
> > > Importance: Undecided => Medium
> > >
> > > ** Changed in: cheese (Ubuntu)
> > > Status: New => Confirmed
> > >
> > > --
> > > You received this bug notification because you are subscribed to the
> bug
> > > report.
> > > https://bugs.launchpad.net/bugs/1708922
> > >
> > > Title:
> > > uvcvideo module does not work with Dell XPS 12 webcam
> > >
> > > To manage notifications about this bug go to:
> > > https://bugs.launchpad.net/ubuntu/+source/cheese/+bug/
> > > 1708922/+subscriptions
> > >
> >
> > --
> > You received this bug notification because you are a member of MOTU
> > Media Team, which is subscribed to ffmpeg in Ubuntu.
> > https://bugs.launchpad.net/bugs/1708922
> >
> > Title:
> > uvcvideo module does not work with Dell XPS 12 webcam
> >
> > To manage notifications about this bug go to:
> >
> >
> https://bugs.launchpad.net/ubuntu/+source/cheese/+bug/1708922/+subscriptions
> >
> > Launchpad-Notification-Type: bug
> > Launchpad-Bug: distribution=ubuntu; sourcepackage=cheese; component=main;
> > status=Confirmed; importance=Medium; assignee=None;
> > Launchpad-Bug: distribution=ubuntu; sourcepackage=ffmpeg;
> > component=universe; status=Incomplete; importance=Low; assignee=None;
> > Launchpad-Bug: distribution=ubuntu; sourcepackage=linux; component=main;
> > status=Incomplete; importance=Medium; assignee=None;
> > Launchpad-Bug-Tags: amd64 apport-crash artful gstreamer-error
> > Launchpad-Bug-Information-Type: Public
> > Launchpad-Bug-Private: no
> > Launchpad-Bug-Security-Vulnerability: no
> > Launchpad-Bug-Commenters: apport emk2203 janitor jcowgill kaihengfeng
> > siretart ubuntu-kernel-bot
> > Launchpad-Bug-Reporter: emk2203 (emk2203)
> > Launchpad-Bug-Modifier: emk2203 (emk2203)
> > Launchpad-Message-Rationale: Subscriber (ffmpeg in Ubuntu) @m...

Read more...

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.