



NET.Unfrotunately, StreamLabs uses an RPC-based API

We have defined an $action variable in the code but we need to provide an action and this is where things got a little tricky. The event that we are going to subscribe to is called SlideShowNextSlide $subscriber = Register-ObjectEvent -InputObject $PowerPoint -EventName SlideShowNextSlide -Action $action With PowerShell, you can subscribes to events and take action when they fire. The first part gets the first line and it was thanks to Andreas on twitch who got this working, Thank you Andreas. Then parse the notes to get the scene name which is defined as OBS:SceneName $SceneName = ($notes -split "`r") -replace 'OBS:', '' The notes (by looking at code) can be accessed at $notes = $.Text Looking at Scotts code here I worked out that the slide number via PowerShell was $slideNumber = $.SlideIndex It is not truly required for the code, but I like to print it out so that I know which slide I was on for trouble shooting. You can create a PowerPoint Com Object with $Application = New-Object -ComObject PowerPoint.ApplicationĪnd make it visible with $Application.Visible = 'MsoTrue' The first thing that we need to do is to find out when the PowerPoint Slide has changed. (If you just want the code, you can find it here) Listen to PowerPoint Events with PowerShell Create a Com Object It is truly awesome but it is for Obs and I use StreamLabs and I wondered if it could be done with PowerShell. Then, by applying a Chroma filter to the display capture and placing the webcam capture appropriately, when the slide changed, the Obs scene changed and the webcam became embedded in the slide!!!!!!! That looks awesome, I thought, so I watched the YouTube video.Scott has written a C# application that would change the scene depending on some text in the PowerPoint slide notes. As with many things in my life it started with a tweet
