Public bug reported:

Machine: HP Probook
Webcam: HP HD Webcam
OS Ver. Ubuntu 14.04 LTS
Architecture: amd64

Symptom:
The HP Probook has an HP HD Webcam and it supports various resolutions. Most of 
them work fine, however, 960x540 has black preview and there is an error 
message: Ther was an error playing video from the webcam shown in the cheese.

Diagnose:
According to some tests, the root cause results from the JPEG processing in 
libv4l-0,
The source of v4l-utils-1.0.1/lib/libv4lconvert/jpeg.c, 377:

        /* We don't want any padding as that may overflow our dest */
        if (width % (8 * h_samp) || height % (8 * v_samp)) {
            V4LCONVERT_ERR(
                "resolution is not a multiple of dctsize");
            errno = EIO;
            return -1;
        }

Because 540 is not a multiple of 8, so it fails.

I tried other video capture apps and set to the same resolution 960x540
and MJPEG format, the issue can be reproduced. But if the format changes
to YUYV, it works fine (preview/capture).

** Affects: cheese
     Importance: Undecided
         Status: New

** Affects: oem-priority
     Importance: High
         Status: New

** Also affects: cheese
   Importance: Undecided
       Status: New

** Package changed: cheese (Ubuntu) => oem-priority

** Changed in: oem-priority
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to cheese in Ubuntu.
https://bugs.launchpad.net/bugs/1326624

Title:
  Error playing video from webcam

Status in Cheese Camera Application:
  New
Status in OEM Priority Project:
  New

Bug description:
  Machine: HP Probook
  Webcam: HP HD Webcam
  OS Ver. Ubuntu 14.04 LTS
  Architecture: amd64

  Symptom:
  The HP Probook has an HP HD Webcam and it supports various resolutions. Most 
of them work fine, however, 960x540 has black preview and there is an error 
message: Ther was an error playing video from the webcam shown in the cheese.

  Diagnose:
  According to some tests, the root cause results from the JPEG processing in 
libv4l-0,
  The source of v4l-utils-1.0.1/lib/libv4lconvert/jpeg.c, 377:

          /* We don't want any padding as that may overflow our dest */
          if (width % (8 * h_samp) || height % (8 * v_samp)) {
              V4LCONVERT_ERR(
                  "resolution is not a multiple of dctsize");
              errno = EIO;
              return -1;
          }

  Because 540 is not a multiple of 8, so it fails.

  I tried other video capture apps and set to the same resolution
  960x540 and MJPEG format, the issue can be reproduced. But if the
  format changes to YUYV, it works fine (preview/capture).

To manage notifications about this bug go to:
https://bugs.launchpad.net/cheese/+bug/1326624/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to