Code Monkey home page Code Monkey logo

atemvisionswitcher-libary's Introduction

Not a Bot

Hi I'm Hayden a Mechatronic Engineer / Computer Science Graduate apart of the team at CubePilot.

LinkedIn NPM NodeRed

What I Love

  • Designing Stuff
  • Building Stuff
  • Coding Stuff

Favorite Languages

  • TypeScript
  • JavaScript
  • C++
  • Python
  • C#
  • C

๐Ÿ› What I Use

Python C C# C++ CSS HTML5 JS JSON LUA NodeRed .NET CMAKE NodeJS NPM Git Docker Electron React ROS Vue Font Awesome SocketIO VSCode Visual Studio GitHub Actions Trello Debian Mac Ubuntu Winders Arduino RaspPi Espressif Apple

atemvisionswitcher-libary's People

Contributors

haydendonald avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

atemvisionswitcher-libary's Issues

Event Marshalling

Hi Hayden,
I believe that your COM object casting problem is because you are not getting events called in the main thread. See the following example from one of BMD's API samples:

m_switcherMonitor = new SwitcherMonitor();
// note: this invoke pattern ensures our callback is called in the main thread. We are making double
// use of lambda expressions here to achieve this.
// Essentially, the events will arrive at the callback class (implemented by our monitor classes)
// on a separate thread. We must marshal these to the main thread, and we're doing this by calling
// invoke on the Windows Forms object. The lambda expression is just a simplification.
m_switcherMonitor.SwitcherDisconnected += new SwitcherEventHandler((s, a) => this.Invoke((Action)(() => SwitcherDisconnected())));

I set up a small test app using your library and got the COM error you described, but after wiring the event handler as described above, the problem was resolved. E.g.

_atem.Inputs.AuxInputs[0].Monitor.InputSourceChanged += new EventHandler((s, a) => this.Invoke((Action)(() => Aux1SourceChanged())));

I note that you haven't worked on this project for a while - have you abandoned it? I am working on an app to control an ATEM TV Studio HD (and a few other things) for my church, and your library is the best starting point I have found for C# development of ATEM control.

Best regards,
Conrad Venn

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.