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