NetBSD-Users archive

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

Re: Logitech HD Pro Webcam C920 USB webcam resolution



Hello Joel,

Thanks for the tips. I have to dig into that slowly cause I have never used opencv.

Regards.


El 25/2/25 a las 20:24, Joel escribió:
On 2/25/2025 11:06, Ramiro Aceves wrote:
Hello,
I am having trouble to get proper pictures and videos from it.

with:

$ffmpeg7 -f v4l2 -i /dev/video0 -vframes 1 output.jpg

I get a very dark picture.

with:

ffmpeg7 -f v4l2 -i /dev/video0 -vframes 5  output_%02d.jpg


Not sure if this helps, but I've had issues using OpenCV as well. It seems there's an issue with an ioctl call when changing camera settings. In my case, I can't use OpenCV to change the resolution from the default.

I ended up making a couple changes for my camera as a workaround to at least get full resolution.

Also, I have to "warm" the camera auto brightness before taking a final image.

Here's my OpenCV git diff:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index fa409f516c..c05da68e82 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,6 +6,10 @@
  #
 # ----------------------------------------------------------------------------

+# BSD
+add_compile_options($<$<COMPILE_LANGUAGE:C>:-std=gnu17>)
+add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-std=gnu++20>)
+
  # Disable in-source builds to prevent source tree corruption.
  if(" ${CMAKE_SOURCE_DIR}" STREQUAL " ${CMAKE_BINARY_DIR}")
    message(FATAL_ERROR "
@@ -129,7 +133,7 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)  # https://cmake.org/cmake/help/
      if(WIN32)
       set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Installation Directory" FORCE)
      else()
-      set(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Installation Directory" FORCE) +      set(CMAKE_INSTALL_PREFIX "/usr/pkg" CACHE PATH "Installation Directory" FORCE)
      endif()
    else()
      # any cross-compiling
diff --git a/modules/videoio/src/cap_v4l.cpp b/modules/videoio/src/ cap_v4l.cpp
index 2fc41ce05e..2af652597d 100644
--- a/modules/videoio/src/cap_v4l.cpp
+++ b/modules/videoio/src/cap_v4l.cpp
@@ -222,6 +222,14 @@ make & enjoy!
  #include <stdlib.h>
  #include <sys/stat.h>
  #include <sys/ioctl.h>
+#include <inttypes.h>
+#include <stdint.h>
+#ifndef __u32
+#define __u32 uint32_t
+#endif
+#ifndef __s32
+#define __s32 int32_t
+#endif
  #include <limits>

  #include <poll.h>
@@ -276,8 +284,8 @@ typedef uint32_t __u32;
  #endif

 /* Defaults - If your board can do better, set it here.  Set for the most common type inputs. */
-#define DEFAULT_V4L_WIDTH  640
-#define DEFAULT_V4L_HEIGHT 480
+#define DEFAULT_V4L_WIDTH  1280
+#define DEFAULT_V4L_HEIGHT 720
  #define DEFAULT_V4L_FPS 30



Home | Main Index | Thread Index | Old Index