This website uses cookies. If you continue using this website you agree to use cookies. More information.


CompanyJobsw3/blogHow to find us


News from w3logistics

w3/blog – The w3logistics Blog

28. November 2020

PowerPoint and OBS automation

Abgelegt unter: Hacker's Corner — Thomas Omerzu @ 02:09

These days online presentations have become more important than ever. For preparation of advanced video presentations, OBS is a very powerful tool. You can, for example, use it to mix a camera view of the speaker into a PowerPoint presentation.

Scott Hanselman created a very interesting tool named „PowerPointToOBSSceneSwitcher“ which allows you to automatically change OBS scenes under control of the PowerPoint presentation. This makes it possible to adapt the video image according to the structure of the currently displayed PowerPoint slide, without having to change anything manually in OBS during the presentation.

I was really fascinated by his solution and tried to get it running on my machine using the sources he provides on Github.

His little program establishes a websocket connection to OBS (via the OBS websocket plugin), and connects to PowerPoint using Microsoft’s Primary Interop Assembly. When it detects a slide switch, it checks the comment field of the slide. If that contains a string like „OBS:Scene Name“, it sends a scene switch request to OBS. Done.

Unfortunately, I was unable to get that program working on a 64bit Windows 10 running a 32bit Office 2010, though I tried hard and spent a few hours. Finally I gave up and thought about an alternative implementation. And this is what I did:

I took this PPT autoevents addin. It is old, but still works, even on Windows 10. It allows me to trigger a VBA macro every time the slideshow moves to the next slide. Similarly to Scott’s solution, in that macro I look into the slide’s comment, and if it starts with „OBS:“ I send a scene change request via „Shell“ and the command line client „OBSCommand.exe“ which implements a connection to the OBS websocket server.

I have to admit that this isn’t as elaborate as Scott’s implementation, but basically it achieves the same effect and seems to be considerably less influenced by version incompatiblities.

Thank’s to Scott for the inspiration!

2 Kommentare »

  1. John sagt:

    This is just what I needed. However, how can I get it to work on a Mac?

    1. Thomas Omerzu sagt:

      Hi John, thanks for your feedback.
      Actually, I have little experience with the Mac.
      If the Powerpoint VBA addin works on your machine, it should be possible to get this running, provided there is a Mac compatible binary program available doing a similar or the same job like OBScommand.exe

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert