Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Call to camera controls using variables rather than absolutes #27

Open
2 tasks done
ChrisSW58 opened this issue Aug 9, 2023 · 9 comments
Open
2 tasks done

Call to camera controls using variables rather than absolutes #27

ChrisSW58 opened this issue Aug 9, 2023 · 9 comments

Comments

@ChrisSW58
Copy link

Is this a feature relevant to companion itself, and not a module?

  • I believe this to be a feature for companion, not a module

Is there an existing issue for this?

  • I have searched the existing issues

Describe the feature

It would be helpful if Companion could make calls to PTZOptics using a variable and calculation for Camera number and Preset Number. Thus I could recall a preset with ( + 1) for Camera ( + 1). Believe this is a Companion issue for making the call rather tag a PTZOptic request, hence posted here. This would make coding of saving and loading preset configs a lot easier.

Usecases

Different camera presets for different types of events; different camera presets for different users with their favourite shots.

@Julusian Julusian transferred this issue from bitfocus/companion Aug 9, 2023
@ChrisSW58
Copy link
Author

As I am not sure if anyone is actively looking at this, please let me explain the scenario why this would be useful to me. We have a system which uses 4 presets per camera based on the StreamDeck XL buttons (6 columns of cameras, 4 camera presets). I allow each operator to have their own set of presets, as well as the default. For that to work, I save their presets in higher preset numbers per camera and then recall them into the standard 4 presets. If instead of having to recall them and put them in the standard 1-4 presets per camera, I could call the presets directly with a variable (based on the operator), things would be so much quicker and easier. I hope this makes sense. many thanks for all your hard work.

@ploveman
Copy link
Contributor

I've been working on being able to recall a preset via variable since it would simplify our church setup. You'd still target a particular camera, would that be useful to you? I don't think doing camera by variable would make a lot of sense from what I understand since the connection is per camera.

@ChrisSW58
Copy link
Author

ChrisSW58 commented Mar 26, 2024 via email

@ploveman
Copy link
Contributor

@ChrisSW58 I think targeting the camera with a variable is a larger lift than I can contemplate. From how I read it, the way the module is built the socket from companion to the camera comes up and is maintained/reconnected via that TCP socket. It uses that to represent status that the connection is good/healthy. I don't know if this module could ever support targeting a camera via a var b/c it would then have to maintain multiple connections. @jswalden I think has been working a a pretty major re-write (at least of how the code is organized), but believe fundamentally the nature of the connection will remain unchanged). I still plan to continue to have a var for presets, that at least helps some. One thing you might be able to do is to setup some buttons with conditional presses to work around the multiple camera aspect. e.g. if this expresssion is true, send preset varible to camera x.

@ChrisSW58
Copy link
Author

ChrisSW58 commented Mar 26, 2024 via email

@ploveman
Copy link
Contributor

ploveman commented Mar 26, 2024

@ChrisSW58 although I don't think this module would be able to target a camera with an IP. However, you reminded me that PTZOptics does have an http API. This is a VISCA module so I don't think it makes sense to move to http, but you might be able to use the generic http module to do what you want. It appears that the URI can use variables. Here's a reference in PTZOptics help on recalling a preset (it's OBS, but the URI concepts would be the same). https://help.ptzoptics.com/support/solutions/articles/13000075770-using-obs-scene-switching-to-automate-ptzoptics-preset-recall I don't know if usually things like this get their own module to simplify or other. I also don't know if there's a benefit of VISCA vs http outside of that constant connection

@ChrisSW58
Copy link
Author

ChrisSW58 commented Mar 26, 2024 via email

@jswalden
Copy link
Collaborator

@ploveman The "Recall Preset" action could accept custom input so you could specify a variable, that seems easy enough.

As long as it's one connection per camera, I agree that that extra level of option is not terribly useful. (Especially since cameras literally must occupy different spaces, so there's no real reason why preset 17 on camera 1 should have any coordinate meaning with preset 17 on camera 2.) But you could fake it by creating a page of "recall preset" buttons per camera, each one using the same variable to indicate which preset is desired...and then press "button x + $var" to target and press the desired button.

I'm kind of drowning in unlanded patches right now, so I think I'd like to clear some of that out first. I'll try to get the most critical parts of that landed this week.

@ploveman
Copy link
Contributor

@jswalden I have a version that would accept a variable, since I only have 2 cameras in my setup and just alternate between basically the same shot across the 2, being able to do via a variable would be helpful. That being said I'll old off until you have whatever landed and will rework with your refactor.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants