pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/48400: net/kdenetwork4 - kopete does not work with webcam



>Number:         48400
>Category:       pkg
>Synopsis:       net/kdenetwork4 - kopete does not work with webcam
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Nov 23 04:50:00 +0000 2013
>Originator:     Nat Sloss
>Release:        pkgsrc-2013Q2
>Organization:
>Environment:
NetBSD beast 6.1.1_PATCH NetBSD 6.1.1_PATCH (PCIPAE) #22: Thu Nov 21 23:13:25 
EST 2013  build@microrusty:/usr/src/sys/arch/i386/compile/obj/PCIPAE i386
>Description:
Kopete from kdenetwork4 kde4.10.3 does not work with webcam.
>How-To-Repeat:
Start kopete and go to settings -> configure -> video device with a supported 
webcam plugged in and it wont be recognised as support for v4l2 is not compiled 
in.
>Fix:
Apply these patches:

Index: pkgsrc/net/kdenetwork4/patches/patch-af
===================================================================
RCS file: /cvsroot/pkgsrc/net/kdenetwork4/patches/Attic/patch-af,v
retrieving revision 1.3
diff -u -r1.3 patch-af
--- pkgsrc/net/kdenetwork4/patches/patch-af     19 Mar 2012 20:12:49 -0000      
1.3
+++ pkgsrc/net/kdenetwork4/patches/patch-af     23 Nov 2013 04:35:12 -0000
@@ -1,13 +1,17 @@
 $NetBSD: patch-af,v 1.3 2012/03/19 20:12:49 markd Exp $
 
---- kopete/libkopete/avdevice/videodevice.h.orig       2011-04-01 
10:59:27.000000000 +0000
+--- kopete/libkopete/avdevice/videodevice.h.orig       2013-04-10 
17:30:51.000000000 +0000
 +++ kopete/libkopete/avdevice/videodevice.h
-@@ -75,6 +75,13 @@
+@@ -75,6 +75,17 @@
  #endif // HAVE_V4L2
  
  #endif // __linux__ __FreeBSD__ ENABLE_AV
 +#if (defined(__NetBSD__) || defined(__DragonFly__)) && defined(ENABLE_AV)
 +
++#ifdef __NetBSD__
++#include <sys/videoio.h>
++#endif
++
 +#ifdef HAVE_LIBV4L2
 +#include <libv4l2.h>
 +#endif // HAVE_V4L2
@@ -16,3 +20,39 @@
  
  #include <qstring.h>
  #include <qfile.h>
+@@ -93,7 +104,7 @@ namespace AV {
+ typedef enum
+ {
+       VIDEODEV_DRIVER_NONE
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+         ,
+       VIDEODEV_DRIVER_V4L
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+@@ -340,7 +351,7 @@ public:
+       QVector<Kopete::AV::VideoInput> m_input;
+ 
+ protected:
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+       /*!
+           \enum VideoDevice::imgctrl_id Control-IDs used for V4L1- and 
software-controls
+        */
+@@ -369,7 +380,7 @@ protected:
+       int descriptor;
+       videodev_driver m_driver;
+       QString m_model;
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+       struct v4l2_capability V4L2_capabilities;
+       struct v4l2_format fmt;
+@@ -403,7 +414,7 @@ protected:
+       virtual int initDevice();
+ 
+       void setupControls();
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV) && 
defined(V4L2_CAP_VIDEO_CAPTURE)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV) && defined(V4L2_CAP_VIDEO_CAPTURE)
+       bool getMenuCtrlOptions(quint32 id, quint32 maxindex, QStringList * 
options);
+       void saveV4L2ControlData(struct v4l2_queryctrl qctrl);
+       const char *getUnifiedV4L2StdCtrlName(quint32 std_ctrl_id);
--- /dev/null   2013-11-23 15:34:43.000000000 +1100
+++ 
pkgsrc/net/kdenetwork4/patches/patch-kopete_libkopete_avdevice_videodevice.cpp  
    2013-11-23 15:32:09.000000000 +1100
@@ -0,0 +1,438 @@
+$NetBSD$
+
+--- kopete/libkopete/avdevice/videodevice.cpp.orig     2013-04-10 
17:30:51.000000000 +0000
++++ kopete/libkopete/avdevice/videodevice.cpp
+@@ -58,7 +58,7 @@ VideoDevice::~VideoDevice()
+  */
+ void VideoDevice::setupControls()
+ {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+       bool driver_vflip = false;
+       bool driver_hflip = false;
+ #endif
+@@ -69,7 +69,7 @@ void VideoDevice::setupControls()
+ 
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       struct v4l2_queryctrl qctrl;
+@@ -147,7 +147,7 @@ void VideoDevice::setupControls()
+                       break;
+       }
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+       // Software controls:
+       BooleanVideoControl boolCtrl;
+       boolCtrl.value_default = 0;
+@@ -172,7 +172,7 @@ void VideoDevice::setupControls()
+ #endif
+ }
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+ /*!
+     \fn bool VideoDevice::getMenuCtrlOptions(quint32 id, quint32 maxindex, 
QStringList * options)
+@@ -278,7 +278,7 @@ int VideoDevice::xioctl(int request, voi
+ {
+       int r;
+ 
+-#ifdef HAVE_LIBV4L2
++#if defined (HAVE_LIBV4L2) && !defined(__NetBSD__)
+       do r = v4l2_ioctl (descriptor, request, arg);
+ #else
+       do r = ioctl (descriptor, request, arg);
+@@ -380,7 +380,7 @@ int VideoDevice::checkDevice()
+               m_videostream=false;
+ 
+               m_driver=VIDEODEV_DRIVER_NONE;
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+ 
+               CLEAR(V4L2_capabilities);
+@@ -651,7 +651,7 @@ int VideoDevice::initDevice()
+       m_io_method = IO_METHOD_NONE;
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       if(V4L2_capabilities.capabilities & V4L2_CAP_READWRITE)
+@@ -699,7 +699,7 @@ int VideoDevice::initDevice()
+       }
+ 
+ // Select video input, video standard and tune here.
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+       struct v4l2_cropcap cropcap;
+       struct v4l2_crop crop;
+@@ -827,7 +827,7 @@ kDebug() << "setSize(" << newwidth << ",
+ // Change resolution for the video device
+               switch(m_driver)
+               {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                       case VIDEODEV_DRIVER_V4L2:
+ //                            CLEAR (fmt);
+@@ -944,7 +944,7 @@ pixel_format VideoDevice::setPixelFormat
+ // Change the pixel format for the video device
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+ //                    CLEAR (fmt);
+@@ -1039,7 +1039,7 @@ int VideoDevice::selectInput(int newinpu
+       {
+               switch (m_driver)
+               {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                       case VIDEODEV_DRIVER_V4L2:
+                               if (-1 == ioctl (descriptor, VIDIOC_S_INPUT, 
&newinput))
+@@ -1092,7 +1092,7 @@ int VideoDevice::startCapturing()
+                       case IO_METHOD_READ: // Nothing to do
+                               break;
+                       case IO_METHOD_MMAP:
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                               {
+                                       unsigned int loop;
+@@ -1114,7 +1114,7 @@ int VideoDevice::startCapturing()
+ #endif
+                               break;
+                       case IO_METHOD_USERPTR:
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                               {
+                                       unsigned int loop;
+@@ -1152,7 +1152,7 @@ int VideoDevice::getFrame()
+     /// @todo implement me
+       ssize_t bytesread;
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+       struct v4l2_buffer v4l2buffer;
+ #endif
+@@ -1191,7 +1191,7 @@ int VideoDevice::getFrame()
+                               }
+                               break;
+                       case IO_METHOD_MMAP:
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                               CLEAR (v4l2buffer);
+                               v4l2buffer.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
+@@ -1206,6 +1206,12 @@ int VideoDevice::getFrame()
+                                       else
+                                               return errnoReturn 
("VIDIOC_DQBUF");
+                               }
++                              if (v4l2buffer.bytesused == 0) {
++                                      if (v4l2buffer.m.userptr)
++                                              xioctl (VIDIOC_QBUF, 
&v4l2buffer);
++                                      return EXIT_FAILURE;
++                              }
++
+ /*                            if (v4l2buffer.index < m_streambuffers)
+                                       return EXIT_FAILURE;*/ //it was an 
assert()
+ // kDebug() << "m_rawbuffers[" << v4l2buffer.index << "].start: " << (void 
*)m_rawbuffers[v4l2buffer.index].start << "   Size: " << 
m_currentbuffer.data.size();
+@@ -1227,7 +1233,7 @@ int VideoDevice::getFrame()
+ #endif
+                               break;
+                       case IO_METHOD_USERPTR:
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                               {
+                                       unsigned int i;
+@@ -1740,7 +1746,7 @@ int VideoDevice::getControlValue(quint32
+       if (!isOpen())
+               return EXIT_FAILURE;
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+       if (ctrl_id == IMGCTRL_ID_SOFT_AUTOBRIGHTNESSCONTRASTCORR)
+       {
+               if (m_current_input < m_input.size() )
+@@ -1789,7 +1795,7 @@ int VideoDevice::getControlValue(quint32
+ 
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       {
+@@ -1882,7 +1888,7 @@ int VideoDevice::setControlValue(quint32
+       if (!isOpen())
+               return EXIT_FAILURE;
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+       if (ctrl_id == IMGCTRL_ID_SOFT_AUTOBRIGHTNESSCONTRASTCORR)
+       {
+               if (m_current_input < m_input.size() )
+@@ -1927,7 +1933,7 @@ int VideoDevice::setControlValue(quint32
+ 
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       {
+@@ -2032,7 +2038,7 @@ pixel_format VideoDevice::pixelFormatFor
+ {
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       switch(palette)
+@@ -2069,14 +2075,20 @@ pixel_format VideoDevice::pixelFormatFor
+ 
+ // Reserved formats
+                               case V4L2_PIX_FMT_DV            : return 
PIXELFORMAT_DV;        break;
++#if defined( V4L2_PIX_FMT_ET61X251 )
+                               case V4L2_PIX_FMT_ET61X251      : return 
PIXELFORMAT_ET61X251;  break;
++#endif
+                               case V4L2_PIX_FMT_HI240         : return 
PIXELFORMAT_HI240;     break;
+ #if defined( V4L2_PIX_FMT_HM12 )
+                               case V4L2_PIX_FMT_HM12          : return 
PIXELFORMAT_HM12;      break;
+ #endif
+                               case V4L2_PIX_FMT_MJPEG         : return 
PIXELFORMAT_MJPEG;     break;
++#if defined( V4L2_PIX_FMT_PW1C )
+                               case V4L2_PIX_FMT_PWC1          : return 
PIXELFORMAT_PWC1;      break;
++#endif
++#if defined( V4L2_PIX_FMT_PW2C )
+                               case V4L2_PIX_FMT_PWC2          : return 
PIXELFORMAT_PWC2;      break;
++#endif
+                               case V4L2_PIX_FMT_SN9C10X       : return 
PIXELFORMAT_SN9C10X;   break;
+                               case V4L2_PIX_FMT_WNVA          : return 
PIXELFORMAT_WNVA;      break;
+                               case V4L2_PIX_FMT_YYUV          : return 
PIXELFORMAT_YYUV;      break;
+@@ -2114,7 +2126,7 @@ int VideoDevice::pixelFormatCode(pixel_f
+ {
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       switch(pixelformat)
+@@ -2151,14 +2163,20 @@ int VideoDevice::pixelFormatCode(pixel_f
+ 
+ // Reserved formats
+                               case PIXELFORMAT_DV     : return 
V4L2_PIX_FMT_DV;       break;
++#if defined( V42L_PIX_FMT_ET61X251 )
+                               case PIXELFORMAT_ET61X251:return 
V4L2_PIX_FMT_ET61X251;break;
++#endif
+                               case PIXELFORMAT_HI240  : return 
V4L2_PIX_FMT_HI240;    break;
+ #if defined( V4L2_PIX_FMT_HM12 )
+                               case PIXELFORMAT_HM12   : return 
V4L2_PIX_FMT_HM12;     break;
+ #endif
+                               case PIXELFORMAT_MJPEG  : return 
V4L2_PIX_FMT_MJPEG;    break;
++#if defined( V42L_PIX_FMT_PWC1 )
+                               case PIXELFORMAT_PWC1   : return 
V4L2_PIX_FMT_PWC1;     break;
++#endif
++#if defined( V42L_PIX_FMT_PWC2 )
+                               case PIXELFORMAT_PWC2   : return 
V4L2_PIX_FMT_PWC2;     break;
++#endif
+                               case PIXELFORMAT_SN9C10X: return 
V4L2_PIX_FMT_SN9C10X;  break;
+                               case PIXELFORMAT_WNVA   : return 
V4L2_PIX_FMT_WNVA;     break;
+                               case PIXELFORMAT_YYUV   : return 
V4L2_PIX_FMT_YYUV;     break;
+@@ -2322,7 +2340,7 @@ QString VideoDevice::pixelFormatName(int
+       returnvalue = "None";
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       switch(pixelformat)
+@@ -2359,14 +2377,20 @@ QString VideoDevice::pixelFormatName(int
+ 
+ // Reserved formats
+                               case V4L2_PIX_FMT_DV            : returnvalue = 
pixelFormatName(PIXELFORMAT_DV);        break;
++#if defined( V42L_PIX_FMT_ET61X251 )
+                               case V4L2_PIX_FMT_ET61X251      : returnvalue = 
pixelFormatName(PIXELFORMAT_ET61X251);  break;
++#endif
+                               case V4L2_PIX_FMT_HI240         : returnvalue = 
pixelFormatName(PIXELFORMAT_HI240);     break;
+ #if defined( V4L2_PIX_FMT_HM12 )
+                               case V4L2_PIX_FMT_HM12          : returnvalue = 
pixelFormatName(PIXELFORMAT_HM12);      break;
+ #endif
+                               case V4L2_PIX_FMT_MJPEG         : returnvalue = 
pixelFormatName(PIXELFORMAT_MJPEG);     break;
++#if defined( V42L_PIX_FMT_PWC1 )
+                               case V4L2_PIX_FMT_PWC1          : returnvalue = 
pixelFormatName(PIXELFORMAT_PWC1);      break;
++#endif
++#if defined( V42L_PIX_FMT_PWC2 )
+                               case V4L2_PIX_FMT_PWC2          : returnvalue = 
pixelFormatName(PIXELFORMAT_PWC2);      break;
++#endif
+                               case V4L2_PIX_FMT_SN9C10X       : returnvalue = 
pixelFormatName(PIXELFORMAT_SN9C10X);   break;
+                               case V4L2_PIX_FMT_WNVA          : returnvalue = 
pixelFormatName(PIXELFORMAT_WNVA);      break;
+                               case V4L2_PIX_FMT_YYUV          : returnvalue = 
pixelFormatName(PIXELFORMAT_YYUV);      break;
+@@ -2404,7 +2428,7 @@ int VideoDevice::detectPixelFormats()
+                       int err = 0;
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       struct v4l2_fmtdesc fmtdesc;
+@@ -2482,7 +2506,7 @@ __u64 VideoDevice::signalStandardCode(si
+ {
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       switch(standard)
+@@ -2503,8 +2527,12 @@ __u64 VideoDevice::signalStandardCode(si
+ 
+                               case STANDARD_NTSC_M    : return 
V4L2_STD_NTSC_M;       break;
+                               case STANDARD_NTSC_M_JP : return 
V4L2_STD_NTSC_M_JP;    break;
++#if defined( V4L2_STD_NTSC_443 )
+                               case STANDARD_NTSC_443  : return 
V4L2_STD_NTSC_443;     break;
++#endif
++#if defined( V4L2_STD_NTSC_M_KR )
+                               case STANDARD_NTSC_M_KR : return 
V4L2_STD_NTSC_M_KR;    break;
++#endif
+ 
+                               case STANDARD_SECAM_B   : return 
V4L2_STD_SECAM_B;      break;
+                               case STANDARD_SECAM_D   : return 
V4L2_STD_SECAM_D;      break;
+@@ -2513,7 +2541,9 @@ __u64 VideoDevice::signalStandardCode(si
+                               case STANDARD_SECAM_K   : return 
V4L2_STD_SECAM_K;      break;
+                               case STANDARD_SECAM_K1  : return 
V4L2_STD_SECAM_K1;     break;
+                               case STANDARD_SECAM_L   : return 
V4L2_STD_SECAM_L;      break;
++#if defined( V4L2_STD_SECAM_LC )
+                               case STANDARD_SECAM_LC  : return 
V4L2_STD_SECAM_LC;     break;
++#endif
+ 
+                               case STANDARD_ATSC_8_VSB: return 
V4L2_STD_ATSC_8_VSB;   break;
+                               case STANDARD_ATSC_16_VSB:return 
V4L2_STD_ATSC_16_VSB;  break;
+@@ -2522,17 +2552,29 @@ __u64 VideoDevice::signalStandardCode(si
+                               case STANDARD_PAL_DK    : return 
V4L2_STD_PAL_DK;       break;
+                               case STANDARD_PAL       : return V4L2_STD_PAL;  
        break;
+                               case STANDARD_NTSC      : return V4L2_STD_NTSC; 
        break;
++#if defined( V4L2_STD_SECAM_DK )
+                               case STANDARD_SECAM_DK  : return 
V4L2_STD_SECAM_DK;     break;
++#endif
+                               case STANDARD_SECAM     : return 
V4L2_STD_SECAM;        break;
+ 
++#if defined( V4L2_STD_MN )
+                               case STANDARD_MN        : return V4L2_STD_MN;   
        break;
++#endif
++#if defined( V4L2_STD_B )
+                               case STANDARD_B         : return V4L2_STD_B;    
        break;
++#endif
++#if defined( V4L2_STD_GH )
+                               case STANDARD_GH        : return V4L2_STD_GH;   
        break;
++#endif
++#if defined( V4L2_STD_DK )
+                               case STANDARD_DK        : return V4L2_STD_DK;   
        break;
++#endif
+ 
+                               case STANDARD_525_60    : return 
V4L2_STD_525_60;       break;
+                               case STANDARD_625_50    : return 
V4L2_STD_625_50;       break;
++#if defined( V4L2_STD_ASTC )
+                               case STANDARD_ATSC      : return V4L2_STD_ATSC; 
        break;
++#endif
+ 
+                               case STANDARD_UNKNOWN   : return 
V4L2_STD_UNKNOWN;      break;
+                               case STANDARD_ALL       : return V4L2_STD_ALL;  
        break;
+@@ -2668,7 +2710,7 @@ QString VideoDevice::signalStandardName(
+       returnvalue = "None";
+       switch(m_driver)
+       {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+               case VIDEODEV_DRIVER_V4L2:
+                       switch(standard)
+@@ -2687,8 +2729,12 @@ QString VideoDevice::signalStandardName(
+                               case V4L2_STD_PAL_60    : returnvalue = 
signalStandardName(STANDARD_PAL_60);    break;
+                               case V4L2_STD_NTSC_M    : returnvalue = 
signalStandardName(STANDARD_NTSC_M);    break;
+                               case V4L2_STD_NTSC_M_JP : returnvalue = 
signalStandardName(STANDARD_NTSC_M_JP); break;
++#if defined( V4L2_STD_NTSC_443 )
+                               case V4L2_STD_NTSC_443  : returnvalue = 
signalStandardName(STANDARD_NTSC_443);  break; // Commented out because my 
videodev2.h header seems to not include this standard in struct __u64 
v4l2_std_id
++#endif
++#if defined( V4L2_STD_NTSC_M_KR )
+                               case V4L2_STD_NTSC_M_KR : returnvalue = 
signalStandardName(STANDARD_NTSC_M_KR); break; // Commented out because my 
videodev2.h header seems to not include this standard in struct __u64 
v4l2_std_id
++#endif
+                               case V4L2_STD_SECAM_B   : returnvalue = 
signalStandardName(STANDARD_SECAM_B);   break;
+                               case V4L2_STD_SECAM_D   : returnvalue = 
signalStandardName(STANDARD_SECAM_D);   break;
+                               case V4L2_STD_SECAM_G   : returnvalue = 
signalStandardName(STANDARD_SECAM_G);   break;
+@@ -2696,7 +2742,9 @@ QString VideoDevice::signalStandardName(
+                               case V4L2_STD_SECAM_K   : returnvalue = 
signalStandardName(STANDARD_SECAM_K);   break;
+                               case V4L2_STD_SECAM_K1  : returnvalue = 
signalStandardName(STANDARD_SECAM_K1);  break;
+                               case V4L2_STD_SECAM_L   : returnvalue = 
signalStandardName(STANDARD_SECAM_L);   break;
++#if defined( V4L2_STD_SECAM_LC )
+                               case V4L2_STD_SECAM_LC  : returnvalue = 
signalStandardName(STANDARD_SECAM_LC);  break;
++#endif
+ 
+                               case V4L2_STD_ATSC_8_VSB: returnvalue = 
signalStandardName(STANDARD_ATSC_8_VSB);break;
+                               case V4L2_STD_ATSC_16_VSB:returnvalue = 
signalStandardName(STANDARD_ATSC_16_VSB);break;
+@@ -2705,17 +2753,29 @@ QString VideoDevice::signalStandardName(
+                               case V4L2_STD_PAL_DK    : returnvalue = 
signalStandardName(STANDARD_PAL_DK);    break;
+                               case V4L2_STD_PAL       : returnvalue = 
signalStandardName(STANDARD_PAL);       break;
+                               case V4L2_STD_NTSC      : returnvalue = 
signalStandardName(STANDARD_NTSC);      break;
++#if defined( V4L2_STD_SECAM_DK )
+                               case V4L2_STD_SECAM_DK  : returnvalue = 
signalStandardName(STANDARD_SECAM_DK);  break;
++#endif
+                               case V4L2_STD_SECAM     : returnvalue = 
signalStandardName(STANDARD_SECAM);     break;
+ 
++#if defined( V4L2_STD_MN )
+                               case V4L2_STD_MN        : returnvalue = 
signalStandardName(STANDARD_MN);        break;
++#endif
++#if defined( V4L2_STD_B )
+                               case V4L2_STD_B         : returnvalue = 
signalStandardName(STANDARD_B);         break;
++#endif
++#if defined( V4L2_STD_GH )
+                               case V4L2_STD_GH        : returnvalue = 
signalStandardName(STANDARD_GH);        break;
++#endif
++#if defined( V4L2_STD_DK )
+                               case V4L2_STD_DK        : returnvalue = 
signalStandardName(STANDARD_DK);        break;
++#endif
+ 
+                               case V4L2_STD_525_60    : returnvalue = 
signalStandardName(STANDARD_525_60);    break;
+                               case V4L2_STD_625_50    : returnvalue = 
signalStandardName(STANDARD_625_50);    break;
++#if defined( V4L2_STD_ASTC )
+                               case V4L2_STD_ATSC      : returnvalue = 
signalStandardName(STANDARD_ATSC);      break;
++#endif
+ 
+                               case V4L2_STD_UNKNOWN   : returnvalue = 
signalStandardName(STANDARD_UNKNOWN);   break;
+                               case V4L2_STD_ALL       : returnvalue = 
signalStandardName(STANDARD_ALL);       break;
+@@ -2756,7 +2816,7 @@ int VideoDevice::detectSignalStandards()
+       {
+       switch(m_driver)
+               {
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)
+ #ifdef V4L2_CAP_VIDEO_CAPTURE
+                       case VIDEODEV_DRIVER_V4L2:
+ 
+@@ -3028,7 +3088,7 @@ QString VideoDevice::udi() const
+ }
+ 
+ 
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(ENABLE_AV)  && 
defined(V4L2_CAP_VIDEO_CAPTURE)
++#if (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)) && 
defined(ENABLE_AV)  && defined(V4L2_CAP_VIDEO_CAPTURE)
+ /*!
+     \fn const char * VideoDevice::getUnifiedV4L2StdCtrlName(quint32 
std_ctrl_id)
+     \param std_ctrl_id ID of the V4L2 standard video control


Regards,

Nat.



Home | Main Index | Thread Index | Old Index