Giter Club home page Giter Club logo

cameracontroller's Introduction

Hi there πŸ‘‹

Linkedin Badge visitors GitHub followers

I'm an iOS Software Engineer from Montevideo, Uruguay. I have a couple of Open Source Projects, feel free to look at them and contribute!

cameracontroller's People

Contributors

globau avatar itaybre avatar jazzychad avatar michaelbaisch avatar mr-eshua avatar stevesparks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cameracontroller's Issues

Support Apple Silicon (M1 cpu)?

Thanks for providing this app - found it while searching for a free app that just shows the picture of a camera.

As it is, it somehow works (shows the camera live picture) on a Macbook Air 2020 (M1), but tends to be a bit slow as it is translated for the M1 first. Guess this could be fixed by recompiling.

I tested it with:

  • builtin Apple facetime camera
  • Teslong USB microscope

Notable: all the settings sliders in the app are inactive - is this due to my camera hw, due to M1?

HDR control for Razer Kiyo Pro

Hey unfortunately the Razer Synapse Software to configure the webcam only works on windows. Camera Controller already covers most controls, but one key feature of the Razer Kiyo Pro cam is HDR, which would be awesome to have in camera controller

Read/Push Settings

How taxing on the resources is reading and pushing camera settings, any chance it might cause any lag, frame rate drop or stutter and any specific reason why the highest value is 2 seconds and there is no custom option?

Settings are not persistent

Describe the bug
The applied camera profile settings are lost across different apps/websites. The settings are only persistent for one app/website and will be reset if you open another app/website.
Tested with Photo Booth, Discord and Google Meet.

Another question: Is CameraController supposed to be run minimzed in the background? Otherwise I'm not able to achieve persistent settings.

To Reproduce
Steps to reproduce the behavior:

  1. Open CameraController, apply your profile settings and minimize the app
  2. Open an app or website which uses your webcam
  3. The settings are now back to default
  4. Reapply your profile settings
  5. The settings are now persistent for this app/website if you close it and reopen it again
  6. Close this app/website or deactivate your camera
  7. Open another app/website
  8. The settings are back to default again
  9. Reapply your profile settings, close this app/website or deactivate your camera and open the first app/website again
  10. The settings are back to default again

Expected behavior
The applied settings should be persistent across different apps/websites.

Setup:

  • CameraController 1.3.1
  • Logitech C920
  • MacBook Air M1
  • macOS 12.1
  • Photo Booth 12.0
  • Discord 0.0.264
  • Chrome 97.0.4692.99 (used for Google Meet)

CLI mode?

Great to see an app under active development that's providing this functionality.

I have a Logitech StreamCam, and am in the UK - so 50Hz power, but the camera defaults to 60Hz each time it's reconnected, so I end up with lines all over my face. Using this app, I can set the camera to 50Hz, but I have to manually do this all of the time.

Is it possible to control the app via command line? For example, passing the parameter you want to set and a value as a command line argument... or maybe even just recalling a profile that had previously been built the the UI? This would allow me to have a LaunchAgent that could call it at the right time! - Also open to other suggestions, maybe the functionality I need is already there via another means?

Many thanks!

Logitech Brio - Focus not working

Please enter the following data:

Brand: Logitech
Camera: BRIO
Have you tried many USB ports? Yes

The camera works, but the image is unfocused and the focus control does not change anything.

Zooming functionality ?

Hi,

Great app !
I've just installed it and Zoom/Pan/Tilt is greyed out.
I wonder if this is a purely hardware implemented feature (no chance it will ever work if my webcam doesn't have it) ?

Thanks

Brand: Jelly Comb
USB info :
FHD Camera Microphone
Product ID: 0x28c4
Vendor ID: 0x1bcf (Sunplus Innovation Technology Inc.)

Adding to Homebrew Cask apps collection

Hello @Itaybre!

I would want to sincirely thank you for your App! Basically it gave new life to my Foscam W25 UVC webcam in MacOS πŸ™

In return, I would like to propose adding it in Homebrew Cask list to be able to install it through brew install --cask command, of course, if you do not mind. A Cask script for that is completely on me πŸ˜‰

Cheers!

Not working with Logitech C615

I have a Logitech C615 webcam. If it's plugged in before starting the app, the app launches but never displays the settings window. If I launch the app before plugging it in, it shows the settings window but freezes up as soon as I plug it in.

Thanks for all the time you've put into this, I really appreciate it as I haven't been able to find a good macOS camera settings app.

.

Issue solved. Please delete

Programm Crash when started

Hey together- I am new here. i was searching for absolutely the programm you coded. Problem is, just the version 1.2 is working. higher ones does not work. I am Using MAC OS 10.15.7 on a Macbook Pro 2013 16 GB.

Is there something i could change to run the programm ?

Thank you very much !!
Crash Report1.3.1.txt

OBS Studio Virtual Camera

Please enter the following data:

Brand: OBS Studio Virtual Camera
Camera:
Have you tried many USB ports? Virtual....

2022-03-25 18:08:38.833370-0500 CameraController[2004:54153] Error loading /Library/CoreMediaIO/Plug-Ins/DAL/obs-mac-virtualcam.plugin/Contents/MacOS/obs-mac-virtualcam: dlopen(/Library/CoreMediaIO/Plug-Ins/DAL/obs-mac-virtualcam.plugin/Contents/MacOS/obs-mac-virtualcam

I don't need to control the virtual camera, was looking for away to skip it since it is virtual and not actually plugged in.
I have checked the System Report to see what it sees plugged in and the OBS Studio Virtual Camera is not listed.

UVCControl - line 41
wIndex: UInt16(uvcUnit<<8) | UInt16(uvcInterface, --- Error --- Thread 1: Fatal error: Negative value is not representable

Brightness can only be increased, not decreased

Describe the bug
Unable to reduce camera brightness, but I can increase it.

To Reproduce
Steps to reproduce the behavior:

  1. Go to basic settings
  2. Click on brightness
  3. Drag slider all the way to the left
  4. See "normal" brightness.

Expected behavior
Ability to decrease brightness in addition to increasing. Image should get darker than the cam's default.

Desktop (please complete the following information):

  • Big Sur 11.6
  • Camera Depstech DW49 (4k)

macOS Monterey all settings greyed out

Describe the bug

in macOS Monterey all settings greyed out

To Reproduce
Steps to reproduce the behavior:

  1. Launch app
  2. Choose your camera

Expected behavior
Able to set settings for the camera

Screenshots

Note: camera does show up I have just blacked out the camera image.

Screen Shot 2021-08-13 at 10 49 11 am
Screen Shot 2021-08-13 at 10 49 14 am
Screen Shot 2021-08-13 at 10 49 18 am

Desktop (please complete the following information):

Additional context
Hi! I know it is a beta OS but opening here for reference, not expecting an immediate fix :)

Push and read settings

Everything's very intuitive except I'm not sure what these settings are for. I'd guess it's something to do with OS interference but not sure or how to use them?

PS Third party camera with Apple was painful. Thank you so much for this app πŸ‘

Enable mirror/flip option

Please add an option to mirror or flip camera image (basically to Google Meet)

Mac OSX 15
Logitech BC950

Thanks.

Zoom/Pan/Tilt not working with Aukey LM1E Camera

Describe the bug
Hi πŸ‘‹

@Itaybre thank you so much for such a great app, it's really awesome to use 🍻 I've noticed that Zoom/Pan/Tilt is not working for my camera though, it would be really great to have it for such popular cheap model as well.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Advanced settings
  2. Click on Zoom, Pan or Tilt slider
  3. Nothing happens

Expected behavior
After changing the settings video should have change to accommodate new zoom, pan or tilt option.

Screenshots

Desktop (please complete the following information):

  • Version Version 1.3.1 (6)
  • Camera Aukey PC-LM1E
  • Macbook Pro 14" macOS Monterey 12.1 (21C52)

Additional context
Zooming and panning is working in other app with this cam.

Rapoo C500

Please enter the following data:

Brand: Rapoo
Camera: C500
Have you tried many USB ports? Yes

I can't seem to make my camera work with this software. Is there a way to get it working?

Feature request: UI should expose (editable) numbers

Currently, all the settings are configurable via sliders, which do not provide an exact number.

Feature request: The UI should expose readouts of numbers (and preferably their valid ranges if space allows) and they should be editable to allow users to enter the values manually. Of course, sliders and text boxes should be synchronized with some reasonable sanity check.

This is an important feature for more fine-grained control. Thank you!

Not working with Zoom

Describe the bug
All settings get reset to default when Zoom tries to use the camera.

To Reproduce
Steps to reproduce the behavior:

  1. Set up a profile in CameraController
  2. Join a zoom call
  3. Notice the settings you just set are gone.

Desktop (please complete the following information):

  • Version: Latest
  • Camera: Razer Kiyo

Exposure Time Input not working - Razer Kiyo

Describe the bug
Switching from Auto to Manual in the exposure settings - the first change to the exposure time setting darkens the image significantly, then further changes have no effect whatsoever. This leads to, with max Gain and max exposure time, an image significantly darker than needed.

Desktop (please complete the following information):

  • Version 1.3.1 (6)
  • Camera - Razer Kiyo

Additional context
Workaround is to switch to "auto" exposure, then change only gain settings. However, the "auto" exposure time is overriden when starting the camera again. e.g. new zoom call.

Not working with multiple camera of the same model

I've attached multiple Logitech C920 and I can't change their parameters properly.

If only one of them is attached everything works properly, but as soon as I attach both it stops working (one of the two doesn't change his parameter anymore).

Big Sur 11.5 unable to launch app after download

Expected behaviour:

  1. download app
  2. launch app
  3. get third party app warning/caution note
  4. goto Settings > Security & Privacy and click Open Anyway
  5. app opens

What is happening:

  1. download app
  2. launch app
  3. get third party app warning/caution note
  4. get CameraController quit unexpectedly message (see screenshot)

Screen Shot 2021-08-09 at 09 11 49 AM

  1. goto Settings > Security & Privacy, there is no button for Open Anyway
  2. click Reopen, settings > Security & Privacy flickers a bit but still o button for Open Anyway

Other symptom:

  1. app icon disabled (screenshot attached)

Screen Shot 2021-08-09 at 09 16 41 AM

Result:
Unable to open the app since first download

C922 Pro - Zoom Issue?

Please enter the following data:

Brand: Logitech
Camera: C922
Have you tried many USB ports? Many

The camera works. All the setting work. The issue I possibly see is with the Zoom. I didn't seem to zoom as far as I had seen on a Windows PC. I put some extra GUI stuff on the Advanced tab to actually show the Zoom min and max, what the program goes and gets from the camera. I also put a 3rd text object to show the current Zoom number setting.

min = 100
max = 500

However, zooming basically stops at 120. The slider will keep going to 500, but no more zoom.
Is Logitech just being weird? I also hard coded the slider values and allowed the slider to go lower than 100 just to test, it would not zoom out any further past 100.

App Icon

Every great app has an Icon πŸ’ͺ

Add a way to reset values to the default

After playing around with settings there's no easy way to reset back to their default values.

For the image settings (brightness, contrast, etc) that isn't too bad you can approximately set them to a 50% value (see also #19).
However, for some other controls the default value isn't obvious.

Can't reopen UI after closing it

Describe the bug
After closing the UI (using Cmd+W or hitting the red X button), there's no way to reopen it. Clicking the app icon does nothing, while I expected it to reopen the UI.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app
  2. Close the UI using Cmd+W
  3. Click the app icon in the Dock
  4. Nothing happens

Expected behavior
The UI reopens.

Desktop (please complete the following information):

  • Version 1.2 (3)
  • Logitech C920
  • macOS Big Sur

bug when switching camera

switching camera does not work. Camera video changed but when modify parameters, it only affect the first camera.

Steps to reproduce the behavior:

  1. select camera 1 (not the built-in one)
  2. change exposure (no effect)
  3. select camera 2 (exposure affect here)
  4. change exposure (camera 2 effect)

It looks like parameters can only change the fixed camera.

Sliders, Dropdowns Disabled after Monterey Mac OS

Describe the bug
I've tried a few times and restarted my computer and the software. I think updating to Monterey messes with the settings. Or something else, and the timing happened when I updated the OS to Monterey. None of the sliders or dropdowns are accessible regardless of tab (see screenshots). It's all greyed out/disabled.

To Reproduce
Steps to reproduce the behavior:

  1. Be on OS 12.0.1
    image
  2. Open CameraController
  3. Pick Microsoft LifeCam HD 3000, or the native facetime camera - it's happening on both
  4. Try to adust any setting and find that you can't

Expected behavior
I was able to adjust the sliders before updating the OS.

Screenshots
image
image
image

Desktop (please complete the following information):

  • Version : Version 1.3 (5)
  • Camera: Microsoft Lifecam HD 3000

Additional context
Add any other context about the problem here.

Change of Brightness and Contrast Not Working on Monterey 12.2

Describe the bug
Change of Brightness and Contrast not working on Monterey 12.2.
Zoom/Tilt/Sharpness/Saturation works though.

To Reproduce

  1. Go to 'Basic'
  2. Drag on the Brightness/Contrast adjustment bar
  3. See error

Expected behavior
The brightness and contrast changes when dragging the adjust bar.

Screenshots
Before and after change - no effect.
Screen Shot 2022-02-09 at 10 53 37 AM
Screen Shot 2022-02-09 at 10 53 43 AM

Desktop (please complete the following information):

  • Version [Version 1.3.1 (6)]
  • Camera [e.g. Logitech C930e]

Additional context
Has been working well prior to the OS12.2 update.

App hangs at 100% CPU with HT-301 plugged in

Brand: Hti-Xintai
Camera: HT-301

I am on an M1 MBP. This occurs with all USB ports whether or not I use a USB hub. The hang occurs whether I plug the camera in before booting CameraController or wait until it's running.

It is my extremely limited understanding that this camera's UVC stream includes metadata the officially-supported app uses to colorize based on relative intensity, which may be an issueβ€”but, for example, the Camera app on Windows 10 happily renders only mildly corrupt images. Here's oneβ€”note the green crud at the bottom, presumably said metadata being interpreted as image data:

image

system_profiler SPCameraDataType -json

{
  "SPCameraDataType" : [
    {
      "_name" : "T3-317-13",
      "spcamera_model-id" : "UVC Camera VendorID_5396 ProductID_1",
      "spcamera_unique-id" : "0x10000015140001"
    },
    {
      "_name" : "FaceTime HD Camera",
      "spcamera_model-id" : "FaceTime HD Camera",
      "spcamera_unique-id" : "EAB7A68FEC2B4487AADFD8A91C1CB782"
    }
  ]
}

I took a spindump and a process sample during the apparent hang and have attached both. Let me know if there's anything else that would be helpful!

cameracontroller-hang-spindump.txt

cameracontroller-hang-sample.txt

Request: Load a LUT/Lookup table

Simple as that. I'd kill to load a LUT conversion into the camera.

TONS of LUTs out there, but I specifically want to calibrate my camera using a LUT I generate.

Sliders do not reliably display/apply active setting when switching Auto mode on/off

Description
There are two aspects to this issue. Depending on what the desired behavior is,

  1. When one switches 'auto' mode from off to on, the sliders for the controlled settings are not updated to reflect the active value.
  2. When auto mode is switched from on to off and the indicated setting on the slider is different from the active, auto-set value, the indicated setting is not applied. (One must move the slider to get it to apply.)

If the intent is indeed to allow manual settings to persist on the sliders when auto is switched on, then they should be immediately reapplied when auto is switched off, i.e., point 2.

However, imo the more desirable behavior would be for the settings controls to always accurately reflect their active values, which would require addressing point 1.
Arguments in favor of this behavior:

  • Reflecting the automatically applied value for the setting in the manual controls provides the user with useful information about how the camera is configured and whether it may be useful to manually override.
  • Persisting manual settings can still be done by saving to a profile

A third possibility: when switching to Auto mode, to internally retain the manual settings while displaying the auto-set values in the sliders. Then, on switching back to Manual mode, restore those manual settings. This would give the user the ability to easily iteratively tune manual settings to improve on Auto mode's results. And it would serve as a "quick switch" to enable/disable subsets of manual settings in saved profiles.

To Reproduce

  1. Start with defaults, Auto mode enabled everywhere
  2. Switch Exposure/Mode to Manual
  3. Increase Exposure/Gain slider to maximum
    Result: image washed out
  4. Switch Exposure/Mode to Auto
    Result: image optimizes; Exposure/Gain slider does not change, remains at maximum
    Expected: image returns to normal; Exposure/Gain slider changes to active, auto-set value
  5. Switch Exposure/Mode to Manual
    Result: image remains normal, indicating gain remains at auto-set value; Gain slider remains at maximum
    Expected: Setting reflected by slider (max) is applied; image washes out

Environment

  • CameraController: v1.3 (5)
  • Camera: Razer Kiyo
  • OS: MacOS 10.15.7

Add rotate image

Excellent job with the app - I've been looking for something to replace the Logi software for my camera, it still isn't M1 compatible and I have a shiny new MacBook on the way!

Unfortunately the Logitech Streamcam doesn't auto rotate to portrait on macOS despite it being one of its main advertised features, so the ability to rotate the picture would be really useful.

See: Reddit - Streamcam auto-rotate doesn't work in Big Sur or Monterey MacOS

Setup:

  • macOS Monterey 12.2.1
  • 2.3 GHz Dual-Core Intel Core i5 / 8GB Memory
  • Logitech Streamcam

Multiple cameras with same vendor/product id aren't disambiguated

Describe the bug
If you have two or more cameras with the same product and vendor id plugged into the USB host/bus, changing the slider values after choosing a camera may instead change the value for the other camera with the same vendor/product id.

To Reproduce
Steps to reproduce the behavior:

  1. Plug in multiple cameras with the same USB product and vendor ids2.
  2. See them in the dropdown picker of the app
  3. Select one
  4. Change a slider value in the basic settings
  5. You might see an update in the preview window, this means that the value is changed for the currently selected camera6.
  6. Select the other camera from the drop down
  7. Change the same setting. You might not see any change in the preview window, but if you look back at the other camera, you will see that it has changed instead

Expected behavior
Changing the slider values for a selected camera should update the values for that camera (and not another one)

Desktop (please complete the following information):

  • Version 1.3.1
  • Camera: n/a .. just as long as multiple have the same product/vendor id

Additional context
the usbDevice() extension method on AVCaptureDevice doesn't use enough information to disambiguate the interfaceRef returned by the dictionary passed into IOServiceGetMatchingService (in AVCaptureDevice+USB.swift), so the usb interface that is returned for each different AVCaptureDevice is actually pointing at the same end device (which causes settings changes in the UI to be routed to the same end camera).

I am actively looking into a solution for this issue by using more keys in the lookup dictionary for IOServiceGetMatchingService

App does not save profiles after Exit

Describe the bug!

When I close the app, the profiles that I saved are deleted.

To Reproduce
Steps to reproduce the behavior:

  1. Open Camera Controller
  2. Make some changes to the settings
  3. Save profile - "My profile"
  4. Apply "My profile" -> Settings apply successfully
  5. Apply "Camera Default" -> Settings apply successfully
  6. Apply "My profile" -> Settings apply successfully
  7. Quit Camera Controller
  8. Open Camera controller
  9. The only profile available is "Camera Default"

Expected behavior
I would expect to have "My Profile" still there in the app so I can apply the settings I configured

Screenshots
Screenshot_2021-08-12 22 34 57_It3RfJ

Screenshot_2021-08-12 22 36 32_C0KPM4

After restart
Screenshot_2021-08-12 22 37 15_0M0ZUx

Desktop (please complete the following information):

  • Catalina 10.15.7
  • Lifecam Cinema

Additional context
Add any other context about the problem here.

App crashes upon camera connect

Describe the bug
App closes when my webcam connects. I have a usb-c hub which doesn't really like my camera and it just disconnects randomly for a second and comes up again.

To Reproduce
Steps to reproduce the behavior:

  1. Open application
  2. Connect another camera
  3. Wait for camera to get detected
  4. App crashes

Expected behavior
App window should show the default screen with no camera selected.

VIDEO
https://user-images.githubusercontent.com/75075102/143402018-78469423-94fc-4beb-a9db-c1e90f35b867.mov

  • Version - CC version 1.3.1 [6], macOS Monterey 12.0.1
  • Camera - Fingers 1080 Hi-Res Webcam v1.0

Additional context
I have only tried to test with 1 external webcam as I don't own any other external webcam.

Software hangs with offbrand camera plugged in

Describe the bug
My workplace had an extra USB camera lying around that was given to me. I am Running Monterey 12.1 and the software fails to open and instead hangs/locks up and has to be force quit with the unknown camera plugged in. I understand this is a cheap random camera so please feel free to close out this bug report if that is the reason the software hangs.

To Reproduce
Steps to reproduce the behavior:
With camera plugged in:

  1. Download latest release
  2. Unzip and drag into applications folder
  3. Attempt to open application
  4. Security prompt asks if its okay to open application from internet, press yes
  5. Application shows up in dock and menu bar takes focus as if it is opening
  6. Menu bar and dock icon product spinning wheel of death, no window is opened or drawn
  7. right click to force quit.

Expected behavior
Application opens

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop and Camera (please complete the following information):

  • Version 1.4

Model: "SHENZHEN Fullhan webcam"
Hotplug: USB
Vendor: usb 0x1d6c "SHENZHEN Fullhan"
Device: usb 0x0103 "webcam"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.